Automatic Construction of Java Programs from Functional Program Specifications
Citations Over TimeTop 14% of 2015 papers
Abstract
This paper presents a novel approach to construct Java programs automatically from the input functional program specifications on natural numbers from the constructive proofs of the input specifications using an inductive theorem prover called Poiti'n. The construction of a Java program from the input functional program specification involves two phases. The theorem prover is used to construct a higher order functional (HOF) program from the input specification expressed as an existential theorem. A set of mapping rules for a Programming Language Translation System (PLTS) is defined for translating functional expressions to their semantic equivalent Java code. The generated functional program is translated into intermediate Java code in the form of a Java function using the PLTS module. The generated Java function requires a small refinement to obtain a syntactically correct Java function. This Java function is encapsulated within a user defined Java class as a member operation, which is invoked within a Java application class consisting of a main function by creating objects resulting in an executable Java program. The constructed functional program and the generated Java program both are correct with respect to the input specification as they produce the same output.
Related Papers
- → Compatible genericity with run-time types for the Java programming language(1998)139 cited
- Java in easy steps: Covers Java 8(2014)
- → NetRexx-an alternative for writing Java classes(2002)
- Mastering Java 11 Ed. 2(2018)
- → Identifying Reference Objects by Hierarchical Clustering in Java\n Environment(2011)