salas-m@plains.NoDak.edu (Juan P. Salas) (09/08/90)
I remember some time ago, someone posted a brief description of Modula-3, I believe there was also one for Oberon. If somebody by any chance has this would you please email this to me. It is very important i get this should i call them reviews?. Juan Pablo -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= - Internet: salas-m@plains.nodak.edu "............ ......." - - nu131139@vm1.nodak.edu "........." - - UUCP: ..!uunet!plains!salas-m "............." - - BITNET: salas-m@plains -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
moss@cs.umass.edu (Eliot Moss) (09/10/90)
You can obtain information on Modula-3 (the Report as well as a compiler that produces reasonably portable C code for Modula-3 programs; this compiler has been made to run on a number of popular machines) from gatekeeper.dec.com via anonymous FTP. Look under the pub tree and you'll find it. Note the license agreement; it is liberable, but you should check its terms against your situation. Modula-3 is similar to Modula-2, but not precisely an extension. It adds object types in a single inheritance hierarchy, true garbage collection (and an allocate/free mechanism, too), exceptions and handlers, and threads (lightweight concurrent processes in the same address space). It eliminates variant records (object subtypes are nicer) and nested modules, and has a different opaque type mechanism, integrated with object types. We are working on a quality optimizing compiler for it, based on gcc, to be offered for public consumption through the Free Software Foundation under the terms of the GNU Public License. It should be ready sometime in 1991. Oberon adds extensible records to Modula-2, but I understand Oberon to be more of an effort to make a "minimal" language, whereas Modula-3 did not try to strip down to minimal features and caters a bit more to convenience and systems programming. (This is necessarily an opinion; I prefer M3, but there are those who prefer Oberon.) Perhaps someone else will post a resposne indicating where to learn more about Oberon. -- J. Eliot B. Moss, Assistant Professor Department of Computer and Information Science Lederle Graduate Research Center University of Massachusetts Amherst, MA 01003 (413) 545-4206; Moss@cs.umass.edu
John.Matthews@comp.vuw.ac.nz (John Matthews) (09/10/90)
In article <MOSS.90Sep9134825@ibis.cs.umass.edu>, moss@cs.umass.edu (Eliot Moss) writes: |> You can obtain information on Modula-3 (the Report as well as a compiler that |> produces reasonably portable C code for Modula-3 programs; this compiler has |> been made to run on a number of popular machines) from gatekeeper.dec.com via |> anonymous FTP. Look under the pub tree and you'll find it. Note the license |> agreement; it is liberable, but you should check its terms against your |> situation. |> Could you post some more details on the name and/or exact location of these files. I looked but could not find them.
vixie@wrl.dec.com (Paul Vixie) (09/10/90)
gatekeeper.dec.com:~ftp/pub/DEC/Modula-3 is SRC Modula 3 (VAX,MIPS,Sun) gatekeeper.dec.com:~ftp/pub/DEC/Modula-2 is WRL Modula 2 (VAX,MIPS) -- Paul Vixie DEC Western Research Lab <vixie@wrl.dec.com> Palo Alto, California ...!decwrl!vixie
preston@titan.rice.edu (Preston Briggs) (09/10/90)
In article <MOSS.90Sep9134825@ibis.cs.umass.edu> moss@cs.umass.edu writes: >Perhaps someone else will post a resposne >indicating where to learn more about Oberon. A quick summary: Oberon has simplified Modula-2 by eliminating variant records, enumerated types, nested modules, unqualified import, WITH statements, CARDINAL, multitasking, OPAQUE, and maybe some other stuff. Oberon extends Modula-2 by adding garbage collection, type extension, multi-dimensional array parameters, and a new kind of WITH statement. The key new feature is type extension. Here's a simple example. Imagine we want to declare a generally useful binary tree: TYPE Tree = POINTER TO TreeNode; TreeNode = RECORD left, right: Tree END; So far so good, but there's no data in our tree. We can declare several extensions, one for each type of data: TYPE IntTreeNode = RECORD (TreeNode) key: INTEGER END; IntTree = POINTER TO IntTreeNode; RealTreeNode = RECORD (TreeNode) key: REAL END; RealTree = POINTER TO RealTreeNode; and so forth. The idea is that we'll be able to use the same code to manipulate trees of int's and tree of real's (or mixed trees). Note that we may re-extend extensions as necessary, and that extensions provide the functionality of variant records in a cleaner fashion. There are some details I haven't shown, but perhaps this will give you the flavor. There are several papers on various aspects of the Oberon language. There are also related papers on the Oberon OS and the Ceres hardware. Some language papers include Type Extensions Wirth ACM Transactions on Programming Languages and Systems April 1988 From Modula to Oberon Wirth Software -- Practice and Experience, July 1988 The Programming Language Oberon Wirth Software -- Practice and Experience, July 1988 There's also a revised report available from ETH, dated August 1989. Finally, you should check out the Journal of Structured Programming. It often has articles on Oberon (and lots of other good stuff, including various extensions to Modula-2). -- Preston Briggs looking for the great leap forward preston@titan.rice.edu
piet@cs.ruu.nl (Piet van Oostrum) (09/11/90)
In article <1990Sep10.144850.10537@wrl.dec.com>, vixie@wrl (Paul Vixie) writes: | |gatekeeper.dec.com:~ftp/pub/DEC/Modula-3 is SRC Modula 3 (VAX,MIPS,Sun) ^^^^^^^^^^^^ and HP9000/300 -- Piet* van Oostrum, Dept of Computer Science, Utrecht University, Padualaan 14, P.O. Box 80.089, 3508 TB Utrecht, The Netherlands. Telephone: +31 30 531806 Uucp: uunet!mcsun!ruuinf!piet Telefax: +31 30 513791 Internet: piet@cs.ruu.nl (*`Pete')