powell@decwrl.UUCP (11/13/83)
From: powell (Mike Powell)
Does anyone have any opinions for what ought (or ought not) to be included in
a standard set of library routines for Modula-2? The system distributed by
Cambridge has a total of 80 definition files in its library. I don't know how
many of these are for users and how many are just there to implement the rest
of the runtime library.
It seems there are (at least) two dangers in not having a consensus on what
should be in the library. One is that programs will grow to depend on a large
number of modules that are neither portable nor implemented be everyone (e.g.,
consider the experience of Lisp systems). Another is that programmers will not
know which things are fair game to depend on, use, or modify, and which are not
(e.g., consider the experience with Smalltalk).
For starters, I claim the following should always exist:
Module Functions
storage allocate and deallocate
io formatted read and write, unformatted read and write
standard files for input and output
math sin, cos, exp, sqrt
string compare, assign, append for null-terminated strings
parameters get number and values of program parameters
Ignoring details for the moment, the questions are:
Are there more things that should be added?
Are any of the above inappropriate?
By the way, is anyone else out there actually using Modula-2 for substantial
(over 5000 lines) software development? I'd be interested in hearing about
your experiences as well as what standard modules your system supports.
Michael L. Powell
Western Research Lab
Digital Equipment Corporation
Los Altos, California
{ucbvax,decvax}!decwrl!powell