Journal Article10.1017/S0956796800000393
Polymorphic type, region and effect inference
TL;DR: In this article, the types, regions and effects of expressions in an implicitly typed functional language that supports imperative operations on reference values are reconstructed using a new static system, which is consistent with respect to dynamic semantics of the language.
read more
Abstract: We present a new static system which reconstructs the types, regions and effects of expressions in an implicitly typed functional language that supports imperative operations on reference values. Just as types structurally abstract collections of concrete values, regions represent sets of possibly aliased reference values and effects represent approximations of the imperative behaviour on regions.We introduce a static semantics for inferring types, regions and effects, and prove that it is consistent with respect to the dynamic semantics of the language. We present a reconstruction algorithm that computes the types and effects of expressions, and assigns regions to reference values. We prove the correctness of the reconstruction algorithm with respect to the static semantics. Finally, we discuss potential applications of our system to automatic stack allocation and parallel code generation.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
•Book
Principles of program analysis
Flemming Nielson,Hanne Riis Nielson,Chris Hankin +2 more
- 22 Oct 1999
TL;DR: This book is unique in providing an overview of the four major approaches to program analysis: data flow analysis, constraint-based analysis, abstract interpretation, and type and effect systems.
2.1K
Checking interference with fractional permissions
John Boyland
- 11 Jun 2003
TL;DR: An operational semantics of a simple imperative language with structured parallelism is given and it is proved that the permission system enables parallelism to proceed with deterministic results.
517
•Book
Advanced Topics in Types and Programming Languages
Benjamin C. Pierce
- 01 Dec 2004
TL;DR: Topics covered include precise type analyses, which extend simple type systems to give them a better grip on the run time behavior of systems; type systems for low-level languages; applications of types to reasoning about computer programs; type theory as a framework for the design of sophisticated module systems; and advanced techniques in ML-style type inference.
The type and effect discipline
Jean-Pierre Talpin,Pierre Jouvelot +1 more
- 22 Jun 1992
TL;DR: The type and effect discipline, a framework for reconstructing the principal type and the minimal effect of expressions in implicitly typed polymorphic functional languages that support imperative constructs, is introduced and outperforms other polymorphic type systems.
253
•Proceedings Article
Parallel programming must be deterministic by default
Robert L. Bocchino,Vikram Adve,Sarita V. Adve,Marc Snir +3 more
- 30 Mar 2009
TL;DR: This work argues for a parallel programming model that is deterministic by default: deterministic behavior is guaranteed unless the programmer explicitly uses nondeterministic constructs, particularly challenging for modern object-oriented languages with expressive use of reference aliasing and updates to shared mutable state.
References
A Machine-Oriented Logic Based on the Resolution Principle
TL;DR: The paper concludes with a discussion of several principles which are applicable to the design of efficient proof-procedures employing resolution as the basle logical process.
4.4K
A theory of type polymorphism in programming
TL;DR: This work presents a formal type discipline for polymorphic procedures in the context of a simple programming language, and a compile time type-checking algorithm w which enforces the discipline.
2.6K
Detecting conflicts between structure accesses
James R. Larus,Paul N. Hilfinger +1 more
- 01 Jun 1988
TL;DR: This paper describes a dataflow computation that produces a conservative description of the aliases visible at any point in a program that shows how alias graphs can be used to detect potential conflicts.
282
The type and effect discipline
Jean-Pierre Talpin,Pierre Jouvelot +1 more
- 22 Jun 1992
TL;DR: The type and effect discipline, a framework for reconstructing the principal type and the minimal effect of expressions in implicitly typed polymorphic functional languages that support imperative constructs, is introduced and outperforms other polymorphic type systems.
253
Related Papers (5)
Pierre Jouvelot,David K. Gifford +1 more
- 03 Jan 1991
Jean-Pierre Talpin,Pierre Jouvelot +1 more
- 01 Jan 1991
Robin Milner,Mads Tofte,Robert Harper +2 more
- 01 Jan 1990