[M3devel] Think we need a new release. C target

Daniel Alejandro Benavides D. dabenavidesd at yahoo.es
Wed Feb 15 23:10:47 CET 2012


Hi all:
think about not only back-ports, the only work usable of a C backend would be optimization for it, though it's hard we could make a case for that, see:
http://www.cs.tufts.edu/~nr/cs257/archive/craig-chambers/millstein-pldi03-draft.ps

I know of one work of C#-like compiler with Modula-3 constructs in lcc:
http://research.microsoft.com/pubs/70004/tr-2003-32.pdf

OK, maybe that would optimize hard Modula-3 programs I like that approach, since it would make a case for old (slower platforms) and of course of Big programs in newer machines.
In the Olivetti Modula-3, the speed of the backend was the main issue of not releasing it.
Thanks in advance


--- El mié, 15/2/12, Jay <jay.krell at cornell.edu> escribió:

De: Jay <jay.krell at cornell.edu>
Asunto: Re: [M3devel] Think we need a new release. C target
Para: "Daniel Alejandro Benavides D." <dabenavidesd at yahoo.es>
CC: "Jay" <jay.krell at cornell.edu>, "Jay K" <jay.krell at cornell.edu>, "Dragiša Durić" <dragisha at m3w.org>, "m3devel" <m3devel at elegosoft.com>
Fecha: miércoles, 15 de febrero, 2012 14:43

No. None of this is the point, if it even makes sense.
The point is to use C as portable target.
If you want to run Obliq in a browser, compile it to JavaScript, possibly via something else, e.g. Java.
JavaScript isn't such a bad language though. The main difference among most languages is amount of static checking. People translate Java to JavaScript partly to get that static checking.
A C target would open up many old and new targets. And help debugging a lot, esp. on systems w/o m3gdb -- there are several.
A Java target and C# target would also be interesting.
 - Jay (phone)
On Feb 15, 2012, at 11:10 AM, "Daniel Alejandro Benavides D." <dabenavidesd at yahoo.es> wrote:

Hi all:
doing by that method do I have compatibility with something else, meaning C? CM JVM? Yes, it achieved it through high compatibility using C language so you could migrate your Java code via CM JVM (without JNI, a kind of nightmare) to Modula-3 and C, now if we generate C, what would be gaining in terms of compatibility, gaining compatibility with those C Compilers, who cares that, just people writing C Code, if they don't or don't want to code in Modula-3, will be attracted by that offer? In CM JVM case it might be interested to migrate to C, but they need a good RT support, they don't need compilers to C. They have many ones already.
Now, if is you the one who want to migrate to C platforms well, Modula-3 can directly interface with C.
I wanted to make clear that my route will be Obliq, since the new real intermediate language becoming
 mainstream is JavaScript, and certainly the dear good M3 friend new that if it not were by one hair Obliq would be become the standard of the web. Now, why would we want to make a non-standard thing a product of our catalog, well, I pass that one into you, what is the main difference between C and Obliq if I tell you that FailSafe-C is project built on a Obliq JVM product?
Please have a look at DDJ about the "The JVM as a Language Farm Club" :
http://app.reg.techweb.com/e/es.aspx?s=2150&e=27044&elq=66547688035b4bc99ab7612af687575

Thanks in advance

--- El mar, 14/2/12, Jay <jay.krell at cornell.edu> escribió:

De: Jay <jay.krell at cornell.edu>
Asunto: Re: [M3devel] Think we need a new release. C target
Para: "Daniel Alejandro Benavides D." <dabenavidesd at yahoo.es>
CC: "Jay K"
 <jay.krell at cornell.edu>, "Dragiša Durić" <dragisha at m3w.org>, "m3devel" <m3devel at elegosoft.com>
Fecha: martes, 14 de febrero, 2012 19:23

You don't need a C standard, you just need to work with a few C compilers. Really not difficult. Also #line directives would be key part of debugging. Also, debugger expression evaluation would use C syntax, and, worse, object model would show through. It might help to produce C++ instead. Anyway, I'm sure it is a good idea. Just have to find lots of time...

 - Jay (phone)
On Feb 14, 2012, at 11:44 AM, "Daniel Alejandro Benavides D." <dabenavidesd at yahoo.es> wrote:

Hi all:
According to this it might be not p 20
ftp://ftp.deas.harvard.edu/techreports/tr-01-05.pdf

In any case will be enough to output C code inside the RT system to provide better maintainability? I believe it isn't but just to try to nicely be compliant with "a standard" that nobody has ever claim as such:
http://www.artikcommunity.biz/showthread.php?t=8224645&page=8&p=34494829#post34494829

Sorry, if I'm being unpolitical, but anyway, you have supported my true passion, good languages.

Thanks in advance and please make any comments you may have

--- El mar, 14/2/12, Dragiša Durić
 <dragisha at m3w.org> escribió:

De: Dragiša Durić <dragisha at m3w.org>
Asunto: Re: [M3devel] Think we
 need a new release. C target
Para: "Jay K" <jay.krell at cornell.edu>
CC: "m3devel" <m3devel at elegosoft.com>
Fecha: martes, 14 de febrero, 2012 06:20

I did not agree with this before… But having met mindset "but we unserrrstand C"+"who will maintain than"+"we can't control that module code"… I agree now :).
With C target we don't have to worry about gcc internal changes and we can shield our customer of horrible non-C nature of product we are selling :).
Question is: Can we pass enough information to object/executable to allow us source level debugging of Modula-3?
On Feb 14, 2012, at 2:21 AM, Jay K wrote:
A C-generating backend should ease installation and integration into distributions and such, since there could be a more "tradtional" Csource.tar.gz...
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20120215/cad18a88/attachment-0002.html>


More information about the M3devel mailing list