Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Modula 2 > Modula-2 FAQ
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 1 of 1 Topic 347 of 376
Post > Topic >>

Modula-2 FAQ

by Rick Sutcliffe <rsutc@[EMAIL PROTECTED] > Oct 7, 2007 at 04:21 AM

Archive-name: computer-lang/Modula2-faq/part1
Version: 2.32
Last-modified: 2007 01 25
Posting-frequency: Monthly


                        Modula-2 Frequently Asked Questions


What is new in version 2.32 (2007 01 25)?
It's been a year and a half and there are few items to re****t. 
Invalid links pointed out have been removed. Someday I'm going to 
trim all the non-operative links, so I'd appreciate it if you would 
let me know what's not working -- that is, if anyone is reading this.
The forum alternative to the Usenet news group at ArjayBB.com 
(section 2.2.1) has been removed. It wasn't being used, the 
conenction was hard to maintain, and bulletin boards get too much 
spam.
The summary section 3.3 has been revised and expanded to all major 
platforms. Note made that GPM does not run on spolaris 10 but the ULM 
compiler does. Some information has been removed at the request of 
manufacturers, who wish the only point of contact to be the web. One 
old spelling error corrected (thanks Keith) and the GPM http links 
corrected. The p1 section has been revised to reflect new products. 
Under 1.11 (what is Modula-2 used for) answers have been expanded and 
a new section (A10) added. The MegaMax Atari product has been removed 
as the links appear no longer functional. The MOCKA links have been 
alrtered and pruned. The GNU link was revised, and numerous small 
changes were made throughout.
What was new in version 22.31 (2005 09 09)?
WThis one has another revision of A8 under 1.11, a new use under A9 
of the same section, and a revised comment on GM-M2 in A4 of that 
section. I have also revised answers relating to the Mac to clarify 
that older compilers sup****t only Classic, not OS X. The BURKS 
project at Brighton has become defunct, so all references to this 
resource have been removed.



SUMMARY:
1. Answers to many questions about Modula-2 as a programming notation 
may be found in the shareware textbook. As always, users should pay 
the shareware fee. See section 1.4.

2. Answers to most other frequently asked questions about Modula-2 
will be collected by Rick Sutcliffe at Trinity Western University and 
included in this do***ent from time to time as it is revised.

3. Submissions should be mailed to -- rsutc-AT-arjay.bc.ca (modify 
address in the obvious way)
Anyone making a submission guarantees that they have the right to do 
so (copyright holder, or information in the public domain.) and that 
the information is not from any source whose copyright lies with 
another.

4. I will update this summary file and post to the newsgroups 
comp.lang.modula2 and to comp.answers and news.answers

5. The latest version will always be available in a Nisus (Mac) form in
http://www.arjay.bc.ca/Modula-2/m2faq.html.
It is also available from the site rtfm.mit.edu in plain text form as 
ftp://rtfm.mit.edu/pub/usenet-by-group/comp.answers/computer-lang/Modula2-faq/part1

and as 
ftp://rtfm.mit.edu/pub/usenet-by-group/comp.answers/computer-lang/Modula2-faq/part2


CONTENTS:
Part 1
1. WHAT IS MODULA-2?
2. WHERE IS MODULA-2 DISCUSSED?
3. WHERE CAN I GET MODULA-2 COMPILERS?
Part 2
4. WHERE CAN I GET SOURCE CODE, OTHER INFO?
5. SPECIFIC QUESTIONS ON CODE AND ALGORITHMS
6. WHAT ARE SOME REFERENCE MATERIALS ON MODULA-2?
7. REVIEWS
Appendix: AUTHOR INFORMATION AND DISCLAIMERS


1. WHAT IS MODULA-2?
A. Modula-2 is a programming notation that corrects some of the 
deficiencies of Pascal. It is suitable for learning programming, for 
large projects written and maintained in the fa****on of professional 
software engineers, and for real time embedded systems. Modula-2 is 
small, expressive, easy to learn, and to read.


1.1 Who developed Modula-2?
A. Modula-2 was developed by Niklaus Wirth at ETH in Zurich, 
Switzerland in the late 70's. Wirth also developed Algol-W, Pascal, 
Modula, and Oberon and the Lilith computer, a natively Modula-2 
machine (see section 1.15).


1.2 Where is this language described?
A. In Programming in Modula-2 3rd edition published by 
Springer-Verlag in 1985. For the purposes of distingui****ng this from 
later variants, this description will be referred to herein as 
classical Modula-2.


1.3 How do you pronounce Herr Wirth's name?
A. It is incorrect to call him by his value (worth.) Instead his name is
veart.


1.4 Can I get a simple introduction to ISO Modula-2?
Yes, the latest revised and corrected edition of the shareware text 
as of 2004 is at  http://www.modula-2.com/
Mirror (for the text, not the FAQ): TWU
http://www.csc.twu.ca/rsbook/index.html


