z-logo
Premium
Iava: yet another interpreter for scripting within the Java platform
Author(s) -
Richter Mathias W.
Publication year - 2000
Publication title -
software: practice and experience
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.437
H-Index - 70
eISSN - 1097-024X
pISSN - 0038-0644
DOI - 10.1002/(sici)1097-024x(200002)30:2<81::aid-spe287>3.0.co;2-q
Subject(s) - computer science , java , programming language , java annotation , scripting language , real time java , generics in java , interpreter , strictfp , java applet , java modeling language , java api for xml based rpc
Recently, scripting languages have received growing attention from the software engineering community. With the advent of Java, existing scripting languages have started to integrate with the rich API of the Java platform. In this work we introduce Iava , an interpreter for scripting the Java platform. In contrast to existing scripting languages for the Java platform, the Iava interpreter accepts a strict subset of Java. Iava is implemented in Java using the reflection Application Programming Interface (API) and can be integrated into any Java‐based application. This article describes why we consider scripting Java software systems with Iava a useful approach. We explain why Iava only accepts a subset of Java and what the difference between that subset and the full language is. We describe the implementation patterns that provide a high level of integration between Iava and embedding Java classes. We demonstrate the benefits of Iava using a scriptable text editor. As another example for the use of Iava, we integrate Iava with an existing framework for class testing (Ref. [1], Beck K, Gamma E. Test infected: Programmers love writing tests. Java Report ; SIGS Publications, 1998.). We sketch how to use Iava for distribution script processing – a useful tool for testing distributed Java applications. Copyright © 2000 John Wiley & Sons, Ltd.

This content is not available in your region!

Continue researching here.

Having issues? You can contact us here