Modula-3 Bibliography

Copyright (C) 1994, Digital Equipment Corporation

Here is a complete list of books, papers and articles related to Modula-3.

  1. Martin Abadi, Baby Modula-3 and a Theory of Object, Research Report 95, Systems Research Center, Digital Equipment Corporation, Palo Alto, February, 1993.

    -- A theoretical treatment of the semantics of objects.

    It's available via anonymous FTP from gatekeeper.dec.com in pub/DEC/SRC/research-reports/SRC-095.ps.Z.

  2. Joel F. Bartlett, Compacting Garbage Collection with Ambiguous Roots, Research Report 88/2, Western Research Laboratory, Digital Equipment Corporation, Palo Alto, February, 1988.

    -- The basis for SRC Modula-3 garbage collector.

    It's available on paper, by sending a mail to WRL-Techreports@decwrl.dec.com (send help as the subject).

  3. A. D. Birrell, J. V. Guttag, J. J. Horning, R. Levin, Synchronization Primitives for a Multiprocessor: A Formal Specification, Research Report 20, Systems Research Center, Digital Equipment Corporation, Palo Alto, August, 1987.

    It's available via anonymous FTP from gatekeeper.dec.com in pub/DEC/SRC/research-reports/SRC-020.ps.Z.

  4. Andrew D. Birrell, An Introduction to Programming with Threads, Research Report 35, Systems Research Center, Digital Equipment Corporation, Palo Alto, January, 1989.

    It's available via anonymous FTP from gatekeeper.dec.com in pub/DEC/SRC/research-reports/SRC-035.ps.Z.

  5. Andrew Birrell, David Evers, Greg Nelson, Susan Owicki, Edward Wobber, Distributed Garbage Collection for Network Objects, Research Report 116, Systems Research Center, Digital Equipment Corporation, Palo Alto, December, 1993.

    -- A fault-tolerant and efficient garbage collection algorithm for distributed systems.

    It's available via anonymous FTP from gatekeeper.dec.com in pub/DEC/SRC/research-reports/SRC-116.ps.Z.

  6. Andrew Birrell, Greg Nelson, Susan Owicki, Edward Wobber, Network Objects, Research Report 115, Systems Research Center, Digital Equipment Corporation, Palo Alto, February, 1994.

    -- This report describes the design and implementation of a netowrk objects system, which allows you to write programs that communicate over a network, while hiding the messy details of network programming. Network objects provide functionality similar to remote procedure call (RPC), but they are more general and easier to use. The system is implemented in Modula-3.

    It's available via anonymous FTP from gatekeeper.dec.com in pub/DEC/SRC/research-reports/SRC-115.ps.Z.

  7. Graham M. Birtwistle, Ole-Johan Dahl, Bjorn Myhrhaug, and Kristen Nygaard, Simula Begin, Auerbach, Philadelphia PA, 1973.

  8. Gilad Bracha and William Cook, Mixin-based Inheritance, Proceedings of the Conference on Object-Oriented Programming: Systems, Languages, and Applications; European Conference on Object-Oriented Programming, Pages 303--311, October, 1990.

  9. Marc H. Brown and John Hershberger, Color and Sound in Algorithm Animation, Research Report 76a, Systems Research Center, Digital Equipment Corporation, Palo Alto, August 30, 1991.

    It's available via anonymous FTP from gatekeeper.dec.com in pub/DEC/SRC/research-reports/SRC-076a.ps.Z.

  10. Marc H. Brown, Zeus: A System for Algorithm Animation and Multi-View Editing, Research Report 75, Systems Research Center, Digital Equipment Corporation, Palo Alto, February 28, 1992.

    -- Also in Visual Languages '91, October 1991.

    It's available via anonymous FTP from gatekeeper.dec.com in pub/DEC/SRC/research-reports/SRC-075.ps.Z.

  11. Marc H. Brown, The 1992 SRC Algorithm Animation Festival, Research Report 98, Systems Research Center, Digital Equipment Corporation, Palo Alto, March 27, 1993.

    It's available via anonymous FTP from gatekeeper.dec.com in pub/DEC/SRC/research-reports/SRC-098.ps.Z.

  12. Marc H. Brown, The 1993 SRC Algorithm Animation Festival, Research Report 126, Systems Research Center, Digital Equipment Corporation, Palo Alto, July 29, 1994.

    It's available via anonymous FTP from gatekeeper.dec.com in pub/DEC/SRC/research-reports/SRC-126.ps.Z.

  13. Marc H. Brown and James R. Meehan (editors), VBTkit Reference Manual: A toolkit for Trestle, Systems Research Center, Digital Equipment Corporation, Palo Alto.

    -- This report is the working definition of the VBTkit toolkit. VBTkit is a collection of widgets for building graphical user interfaces in Modula-3. See the FormsVBT Reference Manual below, which describes a system for easily composing these widgets.

    It's available in the vbtkit archive of the SRC Modula-3 distribution. A draft version is available via anonymous FTP from gatekeeper.dec.com in pub/DEC/Modula-3/contrib/vbtkit.25Mar93.ps.Z.

  14. Marc H. Brown and James R. Meehan, The FormsVBT Reference Manual, Systems Research Center, Digital Equipment Corporation, Palo Alto.

    -- This report is the working definition of the FormsVBT toolkit. FormsVBT is a system for constructing graphical user interfaces (GUI's) in Modula-3.

    It's available in the formsvbt archive of the SRC Modula-3 distribution. A draft version is available via anonymous FTP from gatekeeper.dec.com in pub/DEC/Modula-3/contrib/formsvbt.25Mar93.ps.Z and pub/DEC/Modula-3/contrib/formsvbt.AppC.26Mar93.ps.Z.

  15. Mark R. Brown and Greg Nelson, IO Streams: Abstract Types, Real Programs, Research Report 53, Systems Research Center, Digital Equipment Corporation, Palo Alto, November, 1989.

    -- Shows how to use objects in a real program. Also defines the de facto standard input/output functions. These interfaces give an especially good example of partially opaque types.

  16. Luca Cardelli, James Donahue, Lucille Glassman, Mick Jordan, Bill Kalsow, Greg Nelson, Modula-3 Report, Research Report 31, Systems Research Center, Digital Equipment Corporation, Palo Alto, August 15, 1988.

    -- The original definition of the language, superceded by report 52.

  17. Luca Cardelli, James Donahue, Mick Jordan, Bill Kalsow, Greg Nelson, The Modula-3 Type System, Conference Record of the Sixteenth Annual ACM Symposium on Principles of Programming Languages (POPL), Pages 202--212, January 11-13, 1989.

  18. Luca Cardelli, James Donahue, Lucille Glassman, Mick Jordan, Bill Kalsow, Greg Nelson, Modula-3 Report (revised), Research Report 52, Systems Research Center, Digital Equipment Corporation, Palo Alto, November, 1989.

    -- This report is the definition of the language.

    This report is now only available in hardcopy. The address for orders is below.

  19. Luca Cardelli, James Donahue, Lucille Glassman, Mick Jordan, Bill Kalsow, Greg Nelson, Modula-3 Language Definition, Sigplan Notices 27(8):15-42, August 1992.

    -- Chapters 2 and 3 of SPwM3. (on-line version)

  20. Michel R. Dagenais, Building Distributed OO Applications: Modula-3 Objects at Work, Draft Version, March 8, 1995.

    -- A draft of a book describing "the latest object-oriented techniques for devloping large interactive distributed applications". The focus is on the Modula-3 libraries and Network Objects, but the first two chapters give an introduction to object-oriented programming in general, and the object methodologies of C++ and Obliq in particular.

  21. Steve Freeman, Partial Revelation and Modula-3, Dr. Dobb's Journal, 20(10):36-42, October, 1995.

    -- Describes how Modula-3's partial revelations promote encapsulation and code reuse. The article is one of five on "object-oriented programming" contained in the same issue (the other four languages are C++, Ada 95, S, and Cobol '97).

  22. David Goldberg, The Design of Floating-Point Data Types, ACM Letters on Programming Languages and Systems (LOPLAS), 1(2):138--151, June 1992.

    -- Describes the Modula-3 treatment of floating-point values.

  23. Sam Harbison, Modula-3 Byte, 15(12):385--392, November, 1990.

    -- A survey article.

  24. Sam Harbison, Safe Programming with Modula-3, Dr. Dobb's Journal, 17(10):88-96, October, 1992.

    -- A survey article.

  25. Samuel P. Harbison, Modula-3, Prentice Hall, ISBN 0-13-596396-6, 1992.

    -- A complete Modula-3 textbook covering the full language, with examples and exercises. Includes a style manual and a user's guide for SRC Modula-3.

  26. Ernst A. Heinz, Modula-3*: An efficiently compilable extension of Modula-3 for problem-oriented explicitly parallel programming, Proceedings of the Joint Symposium on Parallel Processing 1993, Pages 269--276, May 17--19, 1993, Tokyo, Japan.

    Available from i41s10.ira.uka.de [129.13.13.110] by anonymous ftp in directory pub/m3s as jspp93.ps or jspp93.ps.gz.

  27. Ernst A. Heinz, Sequential and parallel exception handling in Modula-3*: A unifying semantics specification, Advances in Modular Languages: Proceedings of the Joint Modular Languages Conference, P. Schulthess (editor), Pages 31--49, September 28--30, 1994, Ulm, Germany.

    Available from Universitatsverlag Ulm GmbH or from i41s10.ira.uka.de [129.13.13.110] by anonymous ftp in directory pub/m3s as jmlc94.ps or jmlc94.ps.gz.

  28. Allan Heydon and Greg Nelson, The Juno-2 Constraint-Based Drawing Editor, Research Report 131a, Systems Research Center, Digital Equipment Corporation, Palo Alto.

    -- This report describes Juno-2, a constriant-based drawing editor implemented in Modula-3. For more information, see the Juno-2 Home Page.

    It's available via anonymous FTP from gatekeeper.dec.com in pub/DEC/SRC/research-reports/SRC-131a.ps.Z.

  29. C.A.R. Hoare, Monitors: An operating system structuring concept, Communications of the ACM, 17(10), October 1974.

  30. Jim Horning, Bill Kalsow, Paul McJones, Greg Nelson, Some Useful Modula-3 Interfaces, Research Report 113, Systems Research Center, Digital Equipment Corporation, Palo Alto, December, 1993.

    -- A description of the core interfaces in SRC Modula-3. An essential reference for every Modula-3 programmer!

    It's available via anonymous FTP from gatekeeper.dec.com in pub/DEC/SRC/research-reports/SRC-113.ps.Z.

  31. Peter Klein, Designing Software with Modula-3, Technical Report 94-16, Department of Computer Science III, Aachen University of Technology.

    It's available via anonymous FTP from ftp.informatik.rwth-aachen.de in /pub/reports/1994/94-16.ps.gz.

  32. Butler W. Lampson and David D. Redell, Experience with processes and monitors in Mesa, Communications of the ACM, 23(2), February 1980.

  33. Mark S. Manasse and Greg Nelson, Trestle Reference Manual, Research Report 68, Systems Research Center, Digital Equipment Corporation, Palo Alto, December, 1991.

    -- This report is the working definition of the Trestle toolkit for doing graphics in Modula-3.

  34. Mark S. Manasse and Greg Nelson, Trestle Tutorial, Research Report 69, Systems Research Center, Digital Equipment Corporation, Palo Alto, May, 1992.

    -- This report is a tutorial introduction to the Trestle toolkit.

  35. Paul McJones and Garret Swart, Evolving the UNIX system interface to support multi-threaded programs, Proceedings of the Winter 1989 USENEIX Conference, February 1989.

  36. Greg Nelson (editor), System Programming with Modula-3, Prentice Hall Series in Innovative Technology, ISBN 0-13-590464-1, L.C. QA76.66.S87, 1991.

    -- The definitive language reference. Includes the language reference manual and papers on the I/O library, threads, and the Trestle window system." Also known as SPwM3.

    Here is its table of contents:

    1. Introduction
    2. Language Definition
    3. Standard Interfaces
    4. An Introduction to Programming with Threads
    5. Thread Synchronization: A Formal Specification
    6. I/O Streams: Abstract Types, Real Programs
    7. Trestle Window System Tutorial
    8. How the Language Got its Spots

    These online bookstores claim to carry SPwM3.

  37. Paul Rovner, Extending Modula-2 to build large, integrated systems, IEEE Software, 3(6), November 1986.

  38. Robert Sedgewick, Algorithms in Modula-3, Addison-Wesley, ISBN 0-201-53351-0, L.C. QA76.73.M63S43, 1993.

    -- Sedgewick's classic text on algorithms. The examples are in Modula-3.

  39. Modula-3 Reference and Tutorial.

    -- An on-line reference and tutorial, available in three formats: HTML, Texinfo source, and GNU Info files.

    All three formats are available as a gzipped tar file as well.

  40. Trestle by Example.

    -- An on-line introduction to the Trestle window system

  41. Geoff Wyant, Introducing Modula-3, Linux Journal, December 1994.

    It's available via anonymous FTP from ftp.gte.com in /pub/m3/linux-journal.html.


You can order SRC Research Reports and videotapes on-line through the World-Wide Web. All reports and videotapes are free.

You can also order reports and videos by contacting:

SRC Report Distribution
Digital Equipment Corporation
130 Lytton Avenue
Palo Alto, CA 94301-1044

src-report@src.dec.com


[Modula-3 home page]

m3-request@src.dec.com
Last modified on Tue Sep 26 14:25:57 PDT 1995 by heydon
     modified on Mon Dec 19 10:23:41 PST 1994 by kalsow
     modified on Wed Feb 12 12:48:44 PST 1992 by muller