TY - GEN
T1 - JNI light
T2 - 8th Asian Symposium on Programming Languages and Systems, APLAS 2010
AU - Tan, Gang
PY - 2010/12/1
Y1 - 2010/12/1
N2 - Through foreign function interfaces (FFIs), software components in different programming languages interact with each other in the same address space. Recent years have witnessed a number of systems that analyze FFIs for safety and reliability. However, lack of formal specifications of FFIs hampers progress in this endeavor. We present a formal operational model, JNI Light (JNIL), for a subset of a widely used FFI - the Java Native Interface (JNI). JNIL focuses on the core issues when a high-level garbage-collected language interacts with a low-level language. It proposes abstractions for handling a shared heap, crosslanguage method calls, cross-language exception handling, and garbage collection. JNIL can directly serve as a formal basis for JNI tools and systems. The abstractions in JNIL are also useful when modeling other FFIs, such as the Python/C interface and the OCaml/C interface.
AB - Through foreign function interfaces (FFIs), software components in different programming languages interact with each other in the same address space. Recent years have witnessed a number of systems that analyze FFIs for safety and reliability. However, lack of formal specifications of FFIs hampers progress in this endeavor. We present a formal operational model, JNI Light (JNIL), for a subset of a widely used FFI - the Java Native Interface (JNI). JNIL focuses on the core issues when a high-level garbage-collected language interacts with a low-level language. It proposes abstractions for handling a shared heap, crosslanguage method calls, cross-language exception handling, and garbage collection. JNIL can directly serve as a formal basis for JNI tools and systems. The abstractions in JNIL are also useful when modeling other FFIs, such as the Python/C interface and the OCaml/C interface.
UR - http://www.scopus.com/inward/record.url?scp=78650731376&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=78650731376&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-17164-2_9
DO - 10.1007/978-3-642-17164-2_9
M3 - Conference contribution
AN - SCOPUS:78650731376
SN - 364217163X
SN - 9783642171635
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 114
EP - 130
BT - Programming Languages and Systems - 8th Asian Symposium, APLAS 2010, Proceedings
Y2 - 28 November 2010 through 1 December 2010
ER -