In the Technical Notes section, you can find a collection of reports describing various aspects of CM3-IDE and Modula-3.
Feel free to print these documents or view them on-line. However, please note that these reports are copyrighted material, and are distributed under a license.
Documents are available in the following formats:
PostScript
Acrobat PDF
On-line HTML.
Reactor represents a new generation of technology for building client/server, multi-tiered, and distributed applications. It combines an innovative web-based application development system with a rich and robust distributed infrastructure. This paper outlines the features and benefits of Reactor's high-productivity, distributed application development system.
Note that CM3-IDE is the replacement for Reactor(tm).
Jim Horning, Bill Kalsow, Paul McJones, Greg Nelson
Digital Systems Research Center
December 25, 1993
103 pages
This manual describes a collection of interfaces defining abstractions that Modula-3 programmers have found useful over a number of years of experience with Modula-3 and its precursors. We hope the interfaces will be useful as a "starter kit" of abstractions, and as a model for designing and specifying abstractions in Modula-3.
May 1, 1992
70 pages
This is a tutorial introduction to programming with Trestle, a Modula-3 window system toolkit implemented over the X window system, and Win32. It assumes that you have some experience as a user of window systems, but no previous experience programming with X or other window systems.
The tutorial begins with examples of programming using built-in Trestle interactors and continues by showing you how to build your own interactors: both leaf interactors and interactors that contain their own sub-windows and modify their behavior.
The source code presented in the tutorial is available in the package trestletutorial in your distribution.
The first few examples in the tutorial are programs; their source code is reproduced in subdirectories named after that program. The later examples are new classes of interactors. For these, the subdirectories are named after the interactor, and contain both "src" and "test" subdirectories. The "src" directories contain the source code for the interface and implementation of the new interactor, and the "test" directory contains a simple program to exercise the interactor.
(The PostScript file for the Trestle Reference Manual is compressed using GZIP.)
December 1991
This report is a working definition of Trestle, a Modula-3 window system toolkit implemented over the X window system, and Win32.
February 28, 1994. Revised December 4, 1995
48 pages
A network object is an object whose methods can be invoked over a network. This report describes the design and implementation of a network objects system for Modula-3. The system is novel for its overall simplicity. The report includes a thorough description of realistic marshaling algorithms for network objects, precise informal specifications of the major internal interfaces, preliminary experience, and performance results.
Printed on April 26, 1996
142 pages
This manual describes VBTkit, a Modula-3 user interface toolkit based on the Trestle window system toolkit. VBTkit provides a library of widgets and the support software that makes it easy to customize these widgets and to construct more widgets.
Printed on April 26, 1996
202 pages
This report is the working definition of the FormsVBT toolkit. FormsVBT is a system for constructing graphical user interfaces (GUI's) in Modula-3.
(The PostScript file for the Trestle Reference Manual is compressed using GZIP.)
Bill Kalsow
Digital Systems Research Center
Railroad diagrams are a graphical way of representing the syntax of a programming language. The following railroad diagrams for Modula-3 are available in PostScript format:
A poster of the complete Modula-3 syntax, including definitions of terminals. This will print on an 11x17 inch sheet if your printer has such a paper tray; otherwise, it will print on a normal-sized page.
These four pages contain railroad diagrams for the complete Modula-3 grammar, not counting the defintions of the terminals.
This page contains railroad diagrams for the terminals of the Modula-3 grammar such as identifiers, literals, comments, and pragmas.
For more reading material Modula-3, see the Modula-3 Bibliography.