porting self

Eliot Moss moss%ibis at cs.umass.edu
Tue Aug 18 21:29:53 UTC 1992

>>>>> On Tue, 18 Aug 92 13:52:53 PDT, Urs.Hoelzle at Eng.Sun.COM said:

Urs.Hoelzle>    How about using the gcc backend?

Urs.Hoelzle> We have considered that, but it's not as easy as it seems.  One
Urs.Hoelzle> problem is that gcc's backend needs to be taught about garbage
Urs.Hoelzle> collection.  Some people at UMass (Eliot Mass' group) are doing
Urs.Hoelzle> this for Modula-3, but as far as I know it's not working yet (and
Urs.Hoelzle> they have put a lot of effort in it).  The other problem is that
Urs.Hoelzle> gcc might be too slow - in Self, compilation happens at run-time,
Urs.Hoelzle> so you'd like to keep compile pauses in the millisecond area, and
Urs.Hoelzle> I'm not sure if gcc as a traditional batch compiler is up to
Urs.Hoelzle> that.

Actually, it *is* working (gc support in GNU Modula-3, using gcc's back end).
We would be thrilled if some other people tried to use this technology, though
I would say we're probably not so far along that we're ready to release code
to just anybody (still needs some cleanup I think). We would also be pleased
to help someone (say a graduate student at Stanford) get our gc toolkit
(implemented) and mature object space collector (not yet implemented) going
with Self.

As for the speed issue, perhaps if you kept a gcc fork around, designed to
receive methods for compilation on standard input and to deliver the compiled
code to standard output you could get reasonable response. Probably not as
fast as what you have now, but perhaps good enough (especially on a

Regards --						Eliot

		J. Eliot B. Moss, Associate Professor
		Department of Computer Science
		Lederle Graduate Research Center
		University of Massachusetts
		Amherst, MA  01003
		(413) 545-4206, 545-1249 (fax); Moss at cs.umass.edu

More information about the Self-interest mailing list