Abstract. The race condition checker rccjava uses a formal type system to statically identify potential race conditions in concurrent Java programs, but it requires programmer-supplied type annotations. This paper describes a type inference algorithm for rccjava. Due to the interaction of parameterized classes and dependent types, this type inference problem is NP-complete. This complexity result motivates our new approach to type inference, which is via reduction to propositional satisfiability. This paper describes our type inference algorithm and its performance on programs of up to 30,000 lines of code.
Type inference and type reconstruction derive static types for program elements that have no static...
MLj is an extension of the Standard ML language which allows interoperation with Java. It has a type...
We propose a type system for the Java bytecode language, prove the type soundness, and develop a typ...
AbstractThe race condition checker rccjava uses a formal type system to statically identify potentia...
this report, I describe a limited form of that type system, and its polynomial-time algorithm. Two u...
This paper presents a static race-detection analysis for multithreaded shared-memory programs, focus...
One of the main obstacles to program comprehension and software maintenance is the lack of informati...
Concrete type information is invaluable for program optimization. The determination of concrete type...
Java’s type system provides programmers with strong guarantees of type and memory safety, but there ...
Type inference is a key component of modern statically typed programming languages. It allows progra...
AbstractWe define a powerful type inference mechanism with application to object-oriented programmin...
Typeless programming in Java 5.0 with wildcards With the introduction of Java 5.0 [8] the type syste...
Concrete type-inference for statically typed object-oriented programming languages (e.g., Java, C++)...
We present a simple and powerful type inference method for dynamically typed languages where no type...
International Workshop on Smalltalk TechnologiesInternational audienceDynamically typed languages pr...
Type inference and type reconstruction derive static types for program elements that have no static...
MLj is an extension of the Standard ML language which allows interoperation with Java. It has a type...
We propose a type system for the Java bytecode language, prove the type soundness, and develop a typ...
AbstractThe race condition checker rccjava uses a formal type system to statically identify potentia...
this report, I describe a limited form of that type system, and its polynomial-time algorithm. Two u...
This paper presents a static race-detection analysis for multithreaded shared-memory programs, focus...
One of the main obstacles to program comprehension and software maintenance is the lack of informati...
Concrete type information is invaluable for program optimization. The determination of concrete type...
Java’s type system provides programmers with strong guarantees of type and memory safety, but there ...
Type inference is a key component of modern statically typed programming languages. It allows progra...
AbstractWe define a powerful type inference mechanism with application to object-oriented programmin...
Typeless programming in Java 5.0 with wildcards With the introduction of Java 5.0 [8] the type syste...
Concrete type-inference for statically typed object-oriented programming languages (e.g., Java, C++)...
We present a simple and powerful type inference method for dynamically typed languages where no type...
International Workshop on Smalltalk TechnologiesInternational audienceDynamically typed languages pr...
Type inference and type reconstruction derive static types for program elements that have no static...
MLj is an extension of the Standard ML language which allows interoperation with Java. It has a type...
We propose a type system for the Java bytecode language, prove the type soundness, and develop a typ...