Using Java']Java reflection to automate extension language parsing

被引:0
|
作者
Parson, D [1 ]
机构
[1] Bell Labs, Lucent Technol, Murray Hill, NJ 07974 USA
关键词
D O I
10.1145/331963.331974
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
An extension language is an interpreted programming language designed to be embedded in a domain-specific framework. The addition of domain-specific primitive operations to an embedded extension language transforms that vanilla extension language into a domain-specific language. The LUxWORKS processor simulator and debugger from Lucent uses Tcl as its extension language. After an overview of extension language embedding and LUxWORKS experience, this paper looks at using Java reflection and related mechanisms to solve three limitations in extension language - domain framework interaction. The three limitations are gradual accumulation of ad hoc interface code connecting an extension language to a domain framework, over-coupling of a domain framework to a specific extension language, and inefficient command interpretation. Java reflection consists of a set of programming interfaces through which a software module in a Java system can discover the structure of classes, methods and their associations in the system. Java reflection and a naming convention for primitive domain operations eliminate ad hoc interface code by supporting recursive inspection of a domain command interface and translation of extension language objects into domain objects. Java reflection, name-based dynamic class loading, and a language-neutral extension language abstraction eliminate language over-coupling by transforming the specific extension language into a runtime parameter. Java reflection and command objects eliminate inefficiency by bypassing the extension language interpreter for stereotyped commands. Overall, Java reflection helps to eliminate these limitations by supporting reorganization and elimination of handwritten code, and by streamlining interpretation.
引用
收藏
页码:67 / 80
页数:14
相关论文
共 50 条
  • [21] Java reflection
    Tremblett, Paul
    Dr. Dobb's Journal of Software Tools for Professional Programmer, 1998, 23 (01):
  • [22] The Java']Java programming language
    Andrews, C
    TECHNICAL COMMUNICATION, 2000, 47 (03) : 427 - 429
  • [23] The Java']Java programming language
    Steele, GL
    IEEE EXPERT-INTELLIGENT SYSTEMS & THEIR APPLICATIONS, 1996, 11 (01): : 15 - 16
  • [24] Telecommunications services management with computational reflection, using CORBA and JAVA']JAVA
    Goncalves, PRR
    Bosco, J
    Sobral, M
    ITS '98 PROCEEDINGS - SBT/IEEE INTERNATIONAL TELECOMMUNICATIONS SYMPOSIUM, VOLS 1 AND 2, 1998, : 486 - 491
  • [25] Using Lua as Script Language in Games Coded in Java']Java
    Soares de Oliveira Lyrio, Gustavo Henrique
    Seixas, Roberto de Beauclair
    GAMEON-NA 2008: 4TH INTERNATIONAL NORTH-AMERICAN CONFERENCE ON INTELLIGENT GAMES AND SIMULATION, 2008, : 79 - 82
  • [26] On synchronization of threads in the Java']Java language using SynchExpressions library
    Fryz, Lukasz
    Kotulski, Leszek
    INTERNATIONAL JOURNAL OF COMPUTER SCIENCE AND NETWORK SECURITY, 2006, 6 (7A): : 18 - 22
  • [27] Creating a multimedia extension for Tcl using the Java']Java Media Framework
    DeJong, M
    Bailey, B
    Konstan, JA
    PROCEEDINGS OF THE SIXTH ANNUAL TCL/TK CONFERENCE, 1998, : 155 - 162
  • [28] Estimating radiological consequences using the Java']Java programming language
    Crawford, J
    Hayward, M
    Harris, F
    Domel, R
    COMPUTATIONAL TECHNIQUES AND APPLICATIONS: CTAC 97, 1998, : 161 - 168
  • [29] OBJECTIVE ASSESSMENT IN JAVA']JAVA PROGRAMMING LANGUAGE USING RUBRICS
    Gupta, Priyanka
    Mehrotra, Deepti
    JOURNAL OF INFORMATION TECHNOLOGY EDUCATION-INNOVATIONS IN PRACTICE, 2022, 21 : 155 - 173
  • [30] Packet voice transmission using Java']Java programming language
    Mehrpour, H
    Nguyen, VN
    Shen, M
    IEEE TENCON'97 - IEEE REGIONAL 10 ANNUAL CONFERENCE, PROCEEDINGS, VOLS 1 AND 2: SPEECH AND IMAGE TECHNOLOGIES FOR COMPUTING AND TELECOMMUNICATIONS, 1997, : 629 - 632