home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Usenet 1994 October
/
usenetsourcesnewsgroupsinfomagicoctober1994disk1.iso
/
answers
/
Modula-2-faq
< prev
next >
Wrap
Text File
|
1993-10-31
|
18KB
|
517 lines
Newsgroups: comp.lang.modula2,comp.answers,news.answers
Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!medusa.hookup.net!news.kei.com!sol.ctr.columbia.edu!howland.reston.ans.net!pipex!uunet!psgrain!news
From: randy@psg.com (Randy Bush)
Subject: comp.lang.modula2: Answers to Common Questions - v1.7 93.10.29
Message-ID: <1993Oct30.014757.3259@psg.com>
Followup-To: comp.lang.modula2
Summary: This posting contains a list of Frequently Asked Questions (and
their answers) about the programming language Modula-2 and the Usenet
newsgroiup comp.lang.modula2. It might well be read by anyone before
posting a question to comp.lang.modula2.
Sender: news@psg.com (Randy Bush)
Organization: PSGnet, Portland Oregon, US
Date: Sat, 30 Oct 1993 01:47:57 GMT
Approved: news-answers-request@mit.edu
Expires: Fri, 31 Dec 1993 00:00:00 GMT
Lines: 498
Xref: senator-bedfellow.mit.edu comp.lang.modula2:8241 comp.answers:2448 news.answers:14036
Archive-name: Modula-2-faq
Last-modified: 1993/10/29
Version: 1.7
Originally-By: mgallo@iptech.com (Mike Gallo)
Maintained-By: randy@psg.com (Randy Bush)
Copyright 1992-3, M Gallo and R Bush. All rights reserved. May be
distributed for free only in toto, including this notice.
Additions corrections solicited. Commercials and commercial products are
intentionally undermentioned. Implementors are preferred to distributors.
CONTENT
1) What is comp.lang.modula2?
2) What is Modula-2?
3) What about Modula-2 standardization?
4) What are Oberon and Oberon-2?
5) What about Modula-3, Object Oberon, and Seneca?
6) Where can I find implementations of Modula-2?
7) Where can I find implementations of Oberon[-2]?
8) Where can I find interesting libraries and sources?
9) Some popular FTP sites
1) What is comp.lang.modula2?
comp.lang.modula2 is a forum for the discussion of the Modula-2 programming
language and related topics. Prominent "related topics" have been the Oberon
languages. The newsgroup is gated to the FidoNet echo conference MODULA-2.
Folk with only Internet E-Mail access can participate in the discussion by
joining the INFO-M2 mailing list. To do this, send an E-Mail message to
listserv@ucf1vm.cc.ucf.edu, with the following in the message body:
subscribe info-M2 yourFirstname yourLastName
This server also has a very large archive of previous messages.
2) What is Modula-2?
Modula-2 is a programming language designed by Niklaus Wirth of Pascal fame.
Among other things, it features strong typing,modules, a rich variety of data
types, a powerful set of control statements, procedure types, opaque types,
and coroutines.
3) What about Modula-2 standardization?
There is no standard for the Modula-2 language or library beyond Niklaus
Wirth's classic text, "Programming in Modula-2". There is an ISO committee,
ISO/JTC1/SC22/WG13, which has circulated a number of drafts which have varied
between editions. The current edition is the "2nd Committee Draft Standard:
CD 10514 December 1992." Its distribution has been restricted.
To find out what's happening with standardization, contact the chair of WG13,
Mark Woodman, m.woodman@open.ac.uk.
4) What are Oberon and Oberon-2?
The Oberon language was a part of Wirth's Oberon operating system. Oberon is
the successor to Modula-2 by its original designer,Niklaus Wirth of ETH,
Zurich. In brief, it removes variant records, opaque types, enumerations,
subranges, the CARDINAL type, local modules, automatic qualifications, general
indexing, the FOR and WITH statements, and even the notion of a program or
main module. Oberon adds type extension (inheritance) and, in its purest
form, automatic garbage collection.
Oberon-2 is Oberon with a small set of extensions by H. Moessenboeck, also of
ETH, Zurich. These extensions are type-bound procedures (methods), read-only
export, open array variables, a WITH statement with variants, and the
reintroduction of the FOR loop.
More detailed information can be found in "Software: Practice and Experience"
(July 1988, September 1989) and by anonymous ftp from the host
neptune.inf.ethz.ch:/Oberon/Docu.
"Project Oberon, The Design of an Operating System and Compiler"
N. Wirth and J. Gutknecht
ACM Press and Addison-Weseley Publishing Company, 1992
ISBN 0-201-54428-8
neptune.inf.ethz.ch (129.132.101.33)
in ~ftp/Oberon/Examples/ProjectOberon.tar.Z
File ~ftp/Oberon/Examples/readme.PO gives some further information.
"Programming in Oberon", Reiser & Wirth, ACM Press, 320 pgs, 1992.
"The Programming Language Oberon-2", Moessenboeck & Wirth, _Structured
Programming_, Vol. 12, No. 4, pp. 179-195, 1991.
5) What about Modula-3, Object Oberon, and Seneca?
Modula-3 is an interesting language designed at DEC Software Research Center,
also as a successor to Modula-2. Unless there is a specific question about
how it relates to Modula-2 or Oberon, posts about Modula-3 would be better
directed to Comp.lang.modula3.
Object Oberon is an Oberon variant designed by H. Moessenboeck and J. Templ
of ETH, Zurich. It eventually evolved into Oberon-2.
Seneca is an Oberon variant focusing on numerical applications and is by R.
Griesemer of ETH, Zurich. It is still under development.
6) Where can I find (preferably free) implementations of Modula-2?
While there have been several implementations of Modula-2, they are not as
numerous nor as easy to find as, for example, C. Some implementations are
listed below. These are merely some commonly used implementations, and should
not be taken as a recommendation of any of the following products. Only
implementors are listed, not distribuors. Free or shareware implementations
receive preferential treatment, as they encourage the new and/or experimental
Modulan.
For MS-DOS:
Fitted Software Tools
P.O. Box 867403
Plano, TX 75086
USA
ftp at ftp.psg.com:pub/modula-2/pc
FidoNet .REQuest from 1:105/6
Gardens Point Modula-2
ftp at ftp.psg.com:pub/modula-2/pc
Clarion Topspeed Modula-2
Clarion Software
150 East Sample Road
Pompano Beach, FL 33064
USA
Extasy Modula-2 (crippled version)
ftp.uu.net:/systems/ibmpc/msdos/simtel20/pgmutl/xc1305.zip
ftp.uni-padeborn.de:/msdos/pgmutl/xc1305.zip
Multiscope Modula-2
Multiscope, Inc.
1235 Pear Ave.
Mountain View, CA 94043
USA
(415) 968-4892
Stony Brook Software
187 East Wilbur, Suite 9
Thousand Oaks, CA 91360
USA
Tel: +1 (805) 496 5837 (tech Support)
Fax; +1 (805) 496 7429
Sun-4:
The only free Sun4-implementation I've heard of is that of Metrowerks
(ftp 132.208.12.5, login metro, passwd release4.0) but I haven't tested
it yet.
-- borchert@mathematik.uni-ulm.de
While Sun (more properly SunPro) has discontinued direct support of M2,
responsibility for it has been transferred to
Edinburgh Portable Compilers Ltd
17 Alva Street
Edinburgh EH2 4PH
Scotland
Tel (44) 31 225-6262
FAX (44) 31 225-6644
Sun-3:
From: borchert@MATHEMATIK.UNI-ULM.DE (Andreas Borchert)
Ulm's Modula-2 system for SUN 3 is now available via anonymous ftp from
titania.mathematik.uni-ulm.de (134.60.66.21). You'll find it in the
subdirectory pub/soft/modula/ulm/sun3.
Macintosh:
MacMETH Modula-2 for the Mac
neptune.inf.ethz.ch:~/macmeth/*
ftp.psg.com:~/pub/.modula-2/macMETH/*
p1 GmbH
Hogenbergstr. 20
W-8000 Munich 21
Germany
Tel : +49(89)5461310
Fax : +49(89)5802597
E-Mail: GER.XSE0109@AppleLink.Apple.COM (Elmar Henne)
(features Object oriented extensions which are compatible with Apple's
Object Pascal and MacApp)
Metrowerks, Inc.
The Trimex Bldg, Rte 11
Mooers, NY 12958
USA
Tel : (514) 458-2018
Email: achim@mips1.info.uqam.ca (Marcel Achim)
(Wirth's one-pass ported to MacOS, module size limited to 32k)
VMS:
Florian Matthes
Fachbereich Informatik
Universitaet Hamburg Tel. + (49) 40 4123 4144
Schlueterstrasse 70 Fax. + (49) 40 4123 6122
D-2000 Hamburg 13 e-mail: matthes@dbis1.informatik.uni-hamburg.de
Germany
TERRA Datentechnik
Bahnhofstrasse 33
CH-8703 Erlenbach
Switzerland
(M2VMS (formerly Logitech's?) + distributor for others)
Phone: +41 1 910 35 55
Fax: +41 1 910 19 92
BBS: +41 1 910 35 31 (300 - 9600 baud, 8, N, 1)
Misc:
A Modula-2 compiler for VAX BSD & ULTRIX and for MIPS/ULTRIX is available
via FTP from gatekeeper.dec.com:pub/DEC/Modula-2.
2i Industrial Informatics GmbH
Haierweg 20e
D-7800 Freiburg
Germany
(MOCKA Modula-2 for DEC VAX(VMS&ULTRIX) & maybe others)
A+L AG
D"aderiz 61
CH-2540 Grenchen
(From: hartmut@oberon.nbg.sub.org (Hartmut Goebel)
(distributes both a M2 and an Oberon-2 compiler for AmigaOS)
AMSoft, contact
claudio@amsoft.net.ch
(M2Amiga)
Armadillo Computing
5225 Marymount Drive
Austin, Texas 78723 USA
512/926-0360
Internet: jolinger@bix.com
(M2 for Amiga)
(From: jolinger@bix.com)
Associated Computer Experts b.v.
Van Eeghenstraat 100
Amsterdam 1071GL
Netherlands
(Modula-2 for 680x0)
Edinburgh Portable Compilers, Ltd.
17 Alva Street
Edinburgh
EH2 4PH
UK
Telephone: +44 31 225 6262
Fax: +44 31 225 6644
(SCO Unix V, Motorola 88000 generic, Sun 3 and Sun 4, Unisys 6000 series,
Sequent Symmetry, Interactive Unix V, ICL DRS 400E and 6000, Solbourne)
Introl Corporation
9220 W. Howard Avenue 647 W. Virginia St.
Milwaukee, WI 53288 Milwaukee, WI 53204
U.S.A>
(Cross compiler for targets H630x, M680x, M680x0, NS32000)
Jefferson Software
12416 N. 28th Dr. #18-236
Phoenix, AZ 85029-2434
U.S.A.
(Jefferson Modula-2 for Atari ST (and others?))
Mandeno Granville Electronics Ltd.
128 Grange Rd.
Auckland 3
New Zealand.
ph +64 9 6300558
fax =64 9 6301720
(compiler available for the Intel 8051 family of Micro's)
(From: dekker@decus.org.nz)
Masthaven Development Limited
East Suite, 511 Coldham Lane
Cambridge CB1 3LN
United Kingdom
(Modula-2 for 68000 UNIX)
Megamax
1200 East Collins, Suite 214
Richardson, TX 75081
U.S.A.
(Modula-2 for Atari ST)
ModulaWare GmbH
GraphicSystems & Modula-2 Software
Wilhelstrasse 17A
D-8520 Erlangen
Phone: 49-9131/208395
Fax: 49-9131/28205
e-mail: g_dotzel@ame.nbg.sub.org
(distributor for many platforms)
Rowley Associates
32 Rowley
Cam, Dursley
Glos. GL11 5NT
United Kingdom
(Modula-2 for "most platforms")
Vail Silicon Tools Inc.
Box 165
Pompano Beach, FL 33069
U.S.A.
(cross-compiler (PC host) for 8051 controller)
WATCOM
415 Phillip Street
Waterloo, Ontario N2L 3X2
Canada
Tel.: (519) 886-3700
FAX: (519) 747-4971
BBS: (519) 884-2103
Telex: 06-955458
email: tech@watcom.on.ca
(Modula-2 VM/SP CMS)
[ m2c, a Modula-2 to C translator kit ]
From: sgccseh@citecuc.citec.oz.au (Stephen Hocking)
It is in /pub/cocktail/mtc.tar.Z on the machine ftp.karlsruhe.gmd.de,
where the bloke who wrote it all (Josef Grosch) is based. You will also
need reuse.tar.Z and front.tar.Z from the same directory. For those
interested in compilers, that directory is a goldmine. The stuttgart-uni
address was an alternative whose connections were a bit more reliable at
the time.
Ross L Richardson <rlr@postoffice.utas.edu.au> comments:
I believe mtc was originally written by M[atthias] Martin, as some kind
of Diploma project.
Modula-2*
Modula-2* Compiler Available
Modula-2* constructs allow for clear and portable parallel software
without intolerable loss of efficiency. The following list contains
the main advances of Modula-2*:
o The programming model of Modula-2* is a strict superset of data
parallelism. It allows both synchronous and asynchronous parallel
programs.
o Modula-2* is problem-oriented in the sense that the programmer can
choose the degree of parallelism and mix the control mode (SIMD- or
MIMD-like) as needed by the intended algorithm.
o Parallelism may be nested to arbitrary depth.
o Procedures may be called from sequential or parallel contexts and can
themselves generate parallel activity without any restrictions.
o Most Modula-2* programs can be translated into efficient code for both
SIMD and MIMD architectures.
Recently, we put a SPARC/SunOS 4.1.1 binary version of our Modula-2*
compiler "msc" on ftp. This version is now available via anonymous ftp
from iraun1.ira.uka.de:pub/programming/modula2star.
7) Where can I find implementations of Oberon(-2)?
To repeat, this should not be taken as a recommendation of any of the
following products, but. . .
ETH, Zurich has released free implementations of the Oberon system. These
include Oberon compilers. They are available by anonymous ftp at
neptune.inf.ethz.ch:/Oberon/* or gatekeeper.dec.com:/pub/plan/oberon/*.
Oberon-M is an independently produced Oberon compiler for MS-DOS systems that
can also be found at neptune and gatekeeper.
There is also a Modula-2/Oberon-2 to C translator available through
Real Time Associates Ltd.
Canning House
59 Canning Road
Croydon, Surrey CRO 6QF
UK
From: thutt@THAMA1.APGEA.ARMY.MIL
The source to the Oberon compilers is not publicly available however, you
can license the front end and/or the back end for the Oberon-2 compiler
from ETH for 1000 Swiss Francs. The license agreement does prohibits you
from redistributing the source, but you are free to do whatever you want
with any derivative product, provided you give ETH credit for the original
compiler source.
You are also required to make ETH aware of your product, and provide the
product to them should they ask. It does not state if it needs to be
source or executable code, however.
It is a pretty loose agreement, but not so loose to hinder ETH. 1000 SFr
is about 757 dollars, as of last month.
AmigaOberon:
Fridtjof Siebert
fridi@amokst.stgt.sub.org
8) Where can I find interesting libraries and sources?
The FTP sites listed in 9.
Amiga Sources:
From: htgoebel@cip.informatik.uni-erlangen.de (hartmut Goebel)
At ftp.uni-paderborn.de in /amiga/amok you can get all the disks from the
AMOK series via anonymous ftp. Please download only 18.00 - 8.00 h
(MET), cause the transmitt rate is low. Perhaps someone call move the
disks to overseas, too.
On this series there are several modules both for Oberon and modula2 and
executable programms (most with source). While the Programms almost run
only on the Amiga, the modules may be interesting for other systems, too.
There are modules for many diverent usages, not only generic.
MAS Modula-2 Algebra System
From: kredel@unipas.fmi.uni-passau.de (Heinz Kredel)
MAS is an experimental computer algebra system combining imperative
programming facilities with algebraic specification capabilities for
design and study of algebraic algorithms. MAS views mathematics in the
sense of universal algebra and model theory and is in some parts
influenced by category theory.
MAS (0.3x and 06.x) is available on electronic networks (internet) via
anonymous ftp from: alice.fmi.uni-passau.de = 123.231.10.1
Repertoire and other software component libraries
PMI
P.O. Box 8402 3279 N. Nicolet Drive
Green Bay, WI 54308-8402 Green Bay, WI 54311
U.S.A.
PMOS is a collection of modules to allow you to write multitasking
programs. It runs on IBM-PC compatible computers. It has been
compiled with TopSpeed Modula-2. Porting to other machines and
compilers is possible, but should probably be tackled only by
experienced programmers.
PMOS - a multitasking library (ftp.psg.com)
The package is potentially of interest to
- people who want to write real-time applications for the IBM-PC;
- Modula-2 programmers who want a collection of utility modules;
- students of operating systems who want to look at real code.
Full source is included.
The PMOS package includes
- a kernel which contains a CreateTask procedure, plus various
routines to support the multitasking.
- intertask communication via semaphores, mailboxes, queues;
or you can add your own mechanisms.
- device drivers for keyboard, printer, A/D, floppy disk, hard
disk, hardware timer. (No mouse as yet.)
- a file system compatible with the MS-DOS FAT system; or you
can choose to use standard library file operations.
- screen windows in both text and graphics modes. (The text-mode
support is very complete; graphics modes are less fully
supported so far.)
- screen utilities such as menus, on-screen editing of defined
data fields, multiple virtual screens.
- miscellaneous modules: random numbers, some data structures,
sorting, etc.
9) Some Popular FTP sites:
neptune.inf.ethz.ch
gatekeeper.dec.com
ftp.psg.com
titania.mathematik.uni-ulm.de
FidoNet's Modula-2/Oberon Archive
1:105/6 has a lot of source, compilers, examples, ... +1 (503) 297-9145
Also has an archive of old c.l.m2 and MODULA-2.
-30-
--
randy@psg.com ...!uunet!m2xenix!randy