Results 1 
4 of
4
Compositional Pointer and Escape Analysis for Java Programs
 In Proceedings of the 14th Annual Conference on ObjectOriented Programming Systems, Languages and Applications
, 1999
"... algorithm for Java programs. The algorithm is based on the abstraction of pointsto escape graphs, which characterize how local variables and elds in objects refer to other objects. Each pointsto escape graph also contains escape information, which characterizes how objects allocated in one region ..."
Abstract

Cited by 230 (28 self)
 Add to MetaCart
algorithm for Java programs. The algorithm is based on the abstraction of pointsto escape graphs, which characterize how local variables and elds in objects refer to other objects. Each pointsto escape graph also contains escape information, which characterizes how objects allocated in one region of the program can escape to be accessed by another region. The algorithm is designed to analyze arbitrary regions of complete or incomplete programs, obtaining complete information for objects that do not escape the analyzed regions.
A Core Library For Robust Numeric and Geometric Computation
 In 15th ACM Symp. on Computational Geometry
, 1999
"... Nonrobustness is a wellknown problem in many areas of computational science. Until now, robustness techniques and the construction of robust algorithms have been the province of experts in this field of research. We describe a new C/C++ library (Core) for robust numeric and geometric computation ba ..."
Abstract

Cited by 60 (9 self)
 Add to MetaCart
Nonrobustness is a wellknown problem in many areas of computational science. Until now, robustness techniques and the construction of robust algorithms have been the province of experts in this field of research. We describe a new C/C++ library (Core) for robust numeric and geometric computation based on the principles of Exact Geometric Computation (EGC). Through our library, for the first time, any programmer can write robust and efficient algorithms. The Core Library is based on a novel numerical core that is powerful enough to support EGC for algebraic problems. This is coupled with a simple delivery mechanism which transparently extends conventional C/C++ programs into robust codes. We are currently addressing efficiency issues in our library: (a) at the compiler and language level, (b) at the level of incorporating EGC techniques, as well as the (c) the system integration of both (a) and (b). Pilot experimental results are described. The basic library is available at http://cs.nyu.edu...
From Polyvariant Flow Information to Intersection and Union Types
 J. FUNCT. PROGRAMMING
, 1998
"... Many polyvariant program analyses have been studied in the 1990s, including kCFA, polymorphic splitting, and the cartesian product algorithm. The idea of polyvariance is to analyze functions more than once and thereby obtain better precision for each call site. In this paper we present an equivalen ..."
Abstract

Cited by 41 (7 self)
 Add to MetaCart
Many polyvariant program analyses have been studied in the 1990s, including kCFA, polymorphic splitting, and the cartesian product algorithm. The idea of polyvariance is to analyze functions more than once and thereby obtain better precision for each call site. In this paper we present an equivalence theorem which relates a coinductively defined family of polyvariant ow analyses and a standard type system. The proof embodies a way of understanding polyvariant flow information in terms of union and intersection types, and, conversely, a way of understanding union and intersection types in terms of polyvariant flow information. We use the theorem as basis for a new flowtype system in the spirit of the CIL calculus of Wells, Dimock, Muller, and Turbak, in which types are annotated with flow information. A flowtype system is useful as an interface between a owanalysis algorithm and a program optimizer. Derived systematically via our equivalence theorem, our flowtype system should be a g...
Compositional Pointer and Escape . . .
"... ... algorithm for Java programs. The algorithm is based on the abstraction of pointsto escape graphs, which characterize how local variables and elds in objects refer to other objects. Each pointsto escape graph also contains escape information, which characterizes how objects allocated in one re ..."
Abstract
 Add to MetaCart
... algorithm for Java programs. The algorithm is based on the abstraction of pointsto escape graphs, which characterize how local variables and elds in objects refer to other objects. Each pointsto escape graph also contains escape information, which characterizes how objects allocated in one region of the program can escape to be accessed by another region. The algorithm is designed to analyze arbitrary regions of complete or incomplete programs, obtaining complete information for objects that do not escape the analyzed regions. We have