Acknowledgements

Many components of CM Modula-3 came from SRC Modula-3. Many people contributed to SRC Modula-3, and we would like to thank them. Below is a partial list of the contributors.

We use the garbage collector developed by Joel Bartlett (DEC-WRL). It has been modified to support incremental and generational collection by John DeTreville (DEC SRC).

John Dillon (DEC SRC) provided the original C version of thread switching.

Mark R. Brown and Greg Nelson (DEC SRC) designed the readers and writers interfaces.

Jorge Stolfi (DEC SRC) and Stephen Harrison (DEC-WSE) were very patient alpha-testers. They gave us invaluable bug reports and also translated some DEC SRC Modula-2+ modules to Modula-3.

J'erome Chailloux (ILOG) developed the X interfaces while visiting DEC SRC. We also had numerous discussions about the evolution of SRC Modula-3.

The ``gatekeepers'' (DEC-WRL), in particular Paul Vixie, helped with the distribution of SRC Modula-3.

David Goldberg (XEROX PARC) ported SRC Modula-3 to the SPARC machines.

Ray Lischner ported the system to the Apollo machines.

Richard Orgass (IBM Rochester) and Roger Hoover (IBM) ported the system to the IBM machines.

Piet van Oostrum (Utrecht University) ported the system to the HP series 9000/300 computers running HP/UX 7.0.

Pat Lashley (KLA Instruments) contributed the lexer for pps.

R'egis Crelier (ETH) designed and implemented the pickles modules while he was a summer intern at SRC.

Mick Jordan (Sun) provided the AST toolkit and helped with m3build.

Stephen Harrison (DEC SRC) wrote the quake interpreter.

Norman Ramsey (Princeton University) has pushed the system into obscure corners and found many bugs there.

R.J. Stroud and Dick Snow (University of Newcastle upon Tyne) provided the Encore Multimax port.

Dave Nichols (Xerox PARC) fixed and improved the pretty printer.

Greg Nelson and Mark Manasse (DEC SRC) designed and implemented the Trestle window system.

Sam Harbison contributed the FieldList interface.

Steven Pemberton (CWI) wrote the enquire program and made it available to the community.

The vbtkit software has been designed and implemented by a large number of people at SRC: Andrew Birrell, Ken Brooks, Marc H. Brown, Mark R. Brown, Pat Chan, Luca Cardelli, John DeTreville, Steve Glassman, Mark Manasse, Jim Meehan, Greg Nelson, Jorge Stolfi, Mary-Claire van Leunen.

FormsVBT is due to Jim Meehan and Marc H. Brown (DEC SRC).

Peter Klein (RWTH Aachen) contributed a tool to help convert Modula-2 to Modula-3 programs. He is also responsible for establishing the first FTP mirror site.

James J. Walker (GTE Laboratories) ported the system to the HPPA machines.

Thomas Brupbacher (ETH Zuerich) ported the system to the SUN386 machines.

Dennis Brueni (brueni@csgrad.cs.vt.edu) ported the system to the OKI machines.

Dave Detlefs (DEC SRC) wrote the Modula-3 mode for gnuemacs. David Goldberg (XEROC PARC) wrote the m3tags program.

Jim Horning (DEC SRC), Paul McJones (DEC SRC) and Greg Nelson (DEC SRC) edited, designed, polished and in some cases implemented the "Interface police" interfaces.

Allan Heydon (DEC SRC) implemented the Fmt and Lex interfaces and contributed the Web description of Modula-3 linking.

Michel Dagenais (Ecole Polytechnique de Montreal) ported the system to Linux.

Olaf Wagner ported the system to pcs running FreeBSD 1.1.5 and FreeBSD 2.0.

Eric Veach (Stanford) ported the system to MIPS boxes running Irix 5.2.

Michael Isard (DEC SRC) implemented the Intel x86 code generator and Windows/NT dynamic loader.

Carsten Weich (Institut fuer Informatik Universitaet Klagenfurt) implemented the stable objects package and the associated stub generator.

Chuck Thacker (DEC SRC) wrote the original version of Sil. Bill Kalsow converted it to Modula-3. Thanks also to all the people who used SRC Modula-3 and reported bugs.

The various ports would have been impossible without the work of a number of people, who kindly made their modifications available. However, most of the bugs you may find in these ports were introduced during the final integration of these modifications and we are to be blamed for them.