Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/646930.710421guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Reflecting Java into Scheme

Published: 19 July 1999 Publication History

Abstract

We describe our experience with SILK, a Scheme dialect written in Java. SILK grazes symbiotically on Java's reflective layer, enriching itself with Java's classes and their behavior. This is done with three procedures. (constructor) and (method) provide access to a specific Java constructor or method respectively. (import) allows the entire behavior of a class to be imported easily. (import) converts Java methods into generic functions that take methods written in Java or Scheme. In return, SILK provides Java applications with an interactive development and debugging environment that can be used to develop graphical applications from the convenience of your web browser. Also, because SILK has introspective access into Java, it can also be used for compile time metaobject scripting. For example, it can generate a new class using an old one as a template.

References

[1]
http://www-swiss.ai.mit.edu/~jaffer/SLIB.html
[2]
Aubrey Jaffer, r4rstest.scm, ftp://ftp-swiss.ai.mit.edu/pub/scm/r4rstest.scm.
[3]
Gregor Kiczales, Tiny CLOS, file://parcftp.xerox.com/pub/mops/tiny/
[4]
Gregor Kiczales and Luis Rodriguez, Efficient method dispatch in PCL, proceedings 1990 ACM Conference on LISP and Functional Programming, Nice, France, June 1990, 99-105.
[5]
Brian Beckman, A scheme for little languages in interactive graphics, Software Practice and Experience, 21, 2, p. 187-208, Feb, 1991.
[6]
A. Berlin and D. Weise, Compiling scientific code using partial evaluation. Technical Report CSL-TR 90-422, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, 1990.
[7]
Clifford Beshers Steven Feiner, Generating efficient virtual worlds for visualization using partial evaluation and dynamic compilation, ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation (PEPM'97), p. 107-115.
[8]
Mike Travers, Skij, IBM alphaWorks archive, http://www.alphaworks.ibm.com/formula/Skij
[9]
Christian Queinnec, JaJa: Scheme in Java, http://wwwspi. lip6.fr/~queinnec/WWW/Jaja.html
[10]
Per Bothner, Kawa the Java-based Scheme System, http://www.cygnus.com/~bothner/kawa.html
[11]
http://www-spi.lip6.fr/~queinnec/Papers/dispatch.ps.gz
[12]
Shih-Kun Huang and Deng-Jyi Chen, Efficient algorithms for method dispatch in object-oriented programming systems, Journal of Object-Oriented Programming, 5(5):43-54, September 1992.
[13]
E. Amiel, O. Gruber, and E. Simon, Optimmizing multi-method dispatch using compressed dispatch tables. In OOPSLA '94, October 1994.
[14]
Jan Vitek and R. Nigel Horspool, Taming message passing: Efficien method lookup for dynamically typed languages. ECOOP '94 - 8th European Conference on Object-Oriented Programming, Bologna (Italy), 1994.
[15]
Weimin Chen and Volker Turau, Multiple-dispatching base on automata, Theory and Practice of Object Systems, 1(1):41-60, 1995.
[16]
http://kaolin.unice.fr/STk/
[17]
J.L. Bentley, More Programming Pearls, Addison-Wesley, Reading, MA, 1988.

Index Terms

  1. Reflecting Java into Scheme
    Index terms have been assigned to the content through auto-classification.

    Comments

    Information & Contributors

    Information

    Published In

    cover image Guide Proceedings
    Reflection '99: Proceedings of the Second International Conference on Meta-Level Architectures and Reflection
    July 1999
    270 pages
    ISBN:3540662804

    Publisher

    Springer-Verlag

    Berlin, Heidelberg

    Publication History

    Published: 19 July 1999

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • 0
      Total Citations
    • 0
      Total Downloads
    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 13 Sep 2024

    Other Metrics

    Citations

    View Options

    View options

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media