Usage analysis aims to predict the number of times a heap allocated closure is used. Previously proposed usage analyses have proved not to scale up well to large programs. In this paper we present a powerful and accurate type based analysis designed to scale up for large programs. The key features of the type system are usage subtyping and bounded usage polymorphism. Bounded polymorphism can lead to huge constraint sets so to express constraints compactly we introduce a new expressive form of constraints which allows constraints to be represented compactly through calls to constraint abstractions
Constrained type systems are a natural generalization of Hindley/Milner type inference to languages ...
We present a type system for a compile-time analysis of heap-space requirements of Java style object...
This paper concentrates on a polymorphic type system with constraints based on constrained types. By...
There are a number of choices to be made in the design of a type based usage analysis. Some of these...
Abstract. The prediction of resource consumption in programs has gained interest in the last years. ...
Many computer programs have the property that they work correctly on a variety of types of input; s...
Controlling resource usage is important for the reliability, efficiency and security of software sys...
research.microsoft.com/Users/simonpj/ We present a novel inference algorithm for a type system featu...
This thesis is concerned with the resource consumption of lazy functional languages. It touches upon...
Many type based program analyses with subtyping, such as flow analysis, are based on inequality cons...
Size analysis can be an important part of heap consumption analysis. This paper is a part of ongoing...
In this paper we present a new program analysis method which we call Storage Use Analysis. This anal...
Abstract. Many type based program analyses with subtyping, such as flow analysis, are based on inequ...
The desire for compile-time knowledge about the structure of heap contexts is currently increasing i...
Approximate descriptions of the success set of a program have many uses in program development and ...
Constrained type systems are a natural generalization of Hindley/Milner type inference to languages ...
We present a type system for a compile-time analysis of heap-space requirements of Java style object...
This paper concentrates on a polymorphic type system with constraints based on constrained types. By...
There are a number of choices to be made in the design of a type based usage analysis. Some of these...
Abstract. The prediction of resource consumption in programs has gained interest in the last years. ...
Many computer programs have the property that they work correctly on a variety of types of input; s...
Controlling resource usage is important for the reliability, efficiency and security of software sys...
research.microsoft.com/Users/simonpj/ We present a novel inference algorithm for a type system featu...
This thesis is concerned with the resource consumption of lazy functional languages. It touches upon...
Many type based program analyses with subtyping, such as flow analysis, are based on inequality cons...
Size analysis can be an important part of heap consumption analysis. This paper is a part of ongoing...
In this paper we present a new program analysis method which we call Storage Use Analysis. This anal...
Abstract. Many type based program analyses with subtyping, such as flow analysis, are based on inequ...
The desire for compile-time knowledge about the structure of heap contexts is currently increasing i...
Approximate descriptions of the success set of a program have many uses in program development and ...
Constrained type systems are a natural generalization of Hindley/Milner type inference to languages ...
We present a type system for a compile-time analysis of heap-space requirements of Java style object...
This paper concentrates on a polymorphic type system with constraints based on constrained types. By...