2015
DOI: 10.1145/2775051.2676982
|View full text |Cite
|
Sign up to set email alerts
|

K-Java

Abstract: This paper presents K-Java, a complete executable formal semantics of Java 1.4. K-Java was extensively tested with a test suite developed alongside the project, following the Test Driven Development methodology. In order to maintain clarity while handling the great size of Java, the semantics was split into two separate definitions -- a static semantics and a dynamic semantics. The output of the static semantics is a preprocessed Java program, which is passed as input to the dynamic semantics for execution. Th… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

0
8
0

Year Published

2015
2015
2019
2019

Publication Types

Select...
5
1
1

Relationship

0
7

Authors

Journals

citations
Cited by 31 publications
(8 citation statements)
references
References 21 publications
0
8
0
Order By: Relevance
“…Java is distributed as part of the Java Development Kit (JDK) and currently is in the version 10. At the imperative level, this language has 38 operators (JLS §3.12), 18 statements ( §14), and some dozens of expressions ( §15), among other features, and is evolving over time [6]. A Java program can be represented by a combination of several of its features.…”
Section: Formal Semantics For Javamentioning
confidence: 99%
See 3 more Smart Citations
“…Java is distributed as part of the Java Development Kit (JDK) and currently is in the version 10. At the imperative level, this language has 38 operators (JLS §3.12), 18 statements ( §14), and some dozens of expressions ( §15), among other features, and is evolving over time [6]. A Java program can be represented by a combination of several of its features.…”
Section: Formal Semantics For Javamentioning
confidence: 99%
“…Indeed, there exist several studies on the formalization of parts of the Java language [8,9,10,11,6,14,15,16], and we have defined some criteria to select some of them to be presented in this text. Initially, we looked up for projects that describe the semantics of Java, particularly by structural operational semantics, filtering those that presented proofs of typesafety, both in formal or informal (non-mechanized) ways.…”
Section: Formal Semantics For Javamentioning
confidence: 99%
See 2 more Smart Citations
“…The C, Java, and Lua tests come from their respective implementations, while the JavaScript ones come from the official specification conformance test suite. The authors of K-Java report that no Java language tests are publicly available [4], and hence created their own specification tests, which we use. We restricted ourselves to the core language tests of test262, and omitted a small handful of multi-file Java tests among the Java ones, which caused problems with our test harness.…”
Section: Correctnessmentioning
confidence: 99%