Modula-3 Annotated Bibliography

Here is a bibliography of books, papers and articles related to Modula-3. A more concise bibliography organized by topic is also available.

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

    This report describes a theoretical treatment of the semantics of objects.

  2. Spencer Allain and Farshad Nayeri, Teaching Computer Science with Modula-3, Threads: A Modula-3 Newsletter, Issue 2, Fall 1996.

    This article describes the advantages of using a safe programming language like Modula-3 in the instruction of computer science. It also lists some of the schools that have used Modula-3 as an instructional language, and summarizes their experiences.

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

    This report describes an algorithm used as the basis for SRC Modula-3 garbage collector.

  4. 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.

    Presents a formal specification of the Threads synchronization primitives used in the Modula-2+ programming language. These primitives were quite similar to the ones defined in Modula-3. A revised version of this paper also appears as Chapter 5 of Systems Programming with Modula-3.

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

    A highly-recommended guide to effectively writing multi-threaded programs. It uses the Modula-2+ threads library for the examples, but these are quite similar to the ones used in Modula-3. A revised version also appears as Chapter 4 of Systems Programming with Modula-3.

  6. 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.

    This report describes a fault-tolerant and efficient garbage collection algorithm for distributed systems. It is the algorithm used to garbage collect Network Objects.

  7. 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 network 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.

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

  9. Laszlo Boeszoermenyi, A Comparison of Modula-3 and Oberon-2 (extended version), Structured Programming, Springer-Verlag, 1993. Pgs 15-22.

  10. Laszlo Boeszoermenyi and Carsten Weich, Programming with Modula-3: An Introduction to Programming with Style, Springer-Verlag, ISBN 3-540-57912-5 (English version), ISBN 3-540-57911-7 (German version), 1995. 577 pgs, including index.

    This book is an introductory programming text that uses Modula-3 for its examples. The authors say, "The main concern of the book is to give a clean and comprehensive introduction to programming for beginners of a computer science study. We start with more traditional programming concepts and move toward advanced topics such as object-oriented programming, parallel & concurrent programming, exception handling, and persistent data techniques. The book also presents a large number of complete examples written in Modula-3."

  11. Laszlo Boeszoermenyi and Carsten Weich, Modula-3 in Academia: University of Klagenfurt, Austria, Threads: A Modula-3 Newsletter, Issue 1, Fall 1995.

    This article describes the teaching and research efforts centered around Modula-3 at the University of Klagenfurt in Austria.

  12. 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.

  13. 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.

  14. 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 appeared in Visual Languages '91, October 1991.

    This report describes Zeus, an algorithm animation system written in Modula-3.

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

    This report describes the algorithm animations produced during SRC's first algorithm animation festival. The algorithm animation systems were developed using the Zeus algorithm animation system.

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

    This report describes the algorithm animations produced during SRC's second algorithm animation festival. The algorithm animation systems were developed using the Zeus algorithm animation system.

  17. 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 also available in the vbtkit archive of the SRC Modula-3 distribution.

  18. 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.research.compaq.com in pub/DEC/Modula-3/contrib/formsvbt.25Mar93.ps.Z and pub/DEC/Modula-3/contrib/formsvbt.AppC.26Mar93.ps.Z.

  19. 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.

    This report 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. A revised version of this report also appears as Chapter 6 of Systems Programming with Modula-3.

  20. 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 report contains the original definition of the language, superseded by Research Report 52.

  21. 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.

  22. 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 Modula-3 language. The complete language definition, Chapter 2 of Systems Programming with Modula-3, is also available on-line.

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

    This article defines the Modula-3 programming language; it is identical to Chapters 2 and 3 of SPwM3. A more up-to-date on-line version is also available.

  24. 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 developing 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.

  25. Amer Diwan, The Whole Program Optimizer, Threads: A Modula-3 Newsletter, Issue 1, Fall 1995.

    This article motivates and describes an optimizer for Modula-3 programs based on whole-program analysis. An optimizer that looks at an entire program can do better than one that uses only the information imported when compiling a single module. Preliminary results are promising: on benchmark programs, up to 50% of method invocations can be converted to direct calls. The optimizer is itself written in Modula-3.

  26. Mary Fernandez, Simple and Effective Link-time Optimization of Modula-3 Programs, SIGPLAN '95, Conference on Programming Language Design and Implementation (PLDI), June, 1995, pgs. 103-115.

    This paper shows how the overhead introduced by Modula-3's opaque types can be reduced at link time. The optimizations described in the paper are shown to be effective: they reduce the total number of instructions by up to 14% and convert as many as 79% of indirect calls to direct calls.

  27. Mary Fernandez, A Retargetable, Optimizing Linker, PhD Thesis, Department of Computer Science, Princeton University, January, 1996.

    This thesis describes mld, a retargetable, optimizing linker, for the MIPS, SPARC, and Intel 486 architectures. The linker optimizes away some of the costs of late binding. In particular, mld's optimizations permit efficient implementation of Modula-3's module-encapsulation and data-abstraction features. The thesis presents the results of applying mld's simple optimization techniques to several Modula-3 programs and reports their execution times on the MIPS and Intel 486 architectures.

  28. Mary Fernandez, Link-Time Optimization for Modula-3, Threads: A Modula-3 Newsletter, Issue 2, Fall 1996.

    This article summarizes the author's work on mld, a link-time optimizer for Modula-3. For even more information, see her PLDI paper or her Ph.D. thesis.

  29. Marc E. Fiuczynski, Wilson C. Hsieh, Emin Gun Sirer, Przemyslaw Pardyak, and Brian N. Bershad, Low-Level Systems Programming with Modula-3, Threads: A Modula-3 Newsletter, Issue 3, Fall 1997.

    The SPIN group at the University of Washington has been using Modula-3 since 1995 as both the kernel and extension language for the SPIN operating system. In this article, they describe the set of additions they have made to extend Modula-3's support for low-level systems programming.

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

    This article 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).

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

    This article describes the Modula-3 treatment of floating-point values.

  32. Markus K. Gröner, I. Utku Moral, Concurrent Breadth-First Search using Modula-3.

    This page describes the authors' experience installing Modula-3 on a PC and using the language to implement a concurrent breadth-first search algorithm. The authors were trying to install M3forDOS, an implementation of Modula-3 that runs on DOS PC's. They found this installation to be quite difficult. They eventually ended up using a version of SRC Modula-3 that had already been installed on a Unix box at their site.

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

    This article is a survey of the Modula-3 language. It gives a brief history of the language and describes the language's major features, including modules, exceptions, objects, threads and other support for concurrent programming, safety, and garbage collection. It also discusses the basis for some of the more contentious language design decisions.

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

    This article is a survey of the Modula-3 language.

  35. 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.

    The first edition of the book contains many typos. A list of errata is available on-line for anonymous FTP (in TeX, compressed PostScript, or DVI format) from gatekeeper.research.compaq.com in the directory pub/DEC/Modula-3/errata/.

  36. 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.

  37. 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.

  38. Robert Henderson and Benjamin Zorn, A Comparison of Object-Oriented Programming in Four Modern Languages, Technical Report CU-CS-641-93, Department of Computer Science, University of Colorado, Boulder, Colorado, 1993.

    The paper evaluates Oberon, Modula-3, Sather, and Self in the context of object-oriented programming. While each of these programming languages provide support for classes with inheritance, dynamic dispatch, code reuse, and information hiding, they do so in very different ways and with varying levels of efficiency and simplicity. A single application was coded in each language and the experience gained forms the foundation on which the subjective critique is based. By comparing the actual run-times of the various implementations it is also possible to present an objective analysis of the efficiency of the languages. Furthermore, by coding the application using both explicit dynamic dispatch and static method binding, it is possible to evaluate the cost of dynamic dispatch in each language. The application was also coded in C++, thereby providing a well-known baseline against which the execution times can be compared.

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

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

  40. Allan Heydon, Implementing Juno-2: The User Interface, Threads: A Modula-3 Newsletter, Issue 1, Fall 1995.

    Juno-2 is a constraint-based drawing program. This article describes how Modula-3's FormsVBT, VBTkit, and Trestle libraries were used to implement the Juno-2 user interface.

  41. Allan Heydon and Greg Nelson, DblBufferVBT: A Reusable Software Double Buffer, Threads: A Modula-3 Newsletter, Issue 2, Fall 1996.

    This article describes the design and implementation of DblBufferVBT.T, a software double-buffer that we used in the Juno-2 constraint-based drawing editor to produce smooth graphics and animations.

  42. Allan Heydon, An Object Oriented Implementation of Unification Closure, Threads: A Modula-3 Newsletter, Issue 3, Fall 1997.

    This article describes the design of three object types used in the Juno-2 constraint solver. It illustrates the use of objects, subclassing, method overriding, and partial revelation in Modula-3. In particular, it describes the implementation of the unification closure algorithm used to solve pair constraints in the constraint solver.

  43. Allan Heydon, Stabletable: An Example Client of the SmallDB Interface, September, 1996.

    The sources of an example use of the SmallDB interface. In particular, the example defines a generic interface called "StableTbl". A "StableTbl.T" is like a "Table.Default", except that all updates to the table are written to stable storage for reliability. To write the table's data-structures to disk, the library uses SRC Modula-3's Pickle interface. It also includes an example of a quake template that defines procedures for instantiating generic data types. A gzipped tar archive of the sources and web page is also available.

  44. Allan Heydon, SortedTable Example, November, 1997.

    The sources of an example demonstrating the use of the SortedTable generic interface. It includes a test program that instantiates the generic SortedTable with a custom domain type named IntIntvl and REAL for the range type. An IntIntvl.T is simply an integer interval. A gzipped tar archive of the sources and web page is also available.

  45. Allan Heydon, Alternative Implementations of the SortedTable Interface (PDF, PostScript), Draft, January 26, 1998.

    This draft paper describes three Modula-3 implementations of the generic SortedTable interface, and compares their time and space performance. The three algorithms compared are the default SortedTable.Default implementation bundled with the Modula-3 libraries, a red-black tree implementation, and a skip list implementation. The complete sources for the two non-standard implementations are available in a tar archive.

  46. Allan Heydon, A UDP Interface, Draft, December 11, 1998.

    This draft paper describes a Modula-3 interface for the User Datagram Protocol (UDP). The Modula-3 sources of an implementation that works on all POSIX platforms is also available as a gzipped tar archive. Thanks to Jonathan Gutherie for writing the first implementation on which this one was based.

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

  48. 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.

    This report is a description of the SRC standard Modula-3 library interfaces. It's an essential reference for every Modula-3 programmer!

  49. Wilson C. Hsieh, Marc E. Fiuczynski, Charles Garrett, Stefan Savage, David Becker, and Brian N. Bershad, Language Support for Extensible Operating Systems, November, 1996.

    Describes the extensions made by the SPIN group at the University of Washington to the Modula-3 language for use in their SPIN extensible operating system.

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

  51. Peter Klein, Modula-3 in Academia: Department of Computer Science III, Aachen University of Technology, Germany, Threads: A Modula-3 Newsletter, Issue 3, Fall 1997.

    Aachen University of Technology, in Aachen, Germany has been using Modula-3 successfully for a number of academic and research projects since 1993. Peter Klein, a member of the CS Department III, reports on some of their experiences.

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

  53. 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.

  54. 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.

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

  56. Marc Najork, Obliq-3D Tutorial and Reference Manual, Research Report 129, Systems Research Center, Digital Equipment Corporation, Palo Alto, December, 1994, 110 pages.

    This report describes Obliq-3D, an interpreted language based on the Anim3D library for building 3D animations quickly and easily.

  57. Farshad Nayeri, SRC Modula-3: An Elegant, Free, Open, Mature, High-Quality, Clean & Modest Programming Language, System, Library & Tool for Building Robust, Large-Scale, Multi-Threaded & Distributed Programs, March, 1996.

    A happy user promotes SRC Modula-3. The article begins:

    Despite its length and buzzword density, the subtitle above is one the shortest phrases that characterize the virtues of SRC Modula-3. The language designers' stated goal of "consolidation, not innovation" is a modest understatement for their wise, elegant, and inventive combination of features that are greatly needed by the modern programmer.

  58. Farshad Nayeri, Net Balance: A Network Objects Example, March, 1996.

    The sources of a simple client and server that use network objects. A gzipped tar archive of the sources and web page is also available.

  59. Farshad Nayeri, Reactor Goes On-Line!, Threads: A Modula-3 Newsletter, Issue 2, Fall 1996.

    This article describes Reactor, a Modula-3 integrated development environment (IDE) that is now freely available.

  60. Farshad Nayeri and Blair MacIntyre, An Object Oriented Implementation of Unification Closure, Threads: A Modula-3 Newsletter, Issue 3, Fall 1997.

    JVM, Critical Mass's implementation of the Java Virtual Machine, is written entirely in Modula-3. This article describe the JVM was used to build an industrial, Java-extensible serial port controller in Modula-3.

  61. 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.

    This book is the definitive language reference. It includes the language reference manual and papers on the I/O library, threads, and the Trestle window system. It is 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.

  62. Greg Nelson, Initialization of Object Types, Threads: A Modula-3 Newsletter, Issue 1, Fall 1995.

    This article describes the rationale for the way object types are initialized in Modula-3. Modula-3 doesn't have type constructors, but you can specify default values for object fields in the type definition. The article also describes the init method convention.

  63. Greg Nelson, Why Checked Run-Time Errors are Not Exceptions, Threads: A Modula-3 Newsletter, Issue 2, Fall 1996.

    This brief article argues why checked run-time errors, such as indexing off the end of array, are not mapped to exceptions in Modula-3. How checked run-time errors are handled is implementation-dependent.

  64. Paul Rovner, Roy Levin, and John Wick, On Extending Modula-2 for Building Large, Integrated Systems, Research Report 3, Systems Research Center, Digital Equipment Corporation, Palo Alto, January, 1985.

    Before Modula-3 there was Modula-2+. This report describes how the authors extended Wirth's Modula-2 programming language to include support for many language features that have become commonplace in modern programming languages, including support for threads, synchronization primitives, exceptions, safe memory management, and garbage collection. All of these features lived on in Modula-3.

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

    A journal version of SRC Research Report 3.

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

    Sedgewick's classic text on basic algorithms and data structures. The examples in this edition are written in Modula-3.

  67. Stephen Schaub, 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.

  68. Emin Gün Sirer, Stefan Savage, Przemyslaw Pardyak, Greg P. DeFouw, and Brian Bershad, Writing an Operating System with Modula-3, November, 1995.

    Describes the experiences of the SPIN group at the University of Washington using Modula-3 to build a high performance extensible operating system. Debunks some of the myths surrounding Modula-3 by arguing that the SRC reference implementation introduces inefficiencies that are not imposed by the Modula-3 language itself.

  69. Lauren Schmitt, Photon: An Environment for Building Distributed Applications, Threads: A Modula-3 Newsletter, Issue 1, Fall 1995.

    This brief article announces Photon, a commercially supported development environment based on SRC Modula-3. The first official release is scheduled for the first quarter of 1996. The first target platform is Linux PC's. Photon is a product of Critical Mass, Inc..

  70. Ryan Stansifer, Trestle by Example, October, 1994.

    An on-line introduction to the Trestle window system. This tutorial was written to conform with SRC Modula-3 version 2.11. Some of the interfaces called in this tutorial are obsolete. A gzip'ed tar archive of the entire tutorial is available.

  71. Carsten Whimster Using Modula-3 Under OS/2, Electronic Development Magazine, OS/2 edition (EDM/2), March, 1996.

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

    A good summary article on the Modula-3 programming language, libraries, and system.


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


Copyright © 1992, 1996, Digital Equipment Corporation. All rights reserved. See license for full description.