Thread View: comp.lang.modula2
2 messages
2 total messages
Started by Rick Sutcliffe, Modula-2 FAQ mai...
Sun, 21 Apr 1996 15:48
Modula-2 FAQ/part1
Author: Rick Sutcliffe, Modula-2 FAQ mai...
Date: Sun, 21 Apr 1996 15:48
Date: Sun, 21 Apr 1996 15:48
721 lines
28037 bytes
28037 bytes
Archive-name: computer-lang/Modula2-faq/part1
Version: 2.3
Last-modified: 1996 03 11
Posting-frequency: Monthly
Modula-2 Frequently Asked Questions
Whats new in version 2.3?
There are a number of vendor changes and alterations to URLs that have
gotten out of date. There is new information of WG13.
=====================================================
SUMMARY:
1. Answers to 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.
2. Submissions should be mailed to -- rsutc@twu.ca
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.
3. I will update this summary file and post to the newsgroups
comp.lang.modula2 and to comp.answers and news.answers
4. The latest version will always be available in a Nisus (Mac) form in
ftp://FTP.twu.ca/pub/modula2/FAQ The folder modula2 has a variety of other
materials. This version of the FAQ is readible as text by other word
processors, but without any formatting. It is also available from the site
rtfm.mit.edu in plain text form as
file://rtfm.mit.edu/pub/usenet-by-group/comp.answers/computer-lang/Modula2-f
aq/part1 and as
file://rtfm.mit.edu/pub/usenet-by-group/comp.answers/computer-lang/Modula2-f
aq/part2
5. An automatically generated .html version of the FAQ is available as
http://www.cis.ohio-state.edu/hypertext/faq/usenet/computer-lang/Modula2-faq
/part1/faq.html
and
http://www.cis.ohio-state.edu/hypertext/faq/usenet/computer-lang/Modula2-faq
/part2/faq.html
In addition, the main HTML version will be maintained at ftp.twu.ca, as
ftp://FTP.twu.ca/pub/modula2/m2faq.html
=====================================================
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 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.
see: http://www.stfx.ca/people/jandrea/m2/nwirth/
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, at http://www.twu.ca/faculty/fnas/math/rsbook/Welcome.html
Mirrors: http://eiunix.tuwien.ac.at/Modula-2/rsbook/
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 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
http://sc22wg13.twi.tudelft.nl/
1.7.1 What is the status of ISO Standard Modula-2?
A. The international standard (IS 10514) has been voted on and will be
official as soon as the comments have been attended to.
1.7.2 Where can I get the Modula-2 standard?
A1. Contact your national standards body or the IEEE.
A2. Try looking in
ftp://ftp.mathematik.uni-ulm.de/pub/soft/modula/standard/draft4/
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. Kees Pronk c.pronk@twi.tudelft.nl has been appointed by SC22 as interim
convenor of WG13. It is expected that a new convenor will be appointed
soon.
1.7.5 When is the next WG13 meeting?
A1. It will be June 3 in Oxford, UK. For more details, follow
http://sc22wg13.twi.tudelft.nl/docs/meetings.html
1.7.6 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 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 take
a course in formal methods.
1.7.6 Can I at least get electronic copies of the definition modules?
A. Yes, in ftp://FTP.twu.ca/FTP/pub/modula2/ISOLibraries/ISODEFMods/ or
ftp://ftp.mathematik.uni-ulm.de/pub/soft/modula/standard/libdefs/
1.7.7 Can I get copies of the grammer?
A1. Yes, in
http://www.twu.ca/faculty/fnas/math/rsbook/Appendices/Ap3.nisus.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
.htmlhttp://cuiwww.unige.ch/db-research/Enseignement/analyseinfo/Modula2/BNF
index.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 is WG13 doing?
A. WG13 is working on two additional standards (separate from the main one)
for (a) object oriented Modula-2 and (b) generic programming facilities. A
ballot is at least several months away. Various versions of the latest
generics proposal are stored in the directory
ftp://FTP.twu.ca/FTP/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 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 superior to other languages for large projects and
for programming and real time controllers.
A2. 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 shifted 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
Singapore 139944
A3. The following survey results were recently posted by Mat. Maher
ssu94114@reading.ac.uk
ORGANISATION LOCATION WORK COMPILER
Statoil Norway StonyBrook
Inst. for Space Nerology Austria datafile conversion TopSpeed
dataviewers
Boeing Washington 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 Hertsfordshire 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 & Terra Dutentechnik
customer enquirys (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
1.12 Why do universities use Modula-2 for teaching instead of C or C++?
A. Modula-2 is a type-safe language and its compilers will therefore catch
many errors that otherwise show up at run time. While professional
programmers need to learn C because it is commonly used, it is important to
begin a discipline of deliberate, engineered programming at the outset.
A2. Here are the results of a survey of university usage of Modula-2 done
by Bernhard Leitch
lang. total perc. group
Pascal 159 35.57% 1
Ada 73 16.33% 2
Scheme 51 11.41% 4
Modula-2 49 10.96% 1
C 36 8.05% 3
C++ 28 6.26% 3
Fortran 10 2.24% 5
Turing 6 1.34% 5
Eiffel 5 1.12% 5
SML 5 1.12% 5
Miranda 4 0.89% 5
Modula-3 4 0.89% 5
ML 3 0.67% 5
Oberon 2 0.45% 1
ISETL 2 0.45% 5
Smalltalk 1 0.22% 5
Beta 1 0.22% 5
Prolog 1 0.22% 5
Simula 1 0.22% 5
Orwell 1 0.22% 5
Basic 1 0.22% 5
Trine 1 0.22% 5
Cobol 1 0.22% 5
Pop-11 1 0.22% 5
Lisp 1 0.22% 4
--- -------
447 100.00%
in language groups:
Wirth lang. 210 47% 1
Ada 73 16% 2
C/C++ 64 14% 3
Lisp like 52 12% 4
other 48 11% 5
--- ----
447 100%
1.13 Why is Modula-2 a good language for large commercial projects?
A1. It supports modular design which reduced errors and cuts down on
maintenance time. This also allows platform dependencies to be isolated,
increasing portability.
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 Oberon and Modula-3?
A. These languages have their own newsgroups. The Modula-3 FAQ is located
at http://www.vlsi.polymtl.ca/m3/faq.html and Oberon has an interesting
page at http://www.math.tau.ac.il/~laden/Ob-pkgs.html
1.15 Where do I get information on Modula-2*?
A. Try http://wwwipd.ira.uka.de/Tichy/m2star
***************************************************
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 it directly into 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.
2.2 INFO-M2 (more or less dead)
This is a remailer or mailing list on Modula-2 topics. It used to be
connected to comp.lang.modula2 and share a common message base, but it is
no longer, and has become somewhat dormant. You may receive the messages
that go to this list by sending the following message:
to: listproc@list.cren.net
subject : leave this line blank
body
subscribe info-M2 Nellie Hacke r use your first/last names
HELP this is an optional command for info on these mail lists
Save the message that you get back from the list server.
2.2.1 How do I post a message to info-m2?
A. Mail it to info-m2@list.cren.net Do not however, mail your listserv
commands to this address or everybody will get them
2.2.2 Send a message to listproc@list.cren.net as above, with the command
index info-m2 in the body. You can then send a get info-m2 logxxxx command
for specific message(s), or a help command to learn how to use the
listserv.
2.3 Compuserve
If you have a Compuserve account, GO CODEPORT to join the portable
programming forum.
2.4 Amiga lists
2.4.1 A general list for Amiga Modula2/Oberon programming. This is
available in a similar manner at amiga-m2@virginia.edu. It is not oriented
toward any specific compiler.Mail to cbt-general-request@virginia.edu to
subscribe.
2.4.2 A mailing-list for the Amiga Turbo Modula-2 Compiler written by
Amritpal S. Mann. To subscribe, send a message to
maillist@econet.demon.co.uk with SignOn turbo-list as the Subject. Once
subscribed, you will receive a copy of all messages sent to the address
turbo-list@econet.demon.co.uk.
2.5 Gardens Point Modula-2
To join the GPM mailing list, send mail to majordomo@dstc.qut.edu.au with
the subject line blank and the body
of the message containing:
subscribe gpm
info gpm
end
Mail sent to gpm@dstc.qut.edu.au gets automatically forwarded to all
subscribers on the list. The development team are of course subscribers.
***************************************************
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.)
ACE Associated Computer Experts bv
activity M
products Compilers, Operating systems and Consultancy
platforms SPARC, 68K, Transputer and more
office Van Eeghenstraat 100
1071 GL Amsterdam
The Netherlands
contact Kees Dik
e-mail kees@ace.nl
voice +31 20 6646416
fax +31 20 6750389
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@spectraweb.ch
voice +41/65/52 03 11
fax +41/65/52 03 79
Byte Works, Inc.
activity MD
products ORCA/Modula-2 for the Apple IIGS
offices 8000 Wagon Mound Dr. NW
Albuquerque NM 87120
contact Mike Westerfield
voice (505) 898-8183
e-mail MikeW50@AOL.COM
Edinburgh Portable Compilers, Ltd
activity MD
products EPC Modula-2
platforms SCO Unix V.[34],
Motorola 88000 UNIX V.[34],
SPARC UNIX & Solaris,
RS/6000 AIX
office1 17 Alva Street
Edinburgh, EH2 4PH, UK
contact Kathleen Smith
e-mail support@epc.ed.ac.uk
voice +441 131 225 6262
fax +441 131 225 6644
office2 20 Victor Square
Scotts Valley
California 95066, USA
USA tel 1-800-EPC-1110
Gardens Point
activity MD
products Gardens Point Modula-2
platforms Various Unix, including Linux 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@qut.edu.au
contact Jeffrey Ledermann
e-mail lederman@dstc.qut.edu.au
web http://www.fit.qut.edu.au/CompSci/PLAS/GPM/
voice +61 7-864-2132
fax +61 7-864-1801
see mail list and net sections
Mandeno Granville Electronics Ltd
activity MD
products 80x51: Mod51 - 80x51 Cross Compiler, ISO extensions
platforms DOS Hosted
office 128 Grange Rd
Auckland 3
New Zealand
contact
e-mail
voice +64 9 6300 558
fax +64 9 6301 720
Metrowerks
activity M
products standalone and MPW hosted compilers; Code Warrier environment
platforms Macintosh
NOTE: Modula-2 NO LONGER SUPPORTED, but probably still available from:
Bookmasters
POB 2039 Mansfield
OH, USA 44905
Tel +1 (800) 247-6553
Fax +1 (419) 281 6883
(see p1 GmbH)
ModulaWare
activity MD
prod/plat Unix (680x0, SunSparc, I386, Linux, OS/9): MCS Modula-2 V4.5
DEC VAX/OpenVMS & Alpha AXP/OpenVMS: MVR & MaX V4.0
DOS/Windows: OM2 V1.1 (Modula-2 & Oberon-2 Compiler)
DOS/Windows: Mithril V2 GUI/IDE/OOP-API for OM2
All platforms: OM2-XDS V2.06: (Oberon-2 and ISO Modula-2,
generating ANSI C, with ANSI C source of ISO Modula-2 library)
office1 ModulaWare
La Chanenche
F-04340 Meolans Revel
France
tel/fax +33 92.81.30.99
contact Guenter Dotzel
e-mail 100023.2527@compuserve.com
office2 ModulaWare
Haselbachstr. 113
D-97653 Bischofsheim
Germany
tel/Fax +49 (9772) 7101
Neuhoff, Juergen
activity MD
products 32-bit Modula-2 with Oberon extensions (non-ISO)
platforms OS/2
e-mail 76721.303@CompuServe.com
demo Try: ftp-os2.nmsu.edu/os2/dev32/MOD201H.ZIP
ftp-os2.cdrom.com
ftp.leo.org
p1 GmbH
activity MD
products MPW and Metrowerks Code Warrier hosted ISO compliant compilers
platforms Macintosh
office Hogenbergstrasse. 20
80686 Munich
Germany
contact Elmar Henne
e-mail eh@p1.space.net
voice +49 89-546 13 10
fax +49 89-580 25 97
PMI Software
activity MD
products Modula-2 tools; dealer for Mandino Granville, XDS (see listings)
platforms DOS and OS/2
contact John McMonagle
office PO Box 8402
Green Bay WI 54311
voice 414-468-6040
fax 414-465-0464
bbs 414-465-1656
e-mail johnm@online.dct.com
web http://www.dct.com/~johnm/
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
voice (+44) 081 656 7333
fax (+44) 081 655 0401
Stony Brook Software
activity MD
products Stonybrook Modula-2
platforms DOS/Windows (32-bit Windows ISO compiler coming RSN)
office 187 E. Wilbur, Suite 4
Thousand Oaks
CA 91360, USA
contact Norman Black
e-mail 70274.611@compuserve.com
voice +1 (805) 496-5837
BBS +1 (805) 379-3357
TERRA Datentechnik
activity D
products Logitech/Multiscope support
platforms DOS
office Bahnhofstrasse 33
CH-8703 Erlenbach
Switzerland
voice +41 01 910 35 55
fax +41 01 910 19 92
bbs +41 01 910 35 31
TopSpeed Corp (formerly Clarion)
activity MD
products Topspeed Modula-2
CDBW (has Windows VID, can link with TopSpeed M2
Windows debugger WID available on Compuserve or on BBS)
platforms DOS, DOS Extender, MS-Windows 3.1 (with some work)
OS/2
Plans: (According to rumour) will sell Modula-2 only as an add-on to
Clarion for Windows and not as a separate product.
office1 Clarion Software (Europe) Ltd.
Clare House, Thompsons Close
Harpenden, Herts, UK, AL5 4ES
voice +441 582 763 200
fax +441 582 768 222
tech sup +441 582 763 999
BBS +441 582 763 666
office2 150 East Sample Road
Pompano Beach
FL USA 33064
voice 1-800-354-5444 (free call in US)
voice2 1-305-785-4555 EXT. 105
fax 1-305-946-1650
BBS 1-305-785-2594
retail http://www.singnet.com.sg/customers/cirrus/cirrus1.htm
xTech
activity M
products XDS Modula-2/Oberon-2 to ANSI C translator
platforms many
e-mail ned@iisnw.iis.nsk.su
xds@iis.nsk.su
see ModulaWare and PMI (above) for product availability
A free evaluation kit for pc/dos is available as xds from
ftp://ftp.sun.ac.za/pub/oberon/om2-xds
ftp://ftp.itek.norut.no/pub/torbjorn/xdsnc207.zip
http://andy.iis.nsk.su/pub/xds/xdsnc207.zip (slow)
ftp://ftp.dct.com/pub/pmi
XDS_man_ps.zip postscript version of the manual
XDS206msdosDEMO.zip msdos demo
XDS206os2DEMO.zip os/2 demo
XDS205macDEMO.zip Mac demo
Optimizing O2/M2 compiler for Linux (as well as for MS-DOS, Win95 &etc.)
is outcoming in few weeks.
Information is also in
http://www.dct.com/~johnm/xds.htmlhttp://www.dct.com/~johnm/xtech.html
3.2 Where can I get a free/shareware compiler on the net?
Note: A net project to produce an OS/2 version of Modula-2 has apparently
died in the light of impending commercial releases.
Fitted Software Tools Modula-2 for DOS
ftp://ftp.psg.com/pub/modula-2/fst/fst-35s.lzh
ftp://cs.ru.ac.za/pub/languages/fst-35s.lzh
P. O. Box 867403 Plano, TX 75023 USA
contact: Roger Carvalho
e-mail: rogerc@metronet.com
Gardens Point Modula-2 for DOS, Linux and FreeBSD
ftp://pluto.fit.qut.edu.au/pub/gpmftp://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 ported by Eberhard Mattes mattes@azu.informatik.uni-stuttgart.de
which can be found at: ftp.uni-stuttgart.de/pub/systems/os2/ and various
other mirror sites.
MacLogimo for the Macintosh
ftp://ftp.psg.com/pub/modula-2/mac/maclogimo/
MacMETH Modula-2 for Macintosh
ftp://ftp.inf.ethz.ch/pub/macmeth/
ftp://ftp.psg.com/pub/modula-2/mac/macMETH/
MOCKA - Modula Compiler Karlsruhe
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: Juergen Vollmer
email: [modula|vollmer]@ipd.info.uni-karlsruhe.de
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@ipd.info.uni-karlsruhe.de.
For more information have a look to
http://i44www.info.uni-karlsruhe.de/~vollmer/mocka.html
See also ftp://tsx-11.mit.edu/pub/linux/packages/modula-2/ for a Linux version.
Turbo Modula-2 for Amiga
(contact Amritpal Mann, Turbo@econet.demon.co.uk)
Amiga Turbo Modula-2 may be obtained from your favourite AmiNet site as
the following files:
/pub/aminet/dev/m2/TurboV1.3Part1.lha
/pub/aminet/dev/m2/TurboV1.3Part2.lha
Ulm's Modula-2 System for Sun3 Workstations
ftp://ftp.mathematik.uni-ulm.de/pub/soft/modula/ulm/sun3/
Rick Sutcliffe Math/Cmpt Trinity Western University <http://www.twu.ca/>
CDN Chair WG13, FAQ maintainer comp.lang.modula-2; Nisus bug list maintainer
<http://www.twu.ca/faculty/fnas/rsutcliffe.html> <Not speaking officially>
Modula-2 FAQ/part2
Author: Rick Sutcliffe, Modula-2 FAQ mai...
Date: Sun, 21 Apr 1996 15:48
Date: Sun, 21 Apr 1996 15:48
461 lines
23015 bytes
23015 bytes
Archive-name: computer-lang/Modula2-faq/part2
Version: 2.3
Last-modified: 1996 03 11
Posting-frequency: Monthly
4 WHERE CAN I GET SOURCE CODE, OTHER INFO?
4.1 Is there source or other info available on the net?
A. Here are some net sites I have accessed at one time or another. I am not
sure if all are still available or what is in them.
ftp://ee.newcastle.edu.au/pub/modula2/
ftp://ftp.psg.com/pub/modula-2/
ftp://ftp.twu.ca/FTP/pub/modula2/ ( Home of this FAQ)
ftp://ftp.inf.ethz.ch/pub/
ftp://NIC.SWITCH.CH
ftp://sageftp.inel.gov/ftp/pub/sage/
ftp://ftp.mathematik.uni-ulm.de/pub/soft/modula/
http://www.yahoo.com/Computers/Languages/Modula_2/
http://www.jumbo.com/prog/dos/modula2/
WWW sites
http://www.stfx.ca/people/jandrea/m2/
http://www.info.apple.com/dev/devinfo/languages.html (sparse M2 compiler
info)
http://i44www.info.uni-karlsruhe.de/~vollmer/mocka.html
http://www.dct.com/~johnm/M2info.html
4.2 What other FAQs are available.
A. Try http://www.eng.newcastle.edu.au/ee/Moylan/m2/Modula2.html
A2. http://www.stfx.ca/people/jandrea/m2/
A3. (commercial) http://www.dct.com/~johnm/M2info.html
A4. http://www.ualberta.ca/~foka/Computer.html#Modula-2
A5. http://www.pitt.edu/~jesst63/modula2.html
4.3 Where can I find graphics libraries, etc?
A1. Try the PMOS library at
http://www.eng.newcastle.edu.au/ee/Moylan/m2/PMOS/PMOS.html
(Australia)
or, at one of the following sites:
ftp://ftp.psg.com/pub/modula-2/code (North America)
ftp://cs.ru.ac.za/pub/languages (South Africa)
ftp://dutiba.twi.tudelft.nl/pub/modula2 (Western Europe)
ftp://ftp.cnit.nsk.su/pub/msdos/programm.ing/modula2 (Eastern Europe).
A2. there is a graphics library MultiGraph available from
ftp://garbo.uwasa.fi/pc/programming/mg202ts1.zip - for TopSpeed 1.17
ftp://garbo.uwasa.fi/pc/programming/mg202ts3.zip - for TopSpeed 3.10 (rt,xt)
ftp://garbo.uwasa.fi/pc/programming/mg202sb2.zip - for Stony Brook 2.02
It supports nearly all the Super-VGA graphics modes on VESA-compatible
graphics boards, including high-color and true-color modes.
You may also contact
Databiten
P O Box 115
811 22 Sandviken
SWEDEN
phone: +46 26 256493
fax: +46 26 253641
OR
Department of Applied Acoustics
Chalmers University of Technology
Gothenburg, SWEDEN
e-mail: bid@ta.chalmers.se
fax : +46 31 145154
4.4 Are there any mathematical libraries available?
A1. See Numerical Procedures in Modula-2 -- authorized translation of
Numerical recipes in Pascal from PolyWare 1992 420 Ruston Rd Toronto,
Ontario Canada
A2. A numerical analysis package (as Modula-2 source files) is now
available as http://www.eng.newcastle.edu.au/ee/Moylan/m2/NumAnal.html
or ftp://ee.newcastle.edu.au/pub/modula2/numanal.zip
The modules in this package are:
Complex arithmetic: most of the usual operations, including the
recently-requested SIN and COS.
Matrices: operations on matrices of any size (up to a maximum
size limit, of course) - things like addition, multiplication,
inverse, solving linear equations, eigenvalues.
Polynomials: including root-finding.
Fast Fourier Transform.
Solving ordinary differential equations.
4.5 Where can I get a Modula-2 to C converter?
A: The program mtc is available by anonymous ftp from
file://ftp.psg.com/pub/modula-2/grosch/mtc.tar.Z
file://ftp.ira.uka.de/pub/programming/cocktail/mtc.tar.Z
file://rs1.rrz.uni-koeln.de/usenet/comp.archives/languages/modula-2/mtc
An already ported version for DOS+DJGPP can be found at at
file://ftp.uni-stuttgart.de/pub/unix/programming/compilerbau/dos/mtc/
Apparently there is an already ported Linux version too. I could not
find the correct file reference myself, but try looking at a Linux mirror
site such as sunsite.unc.edu.
Several of the compilers available work by producing C code and can
also serve this purpose.
4.6 Where can I get a Modula-2 to Modula-3 converter?
A. m2tom3 is available under the terms of the GNU Library General Public
License from
ftp://ftp-i3.informatik.rwth-aachen.de/pub/Modula-3-Contrib/m2tom3/
m2tom3 is a system to port Modula-2 programs to Modula-3. It consists
of two parts:
- A conversion program which tries to create a Modula-3 source text
with the same semantics as the Modula-2 input while retaining the
original look and feel as good as possible.
- A base library which tries to emulate the Modula-2 standard library
using the Modula-3 standard library.
contact: Peter Klein
office: Ahornstrasse 55, 52074 Aachen, Germany
e-mail: pk@i3.informatik.rwth-aachen.de.
Tel.: +49/241/80-21316
Fax.: +49/241/8888-218
4.7 Are there any Modula-2 applications around?
A. The Idaho National Engineering Laboratory (INEL) develops and maintains
a now ~350,000 line public domain MODULA-2 reusable component library
called SAGE. For more information on SAGE send E-Mail to
hotline@sage.inel.gov and see the FTP server at
ftp://sageftp.inel.gov/ftp/pub/sage/
4.8 Is there a Modula-2 version available for parallel processing?
A. IPD Modula-2* team has released version 9401 of the new Modula-2*
programming environment for several architectures.
You can get the IPD Modula-2* distributions for all supported architectures
by anonymous ftp from ftp://ftp.ira.uka.de/pub/programming/modula2star/
Please do not forget to use binary mode when retrieving any of them!
Register your copy with the registration secretary: ipdm2s@ira.uka.de For
further information and bug reports please contact the IPD Modula-2* team
at msc@ira.uka.de
4.9 Are there any compiler construction tools available?
A1. Some old ones appear in ftp://ftp.gmd.de/GMD/cocktail/
AA2. Coco/R generates recursive descent parsers and their associated
scanners from attribute grammars. Full source code, and a variety of
simple example applications are supplied in the distribution kits. The
Modula versions (1.39 is the latest) are available from
ftp://ftp.inf.ethz.ch:/pub/software/Coco
ftp://ftp.psg.com:/pub/modula-2/coco
ftp://cs.ru.ac.za:/pub/coco
ftp://ftp.fit.qut.edu.au:/pub/coco
There are versions for the MS-DOS compilers (JPI, FST, Logitech,
StonyBrook, Gardens Point), for the Mocka compiler for Linux and FreeBSD,
as well as for the Gardens Point Unix compilers, including Linux and
FreeBSD. There is also a version that produces TurboPascal units very
similar to the Modula modules. A port for the P1 compiler on the Mac should
be available soon. A port by Rolf Schrader for TDI Atari Modula-2 is now
available from
ftp://cs.ru.ac.za:/pub/coco/ATARI136.EXE in the form of an MS-DOS
self-extracting file. This may also be unpacked by using the LHA
decompressor on other systems.
A2. A copy of the EBNF for ISO Modula-2 can be found in
http://www.twu.ca/faculty/fnas/math/rsbook/Appendices/Ap3.nisus.html
4.10 Does anyone know of a lexical analysis tool that is written in
Modula-2 and for Modula-2 code?
A.You want rex, part of Cocktail (also ll and lalr parser generators,
abstract syntax trees, attribute grammar evaluators, tree Free version:
ftp://ftp.ira.uka.de:/pub/programming/cocktail/
tp://ftp.uni-stuttgart.de/pub/unix/programming/compilerbau/ (includes a
dos version using DJGPP)
Commercial version and support:
Dr.-Ing. Josef Grosch Tel. : 0721-697061
CoCoLab Fax : 0721-661966
Hagsfelder Allee 16 EMail : grosch@cocolab.sub.com
D-76131 Karlsruhe
4.11 What can you tell me about debuggers?
A. For gnu, try http://www.cis.ohio-state.edu/htbin/info/info/gdb.info,Modula-2
4.12 Is there an applications framework for windows programming?
A. Try looking at
ftp://ftp.ifi.uio.no/pub/sjr/m2afx.zip
4.13 Can you help me with my assignments?
A. Some people may give you hints, but please do not subvert your professor
and your education by submitting work other people do for you.
***************************************************
5. SPECIFIC QUESTIONS ON CODE AND ALGORITHMS
5.1 Where can I get an algorithm for an efficient random number generator?
A. Pierre L'Ecuyer: Efficient and Portable Combined Random Number
Generators, Communications of the ACM, vol. 31, no. 6, pp. 742-749. The RNG
has a period of approximately 2.3E+18. Generating 1 000 000 numbers per
second, that means that it would take over 73 000 years before it repeated
a sequence.
***************************************************
6 WHAT ARE SOME REFERENCE MATERIALS ON MODULA-2?
A1. A shareware text I have written is available as html in
http://www.twu.ca/faculty/fnas/math/rsbook/Welcome.html
mirrors: http://eiunix.tuwien.ac.at/Modula-2/rsbook/
and as postscript in ftp://FTP.twu.ca/FTP/pub/modula2/Modula-2Text/
A2. A tutorial is available at the Jumbo site in
http://www.jumbo.com/prog/dos/modula2
A3.The manuals for some of the commercial products such as TopSpeed contain
much useful information.
A4. The Gardens Point sites have documentation available (see their listing
above.)
A5. A document called Modula-2 for Pascal programmers (Postscript,10 pages)
may be fetched by anonymous ftp at
ftp://ee.newcastle.edu.au/pub/modula2/Modula2.ps.Z
The author has not updated the contents for a couple of years, so there may
be minor inaccuracies in terms of the current language standard.
A6. A variety of ETH papers are stored at ftp.ftp.ethz.ch in /doc/diss,
/doc/tech-reports and /pub/oberon/docu
A7. What follows is a BIBLIOGRAPHY of some published materials in a table
delimited by two spaces between fields:
Author Title City Publisher Year Subject
Adams, J. Mack Gabrini, Philippe J & Kurtz, Barry L. An
Introduction to Computer Science with Modula-2 Lexington, MA D.C. Heath &
Co 1988
Backhurst, Nigel G. Mastering Modula 2 Wilmslow Sigma 1988
Beidler, John & Jackowitz, Paul Modula-2 Boston Prindle Weber &
Schmidt 1985
Blaschek, G. & Pomberger, G. Introduction To Programming With
Modula-2 Springer-Verlag 1990
Budgen, David Software Development with Modula-2 Reading, MA
Addison-Wesley 1989
Carmony, Lowell A. & Holliday, Robert L. A First Course In
Modula-2 New York Computer Science Press c1990
Carroll, D. W. Advanced Modula-2 Programming for the IBM PC XT
and AT Elsevier 1986
Chirlian, Paul M. Introduction to Modula-2 Beaverton, Or. Matrix
Publishers
Christian, Kaare A guide to Modula-2 New York Springer-Verlag 1986
Cooling, J.E. Modula-2 for Microcomputer Systems Van Nostrand
Reinhold 1988
Cooper, Doug Oh My! Modula-2! New York Norton 1990
Cornelius, Barry Programming with TopSpeed Modula-2 Reading, MA
Addison Wesley 1991
Eisenbach, Susan & Sadler, Cristopher Program Design with Modula-2
Reading, MA Addison-Wesley 1989
Elder, Jim Compiler Construction: A Recursive Descent model
Hemel Hempstead England: Prentice-Hall 1994
Etling, Don Modula-2 Programmer's Resource Book Blue Ridge
Summit, PA Tab Books 1988
Feldman, Michael B. Data Structures with Modula-2 Englewood
Cliffs, NJ Prentice Hall 1988
Ford, Gary & Wiener, Richard. Modula-2: A Software Development
Approach New York Wiley 1985
Gabrini, Philippe J. & Kurtz, Barry L. Data Structures And
Algorithms With Modula-2 Lexington, MA DC Heath c1992
Gleaves, Richard Modula-2 for Pascal Programmers New York
Springer-Verlag 1984
Gough, K. John & Mohay, George M. Modula-2: A Second Course In
Programming Englewood Cliffs, NJ Prentice Hall 1988
Greenfield, Stuart B. Invitation to Modula-2 Petrocelli Books 1985
Harrison, Rachael Abstract Data Types in Modula-2 New York Wiley
1989 Wiley
Harter, Edward D. Modula-2 Programming. A First Course Englewood
Cliffs, NJ Prentice-Hall 1990
Helman, Paul & Veroff, Robert Walls and Mirrors: Intermediate
Problem Solving and Data. Modula-2 Menlo Park, CA Benjamin Cummings 1988
Hewitt, Jill A. & Frak, Raymond J. Software Engineering in
Modula-2: an object-oriented approach London Macmillan 1989.
Hille, R.F. Data Abstraction and Program Development Using Modula-2
Sydney Prentice Hall 1989
Hopper, Keith. The Magic of Modula-2 Melbourne Prentice Hall 1991
Johnston, Chris Applying Modula-2 Academic Press 1991
Jones, William C. Jr. Data Structures Using Modula-2 New York
Wiley 1988
Jones, William C. Jr. Modula-2 Problem Solving and Programming
with Style New York Harper & Row 1987
Joyce, Edward J. Modula-2: A Seafarer's Manual & Shipyard Guide
Reading, MA Addison-Wesley 1985
Kaplan, Ian & Miller, Mike Modula-2 Programming Rochelle Park, NJ
Hayden Book Co. 1986
Kelly-Bootle, Stan Modula-2 Primer Howard W. Sams & Co. 1987
King, K.N. Modula-2: A Complete Guide Lexington, MA D.C. Heath &
Co 1988
Knepley, Ed & Platt, Robert Modula-2 Programming Reston, VA
Reston Pub. Co. 1985
Koffman, Elliot B. Problem Solving and Structured Programming in
Modula-2 Reading, MA Addison-Wesley 1988
Kruse, Robert L. Programming With Data Structures Modula-2 Version
Englewood Cliffs, NJ Prentice-Hall 1988
Lawrence, Mike Modula-2 And The Amiga Avant-Garde Software 1990?
Leestma, Sanford & Nyhoff, Larry Programming & Problem-Solving in
Modula-2 New York Macmillan 1989
Lins, C. (Charles) The Modula-2 Software Component Library Volumes
I-IV New York Springer-Verlag 1989-
Mayer, Herbert G. Programming in Modula-2. the Art & the Craft
New York Macmillan 1988
McCracken, Daniel D. & W. Salmon A Second Course in Computer
Science with Modula-2 New York Wiley 1987
Messer, P. A. & I. Marshall Modula-2 Constructive Program
Development Oxford Blackwell Scientific Publications 1986
Metrowerks, Inc. Staff Metrowerks Modula-2 Start Pak New York
Macmillan 1990
Mitchell, R. J. Modula-2 Applied London Macmillan 1991
Mitchell, Richard Abstract Data Types And Modula-2 A Worked
Example Of Design Using Data Abstraction Englewood Cliffs, NJ Prentice
Hall 1992
Moore, John B. & McKay, Kenneth N. Modula-2 Text and Reference
Englewood Cliffs, NJ Prentice-Hall 1987
Novak, M.M. Modula-2 in Science & Engineering London McGraw 1990
Nyhoff, Larry & Leestma ,Sanford Data Structures & Advanced
Programming in Modula-2 New York Macmillan 1990
Ogilvie, John W. L. Modula-2 Programming New York McGraw-Hill 1985
Pinson, Lewis Sincovec, Richard & Weiner, Richard A First Course
in Computer Science with Modula-2 New York Wiley 1987
Pittman, Thomas & Peters, James The Art Of Compiler Design Theory
And Practice Englewood Cliffs, NJ Prentice-Hall 1992
Pomberger, Gustav. Software Engineering and Modula-2 Englewood
Cliffs, NJ Prentice Hall 1984
Rechenberg, P. & Mössenböck, H. (tr. O'Meara, John) A Compiler
Generator for Microcomputers Englewood Cliffs, NJ Prentice Hall / Carl
Hanser Verlag 1989
Riley, David D. Data Abstraction and Structures: An Introduction
To Computer Science II Boston Boyd & Fraser Pub. Co. 1987
Riley, David D. Using Modula-2: An Introduction To Computer
Science I Boston Boyd & Fraser Pub. Co. 1987
Sale, Arthur H. J. Modula-2: Discipline & Design Sydney
Addison-Wesley 1986
Sawyer, Brian & Foster, Dennis. Programming Expert Systems in
Modula-2 New York Wiley 1986
Schildt, Herbert Advanced Modula-2 Berkeley, CA Osborne
McGraw-Hill 1987
Schildt, Herbert Modula-2 Made Easy Berkeley, CA Osborne
McGraw-Hill 1986
Schiper, Andre; (tr. Howlett, Jack) Concurrent programming:
Illustrated With Examples in Portal, Ada, and Modula-2 Halsted Press
1989
Schnapp, Russell L. Macintosh Graphics in Modula-2 Englewood
Cliffs, NJ Prentice-Hall 1986
Sincovec, Richard F. & Richard S. Wiener. Data Structures Using
Modula-2 New York Wiley 1986
Sincovec, Richard F. & Wiener, Richard S. Modula-2 Software
Components New York Wiley 1987
Stubbs, Daniel F. & Webre, Neil W. Data Structures With Abstract
Data Types and Modula-2 Monterey, CA Brooks/Cole Pub. Co. 1987
Sutcliffe, Richard J. Introduction to Programming Using Modula-2
Columbus, OH Merrill 1987
Sutherland, Robert J. The Professional Programmer's Guide to
Modula-2 London Pitman 1988
Terry, Patrick D. An Introduction To Programming with Modula-2
Reading, MA Addison-Wesley 1987
Thalmann, Daniel Modula-2: An Introduction New York
Springer-Verlag 1985
Tremblay, Jean-Paul DeDourek, John M. & Daoust, David A.
Programming in Modula-2 New York McGraw-Hill 1989
Tucker, Allen B. Jr. Computer science: A Second Course Using
Modula-2 New York McGraw-Hill 1988
Ullmann, Jeffrey Compiling in Modula-2 - A First Introduction To
Classical Recursive Descent Compiling Hemel Hempstead England:
Prentice-Hall 1994
Ural, Saim & Ural, Suzan Introduction to Programming with Modula-2
New York Harper & Row 1987
Walker, Billy K Modula-2 Programming With Data Structures
Belmont, CA Wadsworth Pub. Co. 1986
Walker, Robert D. Modula-2 Library Modules: A Programmer's
Reference Blue Ridge Summit, PA Tab Books 1988
Ward, Terry A. Advanced Programming Techniques in Modula-2
Glenview, IL Scott Foresman 1987
Welsh, Jim & Elder, John Introduction to Modula-2 Englewood
Cliffs, NJ Prentice-Hall 1987
Wiatrowski, Claude A. & Wiener, Richard S. From C to Modula-2--and
Back - Bridging The Language Gap New York Wiley
Wiener, Richard Modula-2 Wizard's Programming Reference New York
Wiley 1986
Wiener, Richard & Ford, G. Modula-2 A Software Development
Approach New York Wiley 1985
Wiener, Richard & Sincovec, R. F. Software Engineering with
Modula-2 and Ada New York Wiley 1984
Willis, Claire & Paddon, Derek Abstraction And Specification With
Modula-2 London Pitman 1992
Wirth, Niklaus Programming in Modula-2 (3rd corrected ed.) New
York Springer-Verlag 1985
Wirth, Niklaus Algorithms and Data Structures (1986 edition)
Englewood Cliffs, NJ Prentice-Hall 1986
Wirth, Niklaus Programming in Modula-2 (4th ed.) New York
Springer-Verlag 1990
Woodman, Mark et al Portable Modula-2 Programming Maidenhead,
Berkshire UK McGraw-Hill 1989
7. REVIEWS OF MODULA-2 PRODUCTS.
Note: This section is experimental. The reviews have been contributed by
others and I take no responsibility for their accuracy or for any opinions
expressed therein.
p1 Modula-2 v5.2 for Macintosh, by Marc Martin, Dec 1994. This is an
excellent Modula-2 compiler, implemented as an MPW Tool. Highlights include
ISO language extensions & library, a full set of Macintosh toolbox
definitions, language extensions to simplify toolbox programming,
object-oriented extensions and support for MacApp, greater than 32k code
and globals, code generation comparable to Apple's official compilers,
several FPU code options, multi-window debugger, linkable with other MPW
languages, detailed documentation, and superb technical support via e-mail.
Downsides include high cost (US$400), dependency on MPW, lack of SADE
support, and no native PowerPC version. Version 5.3 is in alpha testing,
and adds ANSI C output for creating PowerPC programs under MPW or
CodeWarrier.
Appendix: AUTHOR INFORMATION AND DISCLAIMERS
Personal: I have used, written about, and taught Modula-2 (since 1983) and
have maintained some of the information in this list for over four years. I
have used at least a dozen different compiler/environments in that time on
five different platforms, and have written numerous articles and reviews
for publication. I have been a member of the ISO committee WG13 (Modula-2
standardization) since its inception and have participated in all the
debates and meetings of WG13 except for meeting #9 at Lake Wanaka. I have
written a text on Modula-2, made numerous submissions to WG13 and directed
an experimental implementation of the ISO I/O library in order to verify
its concepts.
Disclaimers:
(i) I take no responsibility for anyone's use or misuse of this information.
(ii) Apart from having been a beta tester, textbook writer, programmer and
a long time user of Modula-2, I have no financial connection with any
manufacturer or distributor of software. I am the author of some Modula-2
materials (some of which are shareware) as noted herein.
(iii) In producing this material, I am NOT acting in an official capacity
for TWU, WG13, comp.lang.modula2, or any other organization.
(iv) Mention of a book or product is NOT an endorsement unless specifically
noted.
(v) Inclusion of materials on this list is based on relevance to Modula-2
and factual content and is otherwise entirely without prejudice. I edit all
submissions for brevity, clarity, and usage.
To remain authoritative, this and all versions of this FAQ are copyright
1991-1995 by Rick Sutcliffe. This document may be copied and distributed
provided it is not altered and no fee is charged with the exception of
normal downloading costs.
Compiled by:
Rick Sutcliffe (aka The Northern Spy in the old days)
Trinity Western University
7600 Glover Rd.,
Langley, B.C. Canada V2Y 1Y1
(604) 888-7511 Fax 888-1225 mailto:rsutc@twu.ca
Rick Sutcliffe Math/Cmpt Trinity Western University <http://www.twu.ca/>
CDN Chair WG13, FAQ maintainer comp.lang.modula-2; Nisus bug list maintainer
<http://www.twu.ca/faculty/fnas/rsutcliffe.html> <Not speaking officially>
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads