Related articles |
---|
melting ice technology? barbey@lglsun.epfl.ch (1992-07-01) |
Re: melting ice technology? ram@eiffel.com (Raphael Manfredi) (1992-07-02) |
Re: melting ice technology? cliffc@cs.rice.edu (1992-07-06) |
Newsgroups: | comp.compilers |
From: | Raphael Manfredi <ram@eiffel.com> |
Organization: | Interactive Software Engineering, Santa Barbara CA |
Date: | Thu, 2 Jul 1992 23:54:02 GMT |
Keywords: | Eiffel, linker |
References: | 92-07-003 |
Stephane Barbey wrote in comp.compilers:
>What is the "melting ice" compiling technology ? Could someone post any
>info/bibliography on that subject ?
The "melting ice" technology is something we have developped here at ISE
for our Eiffel 3 compiler. Briefly, here is how it works:
The first time an Eiffel system is built, it is "frozen", i.e. the Eiffel
compiler generates C code and then compiles it into a final executable.
Then, when some changes are made to some classes, the compiler "melts" the
changes. That is to say, it incrementally recomputes a "melted" form for
every changed features and inserts them into the compiled executable.
When the program is executed, the Eiffel run-time will call the compiled C
code of all the "frozen" feature, but will call "melted" feature (and
interpret their internal representation) if it is available (i.e. if the
feature changed). Of course, the "melted" feature may also call a "frozen"
feature. This means you get the full speed of the C code and only
interpret the routine which changed. This yields to a very fast edition-
compilation-execution cycle.
Note that I said 'compilation', and I mean it. Just because the produced
code is interpreted does not suppress the huge compilation work
beforehand. Features are re-compiled, but the final form is interpreted
by the program instead of the CPU's micro-code.
I would be surprised if you found any info or bibliography on the "melting
ice" technology, since this is a term which seems to have been invented by
ISE (to the best of my knowledge...). It is our intention (my collegues
from the compiler team and I) to publish a paper once the Eiffel 3
compiler is out.
--
Raphael Manfredi <ram@eiffel.com>
Interactive Software Engineering Inc.
270 Storke Road, Suite #7 / Tel +1 (805) 685-1006 \
Goleta, California 93117, USA \ Fax +1 (805) 685-6869 /
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.