1.5 How does Modula-2 fit into the language zoo?
A. It is a descendent of Pascal and Modula, and one predecessor of 
Modula-2+, Modula-2*, Modula-3, Oberon, Oberon-2, and various object 
oriented versions of these. The latter languages are not replacements 
for  Modula-2, merely later notations in the same family, having 
strengths and weaknesses of their own. Modula-2 is sometimes 
classified with Ada and C as the trio of modern languages in view of 
their expressive power. Modula-2 is smaller and more readable than 
either.


1.6 What are the differences between Modula-2 and Standard Pascal?
A. Modula-2 has separately compiled library modules, and makes much 
less use of blocks (begin...) than Standard Pascal. Identifiers are 
case sensitive; there is no goto label; and I/O is in libraries 
rather than built in. The IF statement is more versatile; and there 
are facilities for concurrent programming via coroutines. Extended 
Pascals may have some of these features.


1.7 What is ISO Standard Modula-2?
A. A committee of ISO JTC1/SC22/WG13 with delegates from several 
countries met after 1987 to work on a standard description of 
Modula-2 and a set of standard library modules.

A2. The official home of the ISO Modula-2 working group WG13 is at 
http://sc22wg13.twi.tudelft.nl/

1.7.1 What is the status of ISO Standard Modula-2?
A. The international standard (IS 10514) was voted on and is 
official. The Object oriented extensions and Generic extensions were 
also voted on and are official.

1.7.2 Where can I get the Modula-2 standard?
A1. Contact your national standards body or ISO (the publisher.)

A2. For a slightly older version, try looking in 
ftp://ftp.mathematik.uni-ulm.de/pub/soft/modula/standard/draft4/

1.7.3 What format is the standard do***ent in?
A. Latex.

1.7.4 Who was the convenor of the standards group (WG13)?
A. Martin Schoenhacker of Vienna was the last convenor.

1.7.5 When was the last WG13 meeting?
A1. It was March 17-18 1997 in Linz, Austria. For more details, 
follow http://sc22wg13.twi.tudelft.nl/docs/meetings.html

1.7.6 When is the next WG13 meeting?
A1. No meeting is currently on the schedule. One may be held if 
necessary to do routine maintenance on the standards, but at this 
time WG13 is in maintenance mode--not operating actively.

1.7.7 Will I be able to read the standard?
A1. The concrete syntax is written in a variation of EBNF (Extended 
Backus-Naur Formalism) and should be accessible to most.

A2. Much of the base do***ent's details are written in VDM-SL (Vienna 
Development Method - Specification Language) which is a formalism for 
giving a precise definition of a programming language in a 
denotational style. It is worth learning VDM-SL if you plan to write 
a compiler or use formal methods to do any design work.

1.7.8 Can I at least get electronic copies of the definition modules?
A. Yes, in ftp://FTP.twu.ca/pub/modula2/ISOLibraries/ISODEFMods/ or 
ftp://ftp.mathematik.uni-ulm.de/pub/soft/modula/standard/libdefs/

1.7.9 Can I get ISO library code to ****t?
A. Yes, a partial ISO library is available from Rick Sutcliffe, the 
FAQ maintainer. He has done an ISO I/O library for the Mac, and 
StonyBrook ****ted this to their system. Anyone else is welcome to do 
a ****t provided: (1) TWU gets a license to the software produced (2) 
All code changes are marked and submitted to Rick Sutcliffe for the 
benefit of anyone else who wants to do a ****t.

1.7.10 Can I get copies of the grammar?
A1. Yes, in http:/www.arjay.bc.ca/Modula-2/Text /Appendices/Ap3.html
A2. For classical Modula-2, see also Coco (section 4.9)
A3. There are nice syntax diagrams for classical Modula-2 in 
http://cuiwww.unige.ch/db-research/Enseignement/analyseinfo/Modula2/BNFindex.html
  and there are syntax diagrams for ISO Modula-2 stored at
http://www.arjay.bc.ca/Modula-2/Text/Appendices/Ap2.html


1.8 What difference is there between classical and ISO Modula-2?
A. ISO Modula-2 has resolved most of the ambiguities in classical 
Modula-2. It adds the data type COMPLEX and LONGCOMPLEX, exceptions, 
module termination (FINALLY clause) and a complete standard I/O 
library. There are numerous minor differences and clarifications.

1.8.1 What else has WG13 done?
A. WG13 has completed two additional standards (separate from the 
main one) for (a) object oriented Modula-2 and (b) generic 
programming facilities. Older versions of the generics proposal are 
stored in the directory ftp://FTP.twu.ca/pub/modula2/WG13/

1.9 What is (was) Turbo Modula-2
A. Borland prepared CP/M versions of Modula-2 and sold them for a 
time in Europe (also in North America via a distributer.) One of 
these versions later migrated to become TopSpeed Modula-2.

