Modula-3 is a modern programming language that supports interfaces, objects, generics, lightweight threads of control, the isolation of unsafe code, garbage collection, exceptions, and subtyping.
It was explicitly designed to be substantially simpler than other languages with comparable power, in order to facilitate the construction of large, robust applications.
For an extremely good primer on Modula-3, visit Geoff Wyant's Introduction to Modula-3 website.
History - Modula-3 is closely based on Modula-2+, which was designed at the Digital Equipment Corporation Systems Research Center and used to build the Topaz system [McJones89, Rovner86]. The Modula-3 design was a joint project by Digital and Olivetti. The language definition was published in August 1988, and immediately followed by implementation efforts at both companies. In January 1989, the committee revised the language to reflect the experiences of these implementation teams. A few final revisions were made for the publication of this book.
Digital Equipment Corporation hosts the Modula-3 Home Page
The Modula-3 Resource Page is the official
.org site for information concerning the language.
Implementations - The following are links to some of the free Modula-3 implementations:
Learning Resources - The following are links to some of the educational resources available to new Modula-3 programmers:
John Entsminger, 1999. For comments, updates and suggestions jentsminger@juno.com