Modula-2 FAQ 
Author Message
 Modula-2 FAQ

Archive-name: computer-lang/Modula2-faq/part1
Version: 2.22
Last-modified: 2000 09 25
Posting-frequency: Monthly

  ??????????????? Modula-2 Frequently Asked Questions

What is new in version 2.22 (2000 09 25)?
A wonderful new rant about the merits of Modula-2 is included at A5A
in 1.10. A number of broken links have been removed. The MultiGraph
library is gone. ACE no longer lists a Modula-2 product. Cirrus
appears to be gone. Sections 4.11 and 4.14 have been deleted and
subsequent sections renumbered. Cyclone's server does not answer me
and I have deleted it. Armadillo and Ami-net appear to be gone and
have been deleted. The fifth mirror site for the shareware text has
vanished behind a password and has been deleted. There is a new
answer on random number genmerators at A4. Real Time Associates'
telephone numberts have changed. XDS has been replaced by Excelsior.
The p1 homepage has been changed.

What was new in version 2.21 (2000 05 21)?

The home of the FAQ and the shareware textbook have changed! The new
home is my personal services website at but the old
home at will continue as a mirror,
though not necessarily with the latest edition.
Some duplicated marterial has been removed and various links
corrected and updated. The web site address for p1 has been added to
the listing for that company. mtc has been located again. The MacMETH
listing has been updated and expanded. Stonybrook has a new e-mail
address. Yet another note in the Clarion section to reflect ongoing
skepticism of this product. The information on Coco has been revised,
and a note on Pat Terry's text added. A question on clearing the
screen is asked and answered at 5.12. The Mill Hill products have
been revised. The static analyzer Wasp is noted as a new answer at
4.11. A new attempt at a GNU compiler is noted. A company called
Magic Mouse tells us about their commercial products written in
Modula-2. A new index of Modula-2 compilers is noted in A8 of section

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 at Trinity Western University and included in this
document from time to time as it is revised.

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

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
The folder modula2 has a variety of other materials including the FAQ
without any HTML as This version of
the FAQ is readable as text by other word processors, but without any
formatting. It is also available from the site in plain
text form as
and as

Part 1
Part 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 fashion of professional
software engineers, and for real time embedded systems.

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 Pascal and Oberon.

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 distinguishing 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
(Wow! there is an answer key for chapters 1-15) as of 2000 05 24 is
at? http://www.*-*-*.com/
1. TWU Main Site http://www.*-*-*.com/
2. TWU CS Students (Internal only) http://www.*-*-*.com/
3. Brighton, UK? http://www.*-*-*.com/
4. Vienna, Austria? http://www.*-*-*.com/
and as postscript in

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

1.6 What are the differences between Modula-2 and Pascal?
A. Modula-2 has separately compiled library modules, and makes much
less use of blocks (begin...) than 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.

1.7 What is ISO Standard Modula-2?
A. A committee of ISO JTC1/SC22/WG13 with delegates from several
countries has met since 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

1.7.1 What is the status of ISO Standard Modula-2?
A. The international standard (IS 10514) has been voted on and is now
official. The Object oriented extensions and Generic extensions have
also been 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 an older version, try looking in

1.7.3 What format is the standard document in?
A. Latex.

1.7.4 Who is the convenor of the standards group (WG13)?
A.Martin Schoenhacker of Vienna is the 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://www.*-*-*.com/

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.

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 document'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 or

1.7.9 Can I get ISO library code to port?
A. Yes, this is available from Rick Sutcliffe, the FAQ maintainer. He
has done an ISO I/O library for the Mac, and StonyBrook has ported
this to their system.  Anyone else is welcome to do a port 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 port.

1.7.10 Can I get copies of the grammer?
A1. Yes, in http://www.*-*-*.com/
A2. For classical Modula-2, see also Coco (section 4.9)
A3. There are nice syntax diagrams for classical Modula-2 in
  and there are syntax diagrams for ISO Modula-2 stored at

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 is WG13 doing?
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

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 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 is the language of choice in much of
Europe. It has features that make it ...

read more »

Sat, 13 Sep 2003 08:47:23 GMT  
 [ 3 post ] 

 Relevant Pages 

1. Modula-2 FAQ

2. Modula-2 FAQ/part2

3. Modula-2 FAQ

4. Modula-2 FAQ

5. Modula-2 FAQ/part1

6. Modula-2 FAQ/part1

7. Modula-2 FAQ/part1

8. Modula-2 FAQ/part1

9. Modula-2 FAQ

10. Modula-2 FAQ/part2


Powered by phpBB® Forum Software