[M3devel] ***SPAM*** Re: XML?

Mika Nystrom mika at async.caltech.edu
Fri May 8 20:22:12 CEST 2009


Here's my understanding, and it may be incorrect in places:

I think there were originally two separate implementations of
Modula-3, one from DEC and one from Olivetti (ORL/Palo Alto).

I think they both generated C code.

The DEC one later became a native compiler, both with a native back
end and by modifying gcc.  (So it's not accurate to say that M3
relies on gcc---Jay's work on Windows doesn't use gcc at all.)
That's what you get if you run "cm3".

The Olivetti one moved with Mick Jordan to PARC when ORL closed,
and most of it is still in the tree under "m3tk".  Look in
m3tk/src/target.  There seem to be back ends for C code on i386
(running System V), mips, sparc, sun3, and vax (running BSD Unix).
There's a very brief man page for a program called "m3cbe".

The M3 system has all kinds of hooks for different types of machines,
e.g., pre-OSX Mac and VMS.  Not sure to what extent it ever worked
on those.  There is also a back end for C-code generation on the
Caltech Mosaic-C multicomputer and probably others I'm unaware of.

I think the problem with pulling in things like expat isn't that
"people use it" but that there's a temptation to use it for building
Modula-3 itself.  That's the sort of thing that needs to be guarded
against, I think.  I would suggest putting things that create outside
dependencies in some separate, clearly marked subtree, so that they
can't sneak into the base system.

     Mika



hendrik at topoi.pooq.com writes:
>On Fri, May 08, 2009 at 01:50:06PM +0200, Dragiša Durić wrote:
>> I have it wrapped, but it looks like there is strong resistance in "m3
>> movement" for including anything that can not work on, or assume some C
>> porting work for specific m3 platform.
>
>There is, and it's probably because M3 arose from a strong tradition of 
>self-sufficiency.  Way back then, people were designing systems 
>languages -- languages that could be used to implement an entire system, 
>including its own run-time system.  It means that M3 is a viable 
>language for bootstrapping onto a new machine.
>
>Except, as far as I know, that it still relies on gcc's back end 
>(written in C) for its code generation, and which causes license 
>incompatibilities with the SRC license.
>
>Didn't M3 once generate C code, as Eiffel still does?  And did it 
>generate anything else before those C-generating days?
>
>What was M3 originally written in?  MESA?
>
>-- hendrik
>
>> 
>> On Thu, 2009-05-07 at 19:31 -0700, jay.krell at cornell.edu wrote:
>> > We should probably wrap up something like expat..
>> > 
>> >  - Jay (phone)
>> > 
>> > On May 7, 2009, at 5:02 PM, "Daniel Alejandro Benavides D."
>> > <dabenavidesd at yahoo.es> wrote:
>> > 
>> > 
>> > 
>> > > Hi:
>> > > You can take a  look of the originally pm3 SGML parser that could
>> > > work for your need: cm3/m3-libs/sgml see on
>> > > http://opencm3.net/doc/help/gen_html/sgml/INDEX.html
>> > > 
>> > > It needs Deep copy library: cm3/m3-libs/deepcopy for building see on
>> > > http://opencm3.net/doc/help/gen_html/deepcopy/INDEX.html
>> > > 
>> > > A shorter help of parser from m3doc
>> > > http://cs.wheaton.edu/~cgray/misc/m3/pm3pkg/sgml/src/index.html
>> > > 
>> > > Hope that helps
>> > > 
>> > > --- El jue, 7/5/09, hendrik at topoi.pooq.com <hendrik at topoi.pooq.com>
>> > > escribió:
>> > >         De: hendrik at topoi.pooq.com <hendrik at topoi.pooq.com>
>> > >         Asunto: [M3devel] XML?
>> > >         Para: m3devel at elegosoft.com
>> > >         Fecha: jueves, 7 mayo, 2009 5:01
>> > >         
>> > >         Is there a standard library for Modula 3 that reads and writes
>> > >          XML 
>> > >         files?  With or without DTD definitions?
>> > >         
>> > >         -- hendrik
>> > >         
>> > > 
>> > > 
>> -- 
>> Dragiša Durić <dragisha at m3w.org>
>> 



More information about the M3devel mailing list