[comp.archives] [comp.lang.modula2] Re: Modula-3

chase@Ozona.orc.olivetti.com (David Chase) (02/07/90)

Archive-name: modula-3-info/29-Jan-90
Original-posting-by: chase@Ozona.orc.olivetti.com (David Chase)
Original-subject: Re: Modula-3 (was: Modula-2 compilers/environments for UNIX)
Archive-site: orc.olivetti.com [129.189.192.20]
Archive-directory: pub/modula-3-info
Reposted-by: emv@math.lsa.umich.edu (Edward Vielmetti)

In article <1990Jan29.164508.15205@cs.rochester.edu> ken@cs.rochester.edu writes:
>Just curious. Is the DEC SRC Modula-3 that was advertised as available
>for ftp from gatekeeper.dec.com a superset of Modula-2, i.e. can one
>use that to compile M2 programs?

Afraid not, but the differences aren't extreme.  I think you'd
probably find the lack of variant records and the change in CARDINAL
most vexing (CARDINAL is now a subtype of INTEGER -- if you want to
get at all 32 bits, you have to use the Word interface).  Another
change is that

  WITH expr DO ... END

has been replaced with 

  WITH id = expr {, id2 = expr2} DO ... END

The precedence of the expression operators has been changed, also, but
it is unlikely that change will break many programs (that was one
argument in its favor).  There's restrictions on what things can be
OPAQUE types -- no more assuming that an integer and a pointer are the
same size.

Of course, there's lots of gunk that's been added, but that's not
tremendously important if you're just porting old code.

If you have a postscript printer capable of handling large files
(apparently an Apple Laserwriter is not normally up to the task) you
can print your very own copy of the report (71 pages).  The compressed
PostScript is 110Kb, and can be obtained via anonymous ftp to
orc.olivetti.com [129.189.192.20] from the directory
~ftp/pub/modula-3-info.  You can also lay your hands on a copy of the
(Olivetti) license in the same directory, or write to

  Modula-3
  Olivetti Research California, STL
  2882 Sand Hill Road
  Menlo Park, CA 94025

for more information.

David