1.10 What is (was) Top Speed Modula-2
See also 1.9. Eventually, Top Speed merged with Clarion, a maker of 
database products, who used Modula-2 as their DB language, and for a 
time sold Top Speed separately. Later still, this became 
SoftVelocity, but the Modula-2 compiler has vanished. A fuller 
history is available at http://www.attryde.com/clarion/.

1.11 Where and for what is Modula-2 used?
A1. Modula-2 is widely used for teaching the fundamentals of sound 
programming techniques, data structures, and software engineering in 
many parts of the world. It has been the language of choice in much 
of Europe, though Java and C++ have made great inroads. Modula-2 has 
features that make it superior to other languages for large projects 
and for programming and real time controllers.

A2.Here is a reply by Andrew Trevorrow (akt@[EMAIL PROTECTED]
) who is the 
author of several Macintosh programs written in p1 Modula-2: OzTex 
(standard Tex implementation on the Mac) X-Words (a meta-Scrabble 
word game), Anagrams (a fast and friendly anagram generator), LifeLab 
(a software laboratory for 2D cellular automata, Googolator (an 
arbitrary-precision calculator, X-Words Deluxe (a meta-Scrabble-like 
game), and CrossCards (a combination of Scrabble and Poker.) His home 
page is: http://www.trevorrow.com/

  "Back in 92-93 I worked for the Australian National Uni's Research 
School of Earth Sciences writing Noble, a large suite of programs to 
control mass spectrometers and analyze all the data. Everything was 
written in Modula-2 (the only reason I took the job!).
In fact, one of the reasons I decided to try making a living from 
shareware was so that I could keep using Modula-2."

A3. General Motors and its subsidiary Delco have done their 
programming in General Motors Modula-2. Up to a point, all GM car 
computers were programmed in this language, though the keeper of the 
FAQ is unable to confirm that this is still the case.

A4. Here is a message sent in by a maker of test equipment:
Our BoardWizard range of test equipment has compilers,pseudo-code 
interpreters and a complete test operating system written in M2. The 
code was written for one tester in 1987 and has been maintained from 
that date to the present. New tester models have added and new 
interface and UI code has been written, indeed sections have been 
completely re-written but much of the core test logic is untouched 
since about 1990 when I ****fted to management. Much of the code is 
unknown to those who maintain it - yet when i look at it after 
several years I can still explain it to others even though comments 
are sparse. I believe that that is the hallmark of a great 
programming language. (Emphasis added.)
Dave Appleton,
Technical Manager
Goldtron Technologies                       Tel : (065)-870-9886
(Ex- Proteq Technologies)                   Fax: (065)-777-2118
26 Ayer Rajah Crescent #07-01               www:  http://www.proteq.com.sg
Singa****e  139944                          

A5. Here is an answer sent in by a developer:
Magic Mouse Productions
12615 Sir Francis Drake Blvd.
Inverness, CA 94937 USA
1-415-669-7010
http://www.magicmouse.com

The following products were made using Modula-2. The programs are all 
about 100,000 lines long, and 99% Modula-2, with about 1% assembler 
code for performance in critical areas.

     Flying Colors 2, Anime Designer DragonBall, Action Designer 
Ultraman, Tamagotchi
         Sketch, Curious George Paint and Print Set -- all paint and 
creativity programs.
     Gorgeous Mail -- a new years card making program
     JuniorNet web activities -- various creativity activities for 
JuniorNet web subscription service
     Discus -- CD label making program
     Web Workshop Deluxe -- Web site design product

A5A. Here is a later rant sent in by the same person.
We make commercial software using Modula-2, and have been doing so 
since the first appearance of the Logitech "Multiscope" compiler 
about 17 years ago, and about a million lines later we are still 
using Modula-2 to great effect.

I am proud to announce that Web Workshop Pro, a kids website editor, 
is about to go "golden" and be released to the public. The program, 
written in 98% Modula-2 (with a small assembler section), is 
reliable, fast, and very efficiently coded. An almost identical 
product in feature set and user interface style (but not as good) 
called Site Central was written in C, and is 4 times larger in 
executable. There is no better way to compare languages than to see 
two similar products implemented in the same environment (macintosh + 
windows), and see the result.

We use the excellent StonyBrook compiler (a fully integrated 
development environment) for Windows, and the wonderful p1 compiler 
under the Macintosh MPW development environment (ed. note: now also 
available in XCode ).

We have a ****ting tool that converts between the two compilers, 
although recent improvements to the StonyBrook compiler make it 
almost possible to have identical source code.

We have implemented a quickdraw emulation layer for windows which 
allows programs to run identically between macintosh and windows 
platforms. This very layer eluded a very large company years ago, and 
is crucial to having a single code base that operates on the mac and 
windows in an identical manner.

100,000 lines of code, about 10 months to do. one programmer. Less 
than 100 total bugs. I have an 800kb demo if anybody wants to have 
one e-mailed.

Until I get a chance to build a compiler for my BEADS language, which 
will reduce programming effort by at least 10:1, Modula-2 is the 
simplest, cleanest, easiest to read, 
tends-to-build-a-reliable-product language on the planet.

Java stinks! Modula-2 rules! (editor's note: Ouch!)


A6. Frank Schoonjans mention MedCalc (statistical software for 
Windows, http://www.medcalc.be,
developed using Stony Brook Modula-2, 
his main work.

A7. The following survey results (though now out of date) were once 
posted by Mat. Maher ssu94114@[EMAIL PROTECTED]
              LOCATION   WORK                   COMPILER
Statoil                   Norway                            StonyBrook
Inst. for Space Nerology  Austria    datafile conversion    TopSpeed
                                      dataviewers
Boeing                    Wa****ngton Aerospace Eng.         p1(MAC)
CDSS                      UK         embedded control sys. TopSpeed
                                      for submarines
(self-employed)           UK         embedded Pcs and       TopSpeed
                                      pc-like chips
(manufacturer)            Finland,   8051 embedded control  Mod51
                           S.Africa, 
                           Australia,
                           NZ, USA   
Pacific Software          California Point-Of-Sale systems   -
Tele-Soft                 S. Africa  Scientific CAD progs   TopSpeed
                                      Databases
(confidential)            UK         Instrumentation &      TopSpeed &
                                      telemetry              Custom tools
USA Dept. of Energy       Idaho      Reusable components    StonyBrook
Idaho Nat. eng. labs                 systems programming
Locheed Idaho technologies company
Applied software resuse Products
GiaStar Ltd               UK         Satcoms/Comms. Elect. TopSpeed
                                      design & m/facture.
University of Reading     UK         Teaching,embedded ctrl  TopSpeed
University of Loughborough UK                               StonyBrook
and Hertsford****re                                          TopSpeed
(sole trader)             UK         Electronic Design      TopSpeed
Atomic Energy of Canada   Canada     Shutdown system for    prototype in
Ltd. (AECL)                          nuclear reactor        TopSpeed
                                                          final version in
                                                          Hicross (HiWare)
Wallac Oy                 Finland    beta/gamma counters    Logitech,
                                      control & data acquis. Multiscope
Inspectron AG             Switzerland remote surveillance   Logitech,
                                                             Multiscope
Bank of New York          USA        funds transfer      ModulAware.com
                                                         (HP OpenVMS
Alpha)
                                      customer enquiries     Logitech
(VAX/VMS)
(freelance)                          Motorola IC production Logitech
                                      line tools. (Asia)
Dexdyne Ltd               UK         Single-board Pcs &     TopSpeed
                                      applications.
(freelance)               Australia  Shareware              p1 (mac)
Multi-Master AS           Norway     Embedded systems,      Logitech,
                                      remote control & acquis. Multiscope
(confidential)                       room acoustic sim &    TopSpeed
                                      (audio) virtual reality

A8. (revised 2005 09 06) The keeper of the FAQ notes that he still 
occasionally gets contracts to evaluate Modula-2 code in takeover 
situations and the like. Usually this code is for controllers, other 
real time devices, telecommunications applications, and the like 
(sorry, specifics are under non-disclosure). However, there can be 
little doubt that apart from real time applications, Modula-2 use has 
declined steadily since the early 1990s. The author still finds it 
invaluable for teaching new programmers good habits, but acknowledges 
that without a new suite of uses, little will remain of it in a few 
more years. Perhaps the GNU project and the Objective Modula-2 
project for Cocoa (and other environments already using Objective C) 
will breathe new life into the language. Modula-2 is not the only 
good notation to suffer in the mad rush to conform to C++ peer 
pressure. Overweight big brother Ada has also vanished. Lots of 
real-life programmers use Delphi (Pascal++) but there are virtually 
no textbooks available. Likewise for Smalltalk. Much work takes place 
in scripting languages (Perl, php, JavaScript/ECMAScript, 
AppleScript, Python, etc.) or in Java however these are all to dome 
degree unsuiotable for commercial work on large projects.

A9. The Proceedings of the Joint Modular Languages Conference, JMLC 
2003 (LNCS 2789), contains an article by Koltashev wherein he 
discusses the benefits of using Modula-2 for the onboard-software 
used in Russian telecommunications satellites.

A10. The p1 page notes a number of large commercial products written 
using its compiler. These include Andrew Trevorrow's programs 
described above in A2, the magicmouse software mentioned in A5, 
Curious George Paint and Print Studio published by HMI Interactive 
(http://www.hminet.com),
the Anime designer Dragon Ball Z, and the 
CAD program Pythagoras (http://www.pythagoras.net)

1.12 Why do some universities use Modula-2 for teaching instead of C or
C++?
A1. Modula-2 is a type-safe language and its compilers will therefore 
catch many errors that otherwise show up only at run time. While 
professional programmers need to learn C++ because it is commonly 
used, it is im****tant to begin a discipline of deliberate, engineered 
programming at the outset. Modula-2 is easier to write in, easier to 
read (it reads left to right) and easier to debug. It lends itself 
well to software engineering of very large projects. Modula-2 is a 
higher level language than C++, particularly with respect to 
pointers, all of which have types that depend on what is pointed to, 
and that can be treated as addresses only by flagging this fact in 
the code. A good computing science department (such as the one at 
Trinity Western University, where I teach,) tries to inculcate a way 
of thinking (as a software engineer, not a hacker) and beyond that, a 
breadth of ideas. At TWU C, C++, Java, Prolog, php, and other 
languages, are taught in appropriate courses, and on a variety of 
platforms, but not to beginners. Frankly, if I had to switch, my 
first choice would be Delphi, Ada or Oberon, and after that Java (if 
it ever became reliably cross platform.) If I had to try teaching 
beginners C++, I would retire. Objective Modula-2 seems interesting, 
though.

A2. Popularity no more implies soundness or superiority when 
considering tools such as Modula-2 and C++ than it does when 
considering hardware (Pentium vs PowerPC), operating systems (Windows 
vs Mac) and applications (Word vs Nisus). Marketing means selling the 
sizzle of appearance not the steak of content; those who know this 
and can apply it consistently win the marketing wars with inferior or 
even poor products. The market situation is no reason to give up on 
the basics of sound tools and methodology. If anything the cirisis 
implied by the inability of large companies to maintain poorly 
designed and bloated software and OSs implies that the industry needs 
to return to basics before it is going to advance much farther.


1.13 Why is Modula-2 a good language for large commercial projects?
A1. It sup****ts modular design which reduces errors and cuts down on 
maintenance time. This also allows platform dependencies to be 
isolated, increasing ****tability. I/O is found in several 
type-specific modules, so linkers only patch in the I/O code that's 
needed, making programs smaller and faster. This is in sharp contrast 
to, say, the versatile but resource hungry printf in C.

A2. see: Griffith, Laurie Modula-2 is three times less error prone 
than C, Proceedings of the Second International Modula-2 Conference, 
Loughborough University of Technology, UK, September 1991, pp 332-338.

1.14 Where do I get information on YAFL?
A. This is yet another OO and Generic derivative of Modula-2. The 
homepage for the language is at http://www.phidani.be/yafl/index.html

1.15 Where do I get information on the Lilith Computer?
A. This was the natively Modula-2 machine Wirth once built. A 
collection of do***entation and other material is located at 
http://cfbsoftware.com/modula2/

1.16 Is there a GNU  Modula-2?
There is a GNU Modula-2 project which is alive and well and its web 
site is: http://www.nongnu.org/gm2/.
The current release status of 
GNU Modula-2 is 0.49 and it implements the PIM variant of Modula-2. 
It provides a set of PIM libraries and also installs the ULM PIM
libraries. It is sufficiently stable to build on Sparc Solaris in 64 
bits and also GNU/Linux on Opteron/Athlon in 64 bits. It also builds 
on BSD and GNU/Linux on the x86 in 32 bits. Its aim is to be both ISO 
and PIM Modula-2 compliant. (Also, see the next question).

1.17 Are there any M2 compilers that sup****t Cocoa and/or GNUstep, 
say an Objective Modula-2?
A: At present there is no M2 compiler which sup****ts GNUstep. The 
latest p1 compiler does run under XCode.  There is a project under 
way (as of  2005 07) to define language extensions to sup****t the 
Objective-C object model and interface with the Objective-C runtime, 
which is necessary in order to develop applications for Cocoa and 
GNUstep. The idea is to add extensions in sup****t of OO to a base 
Modula-2 which are equivalent to the extensions by which Objective-C 
was created as a superset of C, but do so in a way that is in line 
with Modula-2 style syntax. It is intended to sup****t those 
extensions in GNU Modula-2.

More information on the project's work in progress can be found at 
http://en.wikipedia.org/wiki/Objective_Modula-2
or by sending email 
to objm2-AT-yahoo.co.uk.


2. WHERE IS MODULA-2 DISCUSSED?

2.1 COMP.LANG.MODULA-2
This is an internet newsgroup for questions, answers, and discussions 
on Modula-2. You may read it under this name on any machine on which 
you have a news account.


2.1.1 How do I post a message to comp.lang.modula2?
A. Post to that group using a news program on any computer connected 
to the network.

2.1.2 How do I retrieve old messages from comp.lang.modula2?
A. Your local news server probably keeps old messages only for a few 
weeks. You should be able to mark the entire group as unread and 
browse whatever is available there. The last couple of years' are on 
the forum at arjaybb.com.


2.2 Amiga lists

2.3.1 A general list for Amiga Modula2/Oberon programming. This is 
available in a similar manner at amiga-m2@[EMAIL PROTECTED]
 It is not 
oriented toward any specific compiler.To subscribe, send mail to 
majordomo@[EMAIL PROTECTED]
 containing the message "subscribe 
yourid@[EMAIL PROTECTED]
 amiga-m2".

2.2.2 A mailing-list for the Amiga Turbo Modula-2 Compiler written by 
Amritpal S. Mann. To subscribe, send a message to 
maillist@[EMAIL PROTECTED]
 with SignOn turbo-list as the Subject. 
Once subscribed, you will receive a copy of all messages sent to the 
address turbo-list@[EMAIL PROTECTED]
 Gardens Point Modula-2
To join the GPM mailing list, send mail to majordomo@[EMAIL PROTECTED]
 
with the subject line blank and the body
  of the message containing:
   subscribe gpm
   info gpm
   end
Mail sent to gpm@[EMAIL PROTECTED]
 gets automatically forwarded to all
  subscribers on the list. The development team are of course subscribers.


2.4 Win32
To join, send mail to listserver@[EMAIL PROTECTED]
 a blank subject line and the body Subscribe m2-win95-nt-l (your name)
Maintainer: Peter Stadler


2.5 ModulaTor
This is a regular publication by Guenter Dotzel of ModulAware.
  Back issues are available at: http://www.modulaware.com/mdltr_.htm


3. WHERE CAN I GET MODULA-2 COMPILERS?

3.1 Where can I get commercial Modula-2 compilers?

In this section, the listings are by name of the manufacturer (marked 
M) or distributor (marked D.)


A+L AG
activity  D
products  Compilers, applications, and books.
platforms various
office    Daderiz 61
           CH-2540 Grenchen
           Switzerland
contact   Albert Meier
e-mail    aplusl@[EMAIL PROTECTED]
     +41/65/52 03 11
fax       +41/65/52 03 79


Excelsior, LLC (replaces XDS)
activity  M
products  Native XDS-x86 - Modula-2/Oberon-2 2.32 compiler for x86 
(Windows, OS/2, Linux)
           XDS-C - Modula-2/Oberon-2 "via C" cross compiler (multiple
platforms)
           H2D (freeware) translates C header files to M2 Def Mods
           ****table run-time library in C source code form
           POSIX and Win32 API definition modules platforms PC/OS/2 V3 
V4 (Warp), PC/Win95, PC/WNT PC/Linux,
           Sun/Sparc Solaris, Sun/Sparc SunOS, HP PA-Risc/HP-UX,
           others on request. (Mac no longer sup****ted.)

e-mail  info@[EMAIL PROTECTED]
           also sold by ModulAware, and Real Time Associtaes
           check the shareware/demo section (below) for product
availability
Excelsior WWW home page:
http://www.excelsior-usa.com/
fully functional evaluation kits are available from the site
also see ModulaWare, and Real Time Associates for product availability


Gardens Point
activity  MD
products  Gardens Point Modula-2
platforms Various Unix, including Linux but not Solaris 10, and 
FreeBSD, DJGPP, EMX (OS/2)
             and MS-DOS (no Mac)
office    Queensland University of Technology
           Gardens Point Branch
           2 George Street
           POB 2434 Brisbane
           Queensland Australia 4001
contact   John Gough
e-mail    GOUGH@[EMAIL PROTECTED]
   Jeffrey Ledermann
e-mail    lederman@[EMAIL PROTECTED]
 http://plas.fit.qut.edu.au/gpm/
voice     +61 7-864-2132
fax       +61 7-864-1801
see mail list and net sections


Mandeno Granville Electronics Ltd
activity   MD
products  Mod51 :  80x51 Cross Compiler, ISO extensions
                Optimised for Embedded Control, Includes some
                IEC1131 Extensions.
           DbgX51 : Remote Debugger for Mod51 Compiler
           IcePGM : ICE and Programmers, for FLASH cores,
                using Mod51 platforms DOS Hosted
office    128 Grange Rd
           Auckland 3
           New Zealand
contact
e-mail    Mod51@[EMAIL PROTECTED]
     +64 9 6300 558
fax       +64 9 6301 720
web       http://www.designtools.co.nz/

The (Mill Hill) J.Neuhoff  -  mhccorp.com
activity  MD
product     Canterbury Modula-2 for Java (PIM, non-ISO
             object oriented extensions similar to Oberon-2 )
platform    Any platform which sup****ts Java, such as
             Windows XP/2003, Linux, Mac OS X, Unix
contact     J.Neuhoff
e-mail      neuhoff at mhccorp.com
WWW         http://www.mhccorp.com/modula-2.html
demo        http://www.mhccorp.com/modula-2.zip
office      MHCCorp.com
             P.O.Box 4310
             Colchester-Brightlingsea
             CO7 0WR
             United Kingdom


ModulAware
activity  MD
prod/plat Compaq OpenVMS Alpha: Modula-2 and Oberon-2
             64 bit native-code compiler, MaX V5.02 and A2O V3.0, and 
64 bit Oberon System V4
           Compaq OpenVMS VAX: Modula-2
             32 bit native-code compiler, MVR V4.16
web       www.modulaware.com


p1 GmbH
activity  MD
products  MPW, Code Warrier, and XCode hosted ISO compliant compilers
NOTE:     Current(sic) versions of MPW have odds and sods for ISO Modula-2
           written by R. Sutcliffe, for your editing enjoyment. Also note
that
           Code warrior is defunct as far as OS X is concerned.
platforms Macintosh OS9 (MPW), OS X (command line and Xcode; will 
generate universal binaries)
office    Hogenbergstrasse. 20
           80686 Munich
           Germany
contact   Elmar Henne
e-mail    eh@[EMAIL PROTECTED]
     +49 89-546 13 10
fax       +49 89-580 25 97
web       http://www.awiedemann.de/compiler/index.html


Real Time Associates Ltd.
activity  D
products  Compilers, books, and training courses
platforms numerous
office    Canning House 59
           Canning Road Croyden Surrey
           CR0 6QF UK
Tel: +44 20 8656 7333
Fax: +44 20 8656 7334


Stony Brook Software
activity MD
products  Stonybrook Modula-2 ISO compatible. (Environment, editor,
   resource editor, librarian, context sensitive help, optimizing
compiler,
   linker, debugger, many extra libraries, including COM, RTL sources)
   Also offers Pascal+
platforms 16bit DOS, 32bit DOS extended, 16bit Windows, 32bit Windows
      32-bit Linux on IA-32 processors, 32-bit Solaris/SunOS on SPARC 
processors.
office   StonyBrook is now defunct, bought out by a company that will 
not continue the compiler. The last release was number 31.



TERRA Datentechnik
activity  MD
products  Logitech/Multiscope Modula-2 and sup****t
           Distributor for Stony Brook Modula-2 (see listing)
           Logitech compatible libraries for Stony Brook Modula-2
           Real and protected mode ROM tools for 80x86 based embeeded
           Modula-2 systems
           TERRA M2VMS/Alpha and M2VMS/VAX
platforms 16bit DOS, 32bit DOS extended, 16bit Windows, 32bit Windows,
           DEC OpenVMS/Alpha and OpenVMS/VAX
office    Bahnhofstrasse 33b
           CH-8703 Erlenbach
           Switzerland
voice     +41 01 910 35 55
fax       +41 01 910 19 92
bbs       +41 01 910 35 31
e-mail    M2Master@[EMAIL PROTECTED]
 http://www.TerraTerra.ch/





3.2 Where can I get a free/shareware compiler on the net?


Fitted Software Tools (FST) Modula-2 for DOS
   ftp://ftp.psg.com/pub/modula-2/fst/fst-40s.lzh
contact: Roger Carvalho
e-mail:  res09tkd@[EMAIL PROTECTED]
   This compiler was developed by Roger Carvalho but is no longer
   actively sup****ted. It essentially conforms to PIM version 3, but also
   sup****ts some simple and interesting OOP extensions.
   P. O. Box 867403 Plano, TX 75023 USA
Warning: A reader cautions that FST may not work at all if you have 
an AMI BIOS.

Amiga Aglet Modula-2

Version:        2.5-AOS4-Pre-Release (21.1.2005)
Description:    compiler for AOS4 running under M68K emulation
Author:         tmb@[EMAIL PROTECTED]
 (Tom Breeden)
Status:         "as-is", unwarrantied, freeware compiler package
Platforms:      AmigaOne AOS4 Pre-release, Amiga 68K or WinUAE AOS 3.9
Web:            http://home.ntelos.net/~tbreeden/
Features:       some ISO compatibility, including ISO IO Libr (courtesy R.
Sutcliffe et.al.)
                 interface to most Amiga system librs, including Reaction
                 includes 50+ programming sup****t modules, with source
                 "first cut" IDE using CygnusEd or GoldEd
Future:         further development, if any, will be targeted to replacing
with a PPC compiler

GCC Version
Title:          m2f
Version:        4.2
Entered-date:   5NOV01
Description:    a complete Modula-2 compiler based on 2nd Edition PIM
Keywords:       Modula-2 compiler linux
Author:         gaius@[EMAIL PROTECTED]
 (Gaius Mulley)
Maintained-by:  gaius@[EMAIL PROTECTED]
 http://floppsie.comp.glam.ac.uk
Platforms:      gcc
Copying-policy: GPL
available in source and binary in rpm or tar.gz format from
Features:
   +  Full debugging via emacs/gdb
    +  -students flag performs extra semantic checking
       for dangerous novice programming styles.
      
NOTE: Mide3de2 is a windows IDE for the FST modula-2 compiler. It is 
available from http://sourceforge.net/projects/mide3de2/

Gardens Point Modula-2 for DOS, Linux and FreeBSD
   ftp://ftp.fit.qut.edu.au//pub/gpm_modula2/
   ftp://ftp.psg.com/pub/modula-2/gpm
(The EMX version runs under OS/2 in protected mode and can be used to
generate OS/2 PM applications. It relies on the GNU tools from the EMX
package ****ted by Eberhard Mattes 
mattes@[EMAIL PROTECTED]
 which can be found at: 
ftp.uni-stuttgart.de/pub/systems/os2/ and various
other mirror sites.

MacLogimo for Macintosh Classic (not X)
   ftp://ftp.psg.com/pub/modula-2/mac/maclogimo/

MacMETH Modula-2 for Macintosh Classic (not X)
  http://www.sysecol.ethz.ch/SimSoftware/SimSoftware.html#MacMETH
Note that MacMETH is also released as part of RAMSES
http://www.sysecol.ethz.ch/RAMSES/MacMETH.html.
RAMSES provides a full featured programming environment for Mac OS 9,
containing all of MacMETH (compilers, linkers, symbolic break debugger,
macro editor or language sup****t for Alpha editor) plus hundreds more of
libary modules useful in the context of programing and for scientific
applications. RAMSES contains also the 'Dialog Machine', a platform
independent GUI (see
http://www.ito.umnw.ethz.ch/SysEcol/SimSoftware/RAMSES/DialogMachine.html).
'Dialog Machine' implementations exist for MacOS, GEM (no longer
available), Windows (3.1 .. up to current versions), and Unix. All
software we have developed, is offered via the internet as freeware.
Contact: Andreas Fischlin andreas.fischlin@[EMAIL PROTECTED]
 - Modula Compiler Karlsruhe (Non ISO)
   Universitaet Karlsruhe
   Institut fuer Programm- und Datenstrukturen
   Vincenz-Priessnitz-Strasse 3
   D-76128 Karlsruhe (FRG)
   Phone: *-49-721-608 6088        FAX: *-49-721-691462
   contact: Thilo Gaul
   email: [modula|gaul]@[EMAIL PROTECTED]
   SUN 4        | SUN OS              | SPARC               |
   SUN 4        | Solaris2.x/SunOS 5.0| SPARC               |
   DEC Station  | ULTRIX              | R3000, R2000 (MIPS) |
   Silicon      | IRIX                | R3000, R2000 (MIPS) |
     Graphics   |                     |                     |
   Sony NEWS    | News                | MC 68020 with 68881 |
   SUN 3        | SUN OS              | MC 68020 with 68881 |
   HP 9000/300  | HPUX                | MC 68020 with 68881 |
   HP 9000/700  | HPUX                | C back end          |
   RS6000       | AIX                 | C back end          |
   PC           | Linux               | 80386               | +
   PC           | 386BSD              | 80386               | +
   C-back end   | UNIX                | different           |
   translates   |                     |                     |
   M-2 To C     |                     |                     |

The versions marked with a + are free; no order form must be sent, no
license fee to be paid. If you use them, please send an email to
modula@[EMAIL PROTECTED]
 more information have a look to
   http://www.info.uni-karlsruhe.de/~modula/index.php


Ulm's Modula-2 System m2c (non-ISO)
    web page:  http://www.mathematik.uni-ulm.de/modula/
    all distributions come along with all sources which may be
    freely distributed under the terms of the GNU General Public License
    SPARCv8 / Solaris to version 10
       ftp://ftp.mathematik.uni-ulm.de/pub/soft/modula/ulm/sun4/
    MC68020 / SunOS 4.x
       ftp://ftp.mathematik.uni-ulm.de/pub/soft/modula/ulm/sun3/
contact: Andreas Borchert borchert@[EMAIL PROTECTED]
 LLC
  ( Windows 95/NT, OS-2, Linux native code and "via C" compilers. ISO
compatible.)
Makes demo and pre-release versions with some restrictions available.
The download site for all versions is:
http://www.excelsior-usa.com

M2Amiga (Open source Modula-2 Compiler for the Commodore Amiga)
Sources and Binaries can be obtained from http://m2amiga.claudio.ch/



3.3 How about a Summary of ISO Products for Major platforms?
MS-DOS: GPM, ModulAware, Stony Brook
Windows95/NT: Stony Brook, XDS
OS/2: Mill Hill, XDS, GPM
MacOS9: p1 (version 7.3
MacOS X: p1 (version 8)
BSD: GPM
Linux: XDS, GPM
OpenVMS: ModulAware

3.4 Is there such a thing as a decompiler for Modula-2?
Nope. But feel free to write one. Be sure to include a facility to 
produce the planning
  do***ents from which the Modula-2 code could be constructed and one 
to find out what
  the users wanted before the planning do***ents were written.



-- 
Rick Sutcliffe Professor Math/Cmpt Trinity Western University. Try 
<http://www.arjay.bc.ca>
for Christian SF, books on Modula-2 and 
Ethics in Technology. Forum at <http://arjaybb.com>
 




 1 Posts in Topic:
Modula-2 FAQ
Rick Sutcliffe <rsutc@  2007-10-07 04:21:47 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Fri Jul 25 23:41:25 CDT 2008.