Results 1 -
2 of
2
Demand-Driven Type Analysis for Dynamically-Typed Functional Languages
"... We present a new static type analysis for dynamically-typed languages that produces high quality results at a cost that remains practicable. The analysis has the ability to adapt to the needs of the optimizer and to the characteristics of the program at hand. The result is an analyzer that quickly t ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
We present a new static type analysis for dynamically-typed languages that produces high quality results at a cost that remains practicable. The analysis has the ability to adapt to the needs of the optimizer and to the characteristics of the program at hand. The result is an analyzer that quickly transforms itself to be better equipped to attack the program. Experiments show that our approach can be pretty clever in the optimizations that it enables.
DECIDING INCLUSION OF SET CONSTANTS OVER INFINITE NON-STRICT DATA STRUCTURES
- THEORETICAL INFORMATICS AND APPLICATIONS
, 1999
"... Various static analyses of functional programming languages that permit infinite data structures make use of set constants like Top, Inf, and Bot, denoting all terms, all lists not eventually ending in Nil, and all non-terminating programs, respectively. We use a set language that permits union, con ..."
Abstract
- Add to MetaCart
Various static analyses of functional programming languages that permit infinite data structures make use of set constants like Top, Inf, and Bot, denoting all terms, all lists not eventually ending in Nil, and all non-terminating programs, respectively. We use a set language that permits union, constructors and recursive definition of set constants with a greatest fixpoint semantics in the set of all, also infinite, computable trees, where all term constructors are non-strict. This paper proves decidability, in particular DEXPTIME-completeness, of inclusion of co-inductively defined sets by using algorithms and results from tree automata and set constraints. The test for set inclusion is required by certain strictness analysis algorithms in lazy functional programming languages and could also be the basis for further set-based analyses.

