So have can we correct this?
1. Put the draft specification for the ISO Modula-2 library standard
on the net. NOW! I have been following this conference for a year,
and have not seen any mention of where to get it. (pardon me if I
have overlooked it, but then I am certainly not the only one).
2. Somebody must release / maintain a useable implementation that
is written in M2 (of course), transportable across platforms,
and that is available for free or nearly so. Those most
close to do that would in my opinion be the compiler companies.
At least they are the ones that will benefit in the end from a
healthy and growing Modula-2 community.
3. The compiler companies must of course rewrite the libraries
they bundle with their compilers - but that's what standards
is all about, isn't it? One of them (represented by Guenter Dotzel)
seems to be doing that now, but also seems to think that having a
"standard" library is an asset that must be guarded and
kept as a secret (sorry Guenter, but your msg 3333 really was
off target, especially the last part).
It is almost pathetic how the Modula-2 community does wrong what
the C camp did right, especially the lack of standards, and having
2 new diverging incompatible languages "fixing" the flaws of Modula-2.
Oh well, maybe I will just convert to Modula-3 or Oberon one of these days.
torbjorn.
Any ideas ?
Good HEalth
Changhao
I purchased a copy of the "Third Working Draft Modula-2 Standard". All 300+
pages of it. I would assume that there's a newer revision floating around
by now (and I can't find the address of the fellow I ordered it from, but
I'll keep looking). However, for all of it's detail, I'm still not so sure
that one couldn't just live reasonably well with what Wirth set out in
PIM2. Besides, I *think* there might be a copyright problem that would
prevent the draft from being distributed over the net (my copy is
copyrighted 1989 by the British Standards Institute). However, I would
suspect that some hardy soul could type in the def. module descriptions
(don't look at me... I have day job! :)
>2. Somebody must release / maintain a useable implementation that
>is written in M2 (of course), transportable across platforms,
>and that is available for free or nearly so. Those most
>close to do that would in my opinion be the compiler companies.
>At least they are the ones that will benefit in the end from a
>healthy and growing Modula-2 community.
I would disagree. Not with your optimism, but because 15+ years in the
computer biz has taught me that commercial concerns tend to be
notoriously short-sighted. That, among other factors, would make it
unlikely (IMHO) that a commercial compiler house is going to invest
a lot of resources into a product that _might_ possibly generate some
interest eventually - eg. if the market doesn't already exist, the
biz types have a hard time justifying the effort. On the other hand,
the smaller outfits might be more inspiration oriented, but they can't
afford to give anything away (all too often they have to charge an arm
and a leg just to keep the rent paid and lights on with only a trickle
of sales).
I would personally be more inclined to support a grass-roots effort to
create a Modula-2 compiler package along the lines of gcc.
A cooperative effort would seem to be the only rational way to go.
>3. The compiler companies must of course rewrite the libraries
>they bundle with their compilers - but that's what standards
>is all about, isn't it? One of them (represented by Guenter Dotzel)
>seems to be doing that now, but also seems to think that having a
>"standard" library is an asset that must be guarded and
>kept as a secret (sorry Guenter, but your msg 3333 really was
>off target, especially the last part).
>
>It is almost pathetic how the Modula-2 community does wrong what
>the C camp did right, especially the lack of standards, and having
>2 new diverging incompatible languages "fixing" the flaws of Modula-2.
>Oh well, maybe I will just convert to Modula-3 or Oberon one of these days.
I'm still at something of a loss to understand this myself. However vague
one might find Wirth's PIM2, most, if not all, of the information needed
to implement a usable collection of standard modules is there. Whatever
else one needed or wanted could be added to the core library (eg. sets,
and so on). As for flaws, well... I would refer the flaw-minded to the
Lumos-2 operating system. Correct me if I'm wrong, but it seems that plain
ol' Modula-2 does rather nicely for building a multi-tasking operating
system, even without the ISO libraries.
>torbjorn.
Just as an afterthought, one of my copies of PIM2 has an insert from Springer-
Verlag which mentions compilers for the PC, Apple Lisa (!), and a couple of
other machines. Has anyone ever purchased and played with one of these?
-John
--
| John M. Hughes | "...unfolding in consciousness at the |
| datalog.com!moondog!jmh | deliberate speed of pondering." - Daniel Dennet |
| jmh%coy...@noao.edu |--------------------------------------------------|
| jmh%moo...@datalog.com | P.O.Box 43305 Tucson AZ 85733 |
One thing to remember is that Wirth is a researcher in the field
of computer languages. He would not be doing his job if he
only kept making fixes to his old languages and stabilizing them
instead of designing new ones to test new concepts.
--
Erkki Ruohtula / Nokia Telecommunications
e...@tele.nokia.fi / P.O. Box 33 SF-02601 Espoo, Finland
(My private opinions, of course.)
Good. Anybody from BSI out there?
Would you consider relaxing your copyright, something aka gnu?
(I suppose you don't get much of an income anyway from selling standards?)
(And the document IS machine readable, of course?)
|> I would personally be more inclined to support a grass-roots effort to
|> create a Modula-2 compiler package along the lines of gcc.
|> A cooperative effort would seem to be the only rational way to go.
Even better. How much can we steal - borrow - get from pd. sources?
|> and so on). As for flaws, well... I would refer the flaw-minded to the
|> Lumos-2 operating system. Correct me if I'm wrong, but it seems that plain
|> ol' Modula-2 does rather nicely for building a multi-tasking operating
|> system, even without the ISO libraries.
Sure. What I meant was that having a standards in the works for 3-4 years
without getting it out to the masses maybe does more disservice to the
language than just letting it evolve. The standard does not have to be perfect,
why, even standards change now and then.
As to Modula-3 and Oberon(-2?), my reactions are mixed. As research projects,
one must acknowledge their usefulness. But as alternatives to Modula-2?
torbjorn.
Whatever happened to GNU Modula-2? I recall seeing a posting about
a year ago that the front-end was pretty solid, and that they were
starting to work on gluing it together with gcc's code generator for
a back end, but have not heard a word since. Surely the people who
are (were?) working on the GNU M2 project read this group.
Also, there is the GMD Compiler Toolkit, which includes definitions
for scanners and grammers for parsers for both Modula-2 and Oberon.
They also have tools for generating back ends and code generators,
including example specs for code generators for MC68020 and IBM370.
I find it hard to believe that noone (WILLING TO MAKE THEIR WORK
AVAILABLE TO THE PUBLIC) has yet managed to stitch together a M2
compiler from that.
Finally there is the DECWRL compiler for MIPS, which is freely
available with source code. It could be a starting point, but
it would probably be a big project to stitch a portable code
generator onto it.
Also, just recently I saw a free Ada interpreter, maybe this would
be a good starting point for an ISO-M2 implementation. :-)
--
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Dennis Brueni bru...@cstheory.cs.vt.edu "Envision \eqv n^{vision}."
The GNU Modula-2 front-end was started in my group here (The University of
Buffalo in New York) a while back with much support of Olsen & Associates of
Zurich who saw the need for a publically available compiler. After a great
start (and middle), local University politics got in the way and progress
was stalled. We are currently working on arrangements that would eliminate
the politics and allow the project to pick up full-time (instead of part-
time as before). We should know more in a week, but assuming these plans come
through, GNU Modula-2 will be available by September. Otherwise, it may not
get done at all. I'll keep you all up to date.
Devon
I dunno about "stealing"... BUT, there is enough stuff floating around to
build a compiler. It's just that I've never seen a coherent package that's
all ready to make and run. A grammer definition here, a code generator
there, some utilities somewhere else. Lots of loose nuts and bolts. To
assemble it all into a unified package along the lines of gcc will take
some significant effort (IMHO).
It seems that just recently I read something around here that referred to
the GNU M2, but, to be honest with you, I ignored it. I tend to avoid the
GNU stuff - not because it's bad in any way, but simply because what I've
encountered (a) is way too large (IMO), and (b) is based on the assumption
that no one runs anything less that a 386-based PC, a Sun, or a VAX. If
you have a nice big system, GNU is great. But there are still a LOT of
"small" machines out there which get excluded. 80% of my income comes from
software that will run on things as obsolete as a stock PC, a Tandy 16B
running the first port of XENIX (Unix V7), PDP-11 machines (yes, there
are still quite a few 11's still grinding away), and other "ancient"
machines. If I'm wrong about this, then someone please enlighten me, but
I don't think I am...
>
>Also, there is the GMD Compiler Toolkit, which includes definitions
>for scanners and grammers for parsers for both Modula-2 and Oberon.
>They also have tools for generating back ends and code generators,
>including example specs for code generators for MC68020 and IBM370.
>I find it hard to believe that noone (WILLING TO MAKE THEIR WORK
>AVAILABLE TO THE PUBLIC) has yet managed to stitch together a M2
>compiler from that.
All I've ever seen of this system is the ads. Does anyone have some
direct experience with it? I'd like to hear more...
>
>Finally there is the DECWRL compiler for MIPS, which is freely
>available with source code. It could be a starting point, but
>it would probably be a big project to stitch a portable code
>generator onto it.
I have this package. Porting it would not be impossible, but it would
definately fit the criteria of "non-trivial". Attaching a portable code
generator to it would be an interesting project.
>
>Also, just recently I saw a free Ada interpreter, maybe this would
>be a good starting point for an ISO-M2 implementation. :-)
If it's a sub-set Ada, the required changes might be trivial... :-)
>--
>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>Dennis Brueni bru...@cstheory.cs.vt.edu "Envision \eqv n^{vision}."
I think the assumption is more like the future is with 32 bit (at least)
machines and any major efforts to support archaic machines is a waste of
time and not in the best interest of the technology.
Devon
Well, I won't dispute that the technology is progressing at a rapid rate,
but...
Try telling that to a client who owns 6 XT vintage PC's and an old Charles
Rivers UNOS machine. Unless one is willing to program for the reality of
what's still out there (and will be out there for some time to come), then
one had better either have a job where it doesn't matter or be prepared to go
hungry.
The commercial software industry is, for the most part, sensitive to this.
Most PC stuff will run on anything from a vanilla PC on, and more often
than not DOS support goes back at least to v2.1. When I grouse about the
GNU stuff, I do so mainly because I'd *REALLY* like to use something like
gcc for more projects without bumping into "gotta have a 386" restrictions.
That's why I would prefer a Modula-2 compiler that at least had a command
line switch to throw when one wanted 386 instructions included. Perhaps
some of the commercial stuff already does this (I haven't looked at M-2
compilers on the market in a long time), but if I wrote one, it would be
a high priority in the design specs.
I like to eat. :-)
-John
Well, there's the difference. You're working in the commercial environment
where you must deal with the wants/needs of others. The GNU project is a
different beast. It's made up of (mostly) volunteers. People who already
have an income and are just trying to make the world a better place. These
people can afford to have higher standards and require modern hardware if
you want to use their products. If the fact that there are a number of
people out there with outdated hardware helps put bread on your table then
great. But I think you have to also appreciate the idealistic world that
GNU is striving to create. Because they are of no use to you does not imply
that they are short-sighted in any way.
Devon
I applaud them, truly. I think that the GNU Copyleft "copyright" has done
a tremendous amount to help foster an new openess in software development.
I just can't get over this feeling that I'm watching a bunch of people
try for a mad dash to the future while firmly resolving to forget the past.
But, as you rightly point out, if they wish to deal only with the latest
in computing technology then they have every right to do so.
I'm glad that they're there. I look forward to the day when I can actually
put some of those excellent tools to use in a production environment.
>If the fact that there are a number of
>people out there with outdated hardware helps put bread on your table then
>great.
I would be so bold as to estimate that 70% of all small businesses that
use computers have what you refer to as "outdated hardware". Considering
that over half this nation's GNP is generated by small business, that
could represent a sizeable amount of antique machines still chugging and
grinding away.
>But I think you have to also appreciate the idealistic world that
>GNU is striving to create.
Oh, but I do. I just can't convince very many clients that they need to
toss their tried-and-true "outdated" hardware in favor of 486, 33Mhz PC's
with SVGA displays all running Sys V or some such with full NFS. It's a
nice fantasy, though.
> Because they are of no use to you does not imply
>that they are short-sighted in any way.
>
>Devon
Be that as it may, I'd STILL like to have a Modula-2 compiler that could
crank out code for "outdated" machines (bet you thought this thread would
never get back on track, didn't you? :)
Even if we do not actively try to accomodate small machines, we will
probably produce a better standard if we make the language machine
architecture independent.
Tom Reid
Virginia Tech
re...@vtopus.cs.vt.edu