Results 1 -
5 of
5
SafeJava: A Unified Type System for Safe Programming
, 2004
"... Making software reliable is one of the most important technological challenges facing our society today. This thesis presents a new type system that addresses this problem by statically preventing several important classes of programming errors. If a program type checks, we guarantee at compile time ..."
Abstract
-
Cited by 54 (2 self)
- Add to MetaCart
Making software reliable is one of the most important technological challenges facing our society today. This thesis presents a new type system that addresses this problem by statically preventing several important classes of programming errors. If a program type checks, we guarantee at compile time that the program does not contain any of those errors. We designed our type system in the context of a Java-like object-oriented language; we call the resulting system SafeJava. The SafeJava type system offers significant software engineering benefits. Specifically, it provides a statically enforceable way of specifying object encapsulation and enables local reasoning about program correctness; it combines effects clauses with encapsulation to enable modular checking of methods in the presence of subtyping; it statically prevents data races and deadlocks in multithreaded programs, which are known to be some of the most difficult programming errors to detect, reproduce, and
Type-Based Analysis and Applications
- In PASTE
, 2001
"... Type-based analysis is an approach to static analysis of programs that has been studied for more than a decade. A type-based analysis assumes that the program type checks, and the analysis takes advantage of that. This paper examines the state of the art of type-based analysis, and it surveys some o ..."
Abstract
-
Cited by 27 (3 self)
- Add to MetaCart
Type-based analysis is an approach to static analysis of programs that has been studied for more than a decade. A type-based analysis assumes that the program type checks, and the analysis takes advantage of that. This paper examines the state of the art of type-based analysis, and it surveys some of the many software tools that use type-based analysis. Most of the surveyed tools use types as discriminators, while most of the theoretical studies use type and effect systems. We conclude that type-based analysis is a promising approach to achieving both provable correctness and good performance with a reasonable effort.
Engineering a Customizable Intermediate Representation
- In ACM SIGPLAN 2003 Workshop on Interpreters, Virtual Machines and Emulators
, 2003
"... The Ovm framework is a set of tools and components for building language runtimes. We present the intermediate representation and software design patterns used throughout the framework. One of the main themes in this work has been to support experimentation with new linguistic constructs and impleme ..."
Abstract
-
Cited by 9 (2 self)
- Add to MetaCart
The Ovm framework is a set of tools and components for building language runtimes. We present the intermediate representation and software design patterns used throughout the framework. One of the main themes in this work has been to support experimentation with new linguistic constructs and implementation techniques. To this end, framework components were designed to be parametric with respect to the instruction set on which they operate. We argue that our approach eases the task of writing new components without sacri cing eciency.
A Static Analysis for Instance-based Confinement in Java
- Stevens Institute of Technology
"... A semantic definition is given for instance-based pointer confinement (alias control); this provides a form of encapsulation suited to many object-oriented designs. A syntax-directed static analysis is defined and proved, using a compositional semantics, to imply semantic confinement. Previous w ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
A semantic definition is given for instance-based pointer confinement (alias control); this provides a form of encapsulation suited to many object-oriented designs. A syntax-directed static analysis is defined and proved, using a compositional semantics, to imply semantic confinement. Previous work by the authors, reviewed here, shows that this notion of confinement ensures a strong information-hiding property.

