Next: Conclusion
Up: Discussions
Previous: Runtime Performance:
There are several reflective systems for distributed programming such
as AL-1/D and CodA, but few systems pay strong attention to the
overhead of reflection.
AL-1/D[12] is a reflective language based on
`multi-model reflection framework' (MMRF). It is reported that
performance improvement is achieved by using AL-1/D's meta-level
architecture to implement and control object migration
mechanisms[11]. However, this improvement seems to
be worthwhile over the overhead incurred by reflection in environments
where overhead of remote communication is substantially larger than
the interpretation overhead, such as heterogeneous distributed
computing.
In the CodA meta-level architecture[10], a
meta-object is decomposed into several objects, so that user's
meta-level programs are easily re-used and composed. However,
efficient implementation of such an architecture is not obvious.
Recently, extensible compilers based on the meta-level
architecture--so called compile-time meta-object protocol
(MOP)--have been proposed, especially for parallel/distributed
systems[1,4,13]. Most
language constructs discussed in this paper could also
be implemented with these MOPs. However, they may force different
programming style at the meta-level; since they are compilers,
programmers have to write their extensions as program transformation
rules, in which programmers must distinguish run-time values and
compile-time values.
Next: Conclusion
Up: Discussions
Previous: Runtime Performance:
Matt Hurlbut
1998-07-14