[net.lang.mod2] Leave Modula-2 Alone

rmarti%indigo@SUN.ARPA (Bob Marti) (03/11/86)

Why can't people just leave Modula-2 alone?  Sure, it may not be entirely
to everybody's liking, but then again, which language is?  In contrast to
its predecessor Pascal which lacked some vital concepts, Modula-2 is a
fairly complete language.  At ETH, for example, the various research groups
developed a (single-user) operating system, windowing software, a
multiple-font what-you-see-is-what-you-get editor, a relational database
manager including an interactive database design tool and a forms-based
database query tool, and a few other goodies.  Like the compiler, linker,
and debugger, all of this software was written completely in Modula-2.
I don't recall that anybody ever really complained about missing features.

I do remember an article in SIGPLAN Notices a couple of years back, however,
where somebody was lamenting the lack of a built-in EVEN function procedure
to complement the built-in ODD function procedure.  Give me a break!!

I agree that exception handling, variable length argument lists and maybe
even a few other things might be nice to have, but -- as has been pointed
out here before -- one of the good things about Modula-2 is its small size.
The virtues of a "small" language with relatively few concepts are:

(1) It is relatively easy to write a compiler for the language.
(2) The compiler can run on a variety of hardware, including small and
    inexpensive micros.
(3) The full language is relatively easy to learn for the average programmer.

All of these things should contribute to the rapid spreading of a programming
language.  Considering that there is no strong marketing force such as
AT&T, the DoD, or IBM behind Modula-2, I think the language has done just
that.  While I don't mind people thinking about what the "next" programming
language might look like, the next important step is to concentrate on
standardizing a really nice set of library modules for Modula-2.

Bob Marti, Sun Microsystems

ARPA: rmarti@sun.arpa
UUCP: ... {decvax, hplabs, ihnp4, seismo, ucbvax}!sun!rmarti