Google
 

Trailing-Edge - PDP-10 Archives - BB-P557A-BM_1983 - documentation/pascal.doc
There are 7 other files named pascal.doc in the archive. Click here to see a list.


PASCAL.DOC -- PASCAL-20 V1
September 1983






























COPYRIGHT (C) 1983 BY
DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.


THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND  COPIED
ONLY  IN  ACCORDANCE  WITH  THE  TERMS  OF  SUCH  LICENSE AND WITH THE
INCLUSION OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR  ANY  OTHER
COPIES  THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
OTHER PERSON.  NO TITLE TO AND OWNERSHIP OF  THE  SOFTWARE  IS  HEREBY
TRANSFERRED.

THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE  WITHOUT  NOTICE
AND  SHOULD  NOT  BE  CONSTRUED  AS  A COMMITMENT BY DIGITAL EQUIPMENT
CORPORATION.

DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR  RELIABILITY  OF  ITS
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.
PASCAL.DOC - PASCAL-20 V1, September 1983                       Page 2


1.0  SUMMARY

PASCAL-20  is  a  one-pass  non-optimizing  compiler  for  the  PASCAL
programming language on TOPS-20.

PASCAL-20 conforms to the third draft of the ISO PASCAL standard  with
the  exceptions noted in section 3.1 below, and is a compatible subset
of VAX PASCAL version 2.0.

This tape contains copies of the version 1 compiler,  PASOTS,  PASLIB,
and PASDDT.



1.1  Monitors

PASCAL-20 Version 1 will run on TOPS-20 version 5.1  (2040,  2060)  or
later, and TOPS-20 version 4.1 (2020).



1.2  Required System Software

LINK version 5.1 or later is required to load .REL files generated  by
PASCAL-20.   RMS  version  1.2(71)  or  later  is  required to run the
compiler and PASCAL programs.



1.3  Bibliography

PASCAL-20 is based on the draft PASCAL standard:

Specification for the Computer Programming Language  Pascal  -  ISO/DP
7185.



2.0  EXTERNAL CHANGES

None, as this is a first release.



3.0  KNOWN BUGS AND DEFICIENCIES

3.1  Deviations From ISO Standard

This list enumerates violations of  the  ISO  standard  (third  draft)
which  will  not  be  caught  by  PASCAL-20.  There is no plan to have
version 1 detect these violations.

Note that this list does not include extensions to the  ISO  standard.
See  Appendix  D  of  the TOPS-20 PASCAL Language Manual for a list of
extensions.
PASCAL.DOC - PASCAL-20 V1, September 1983                       Page 3


     1.  The restrictions on the relative placement of labels and GOTO
         statements are not enforced.

     2.  Accesses to "totally-undefined" variables are not detected.

     3.  The requirement that every path through a function  assign  a
         value to the function-identifier is not enforced.

     4.  Updating the position of a file variable during  a  reference
         to the file's buffer variable is not detected.

     5.  External files may not be elements of  arrays  or  fields  of
         records.

     6.  Modifications to the index variable of a  FOR  loop  are  not
         detected.  Note that the number of iterations is not affected
         by any such modification.

     7.  File types are not permitted in the variant part of a record.




3.2  Other Bugs And Deficiencies


     1.  Global variable identifiers in  an  [OVERLAID]  PROGRAM,  and
         [GLOBAL]  or  [FORTRAN] procedure and function names, must be
         unique in their first six  characters  in  order  to  prevent
         multiply-defined  symbol errors from LINK.  The compiler does
         not check for this, however.

     2.  Under certain conditions (particularly with strings), passing
         a packed element of a packed structure as a parameter is done
         incorrectly.

     3.  Named string constants are not accessible by PASDDT.

     4.  Doing a non-local GOTO out of a recursively-called procedure,
         where the destination of the GOTO is not in the main program,
         may produce unexpected results.

     5.  For the predeclared file OUTPUT, executing an OPEN  statement
         with the CARRIAGE parameter has no effect.

     6.  If a field of a record is an  unpacked  array,  accessing  an
         element  of  the  array  using  a  variable  index and a WITH
         statement may not work.
PASCAL.DOC - PASCAL-20 V1, September 1983                       Page 4


4.0  INSTALLATION INSTRUCTIONS

Refer to  the  TOPS-20  PASCAL  Installation  Guide  for  installation
instructions.



5.0  INTERNAL CHANGES

None, as this is a first release.



[End of PASCAL.DOC]