MetaFJig: a meta-circular composition language for Java-like classes

8 years 4 months ago
MetaFJig: a meta-circular composition language for Java-like classes
We propose a Java-like language where class denitions are rst class values, hence new classes can be derived from existing, rather than by a xed mechanism like inheritance, by exploiting the full power of the language on top of a small set of primitive composition operators. Hence, compilation of a class table requires to perform (meta-)reduction steps, by a process that we call compile-time execution. This approach diers from meta-programming techniques provided in mainstream languages since it is meta-circular, hence the programmer does not need to learn new syntax and idioms. Compile-time execution is guaranteed to be sound (not to get stuck) by a lightweight technique, where class composition errors are detected dynamically, and conventional typing errors are detected by interleaving typechecking with meta-reduction steps. This allows a modular approach, that is, compile-time execution is dened, and can be implemented, on top of typechecking and execution of the underlying lan...
Marco Servetto, Elena Zucca
Added 29 Jan 2011
Updated 29 Jan 2011
Type Journal
Year 2010
Authors Marco Servetto, Elena Zucca
Comments (0)