<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
Date   : Tue, 28 Sep 1982 04:22:00-EDT
From   : Jerry E Pournelle <POURNE@Mit-Mc>
Subject: extensions

       [This was originally sent to info-Pascal, but comsat
returned with note that there is no such mailing list.  It is, I
think, imporant enough to bother all of you although it is of
value only to Pascal people...]


       We are preparing an article as a submission in design of
a new standard Pascal Prime.  Pascal Prime is intended to
preserve the "spirit" of Pascal and retain its remarkably good
features as a teaching language, while making Pascal more
usable as a practical programming language.

       The idea is to specify a minimum set of extensions to
the language.  The extended language will be called PASCAL
PRIME.

       There will be a conference  at West Coast Computer
Faire, with several of the major compiler writers in attendence.
Features that ought to be in PASCAL PRIME will be discussed.
The whole mess will get fairly wide publicatin.


       Here are some candidate features.  Arguments for or against
their inclusion, plus suggestions for other features which
should be included, will be appreciated.

       FILES IN RECORDS to be allowed.  This is not
controversial, or hasn't been.  Indeed, it's in the standard,
although many implementations don't have it.
 MT+ allows.  UCSD does not .  We
think clearly desirable.

       OTHERWISE statement after CASE.  (OTHERWISE rather than
ELSE since latter may confuse readers...?)

       Ignore underbars as clarity character; do not see.
       
       Guarantee the order of evaluation of AND and OR and
parenthesized statements.

       Is a BREAK statement needed?   It  would be expensive.
It might also be against the spirit of the language; but it
certainly would make writing programs more convenient.


       Needs STRINGS and LONG STRINGS to have the same
relationship as integers and long integers.  Most micro
implementations and indeed most implemenations have strings
anyway.


       A Dynamic Size Array  variable type?
This can also get expensive and needs thought.

UCASE & Lcase
These are needed as standard library features because they are
almost always needed, and are often badly written...

STATIC variables: which are LOCAL to a procedure or functin, but
which do not go away when you exit the function.  Best example
would be the seed for a random number functions.

Standards for separate compilation and INCLUDE.

A way to reseve blocks of memory and get at particular memory
addresses.  This is of course machine dependent, and needs
thought since it compromises portability, but ye gods, without
it you are in real trouble..especially with memory map video...

Ways to get at the programmer stack?  Thought needed; we are not
trying to make Pascal become C.

       Elementary math in the CONSTANT declarations.  At least
allow four-function arithmetic plus chr(x) and ord(x) in the
CONST declarations  [Bell = chr(7) as a legal statement]

Read and write enumeration types.


       And as few other ideas.  Discussion welcome.  What does
PASCAL needd to make it  the right langauge?
<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>