by
Hidehiko Masuhara, Satoshi Matsuoka, Takuo Watanabe and Akinori Yonezawa
Abstract:
Computational reflection is beneficial in concurrent computing in offering a linguistic mechanism for incorporating user-specific policies . New challenges are (1) how to implement them, and (2) how to do so efficiently. We present efficient implementation schemes for object-oriented concurrent reflective languages using our language ABCL/R2 as an example. The schemes include: efficient lazy creation of metaobjects/meta-groups, partial compilation of scripts (methods), dynamic progression, self-reification, and light-weight objects, all appropriately integrated so that the user-level semantics remain consistent with the meta-circular definition so that the full power of reflection is retained, while achieving practical efficiency. ABCL/R2 exhibits two orders of magnitude speed improvement over its predecessor, ABCL/R, and in fact compares favorably to the ABCL/1 compiler and also C + Sun LWP, neither supporting reflection.
Reference:
Object-Oriented Concurrent Reflective Languages can be Implemented Efficiently (Hidehiko Masuhara, Satoshi Matsuoka, Takuo Watanabe and Akinori Yonezawa), In Proceedings of Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA) (OOPSLA'92) (John Pugh, ed.), ACM Press, 1992.
Bibtex Entry:
@inproceedings{masuhara92oopsla,
address = {New York, NY, USA},
publisher = {ACM Press},
location = {Vancouver, British Columbia, Canada},
isbn = {0-201-53372-3},
year = 1992,
booktitle = {Proceedings of Conference on Object-Oriented Programming
Systems, Languages, and Applications {(OOPSLA)} (OOPSLA'92)},
month = oct,
editor = {John Pugh},
author = {Hidehiko Masuhara and Satoshi Matsuoka and
Takuo Watanabe and Akinori Yonezawa},
title = {Object-Oriented Concurrent Reflective Languages can
be Implemented Efficiently},
pages = {127--145},
pdf = {oopsla1992.pdf},
doi = {10.1145/141937.141948},
serialno = {16-6},
acceptanceratio = {31/250 (12%)},
keywords = {ABCL/R},
abstract = {Computational reflection is beneficial in concurrent computing in offering a linguistic mechanism for incorporating user-specific policies . New challenges are (1) how to implement them, and (2) how to do so efficiently. We present efficient implementation schemes for object-oriented concurrent reflective languages using our language ABCL/R2 as an example. The schemes include: efficient lazy creation of metaobjects/meta-groups, partial compilation of scripts (methods), dynamic progression, self-reification, and light-weight objects, all appropriately integrated so that the user-level semantics remain consistent with the meta-circular definition so that the full power of reflection is retained, while achieving practical efficiency. ABCL/R2 exhibits two orders of magnitude speed improvement over its predecessor, ABCL/R, and in fact compares favorably to the ABCL/1 compiler and also C + Sun LWP, neither supporting reflection.}
}