From: Wolfgang J. <wj...@so...> - 2009-08-15 16:13:39
|
Howard Thomson wrote: > > Hi Wolfgang, > > On Friday 14 August 2009, you wrote: > > > > > > The approach to implement the persistence closure etc. > > > may be emphasized as follows: > > > The Eiffel compiler is written in Eiffel. > > > So, why not also implementing the Eiffel runtime system in Eiffel? > > > > > I considered writing the Eiffel GC substantially in Eiffel, and I may > well transliterate much > > of the new GC code into Eiffel at some point, once we have [or I > understand ... !] some means > > of either separately generating library code [with Gobo], or some > means of ensuring that all > > of the GC classes are 'in' the system; actually not too difficult ... > > I think Gobo's ability to inline code needs to be enhanced before it > makes sense to do that. > May it help you to re-use my introspection code? It sees all references on stack, all global references (i.e. values of once functions) and, starting on these references, all references on heap. The debugger uses this for checkpointing. A critical point in the GC case may be to make the things on stack visible. In case of the debugger, making stack variables visible is necessary for printing the variables, using their visibility for checkpointing is a by-product. But additional code is needed (run at most once per routine) to get the addresses. The additional code may be considered too heavy for every days work. -- Dr. Wolfgang Jansen University of Potsdam, Germany Institute of Computer Science Tel: +49 331 / 977 3047 mailto: wj...@so... |