|
ABSTRACT
We propose a rank 2 intersection type system with new typing rules for local definitions (let-expressions and letrec-expressions) and conditional expressions (if-expressions and match-expressions). This is a further step towards the use of intersection types in "real" programming languages.The technique for typing local definitions relies entirely on the principal typing property (i.e. it does not depend on particulars of rank 2 intersection), so it can be applied to any system with principal typings. The technique for typing conditional expressions, which is based on the idea of introducing metrics on types to "limit the use" of the intersection type constructor in the types assigned to the branches of the conditionals, is instead tailored to rank 2 intersection. However, the underlying idea might also be useful for other type systems.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
Barendregt, H. P., Coppo, M., and Dezani-Ciancaglini, M. 1983. A filter lambda model and the completeness of type assignment. J. Symb. Logic 48, 931--940.
|
| |
3
|
|
| |
4
|
Coppo, M. and Dezani-Ciancaglini, M. 1980. An extension of basic functional theory for lambda-calculus. Notre Dame J. Formal Logic 21, 4, 685--693.
|
| |
5
|
Coppo, M., Dezani-Ciancaglini, M., and Venneri, B. 1980. Principal Type Schemes and Lambda-calculus Semantics. In To H. B. Curry. Essays on Combinatory Logic, Lambda-calculus and Formalism, R. Hindley and J. Seldin, Eds. Accademic Press, London, 480--490.
|
| |
6
|
Coppo, M., Dezani-Ciancaglini, M., and Venneri, B. 1981. Functional Characters of Solvable Terms. Zeith. Math. Logik Und Grund. Math. 27, 45--58.
|
| |
7
|
|
| |
8
|
Damas, L. M. M. 1984. Type Assignment in Programming Languages. Ph.D. thesis, University of Edinburgh.
|
 |
9
|
|
| |
10
|
|
| |
11
|
|
| |
12
|
Girard, J. Y. 1972. Interpretation fonctionelle et elimination des coupures dans l'aritmetique d'ordre superieur. Ph.D. thesis, Université Paris VII.
|
 |
13
|
|
| |
14
|
|
| |
15
|
|
 |
16
|
|
| |
17
|
Jim, T. 2000. A polar type system. In ICALP Workshops. Proceedings in Informatics, vol. 8. Carleton-Scientific, 323--338.
|
 |
18
|
|
 |
19
|
|
 |
20
|
|
 |
21
|
|
| |
22
|
Leporati, E. 2000. Intersezione al rank 2 per MiniOcaml. M.S.thesis, Dipartimento di Informatica, Università di Torino.
|
| |
23
|
Margaria, I. and Zacchi, M. 1995. Principal typing in a ∀∧ discipline. J. Logic Comp. 5, 367--381.
|
 |
24
|
|
| |
25
|
|
| |
26
|
|
| |
27
|
O'Caml. The O'Caml Language Home Page, http://www.ocaml.org.
|
| |
28
|
|
| |
29
|
|
| |
30
|
Ronchi della Rocca, S. and Venneri, B. 1984. Principal Types Schemes for an extended type theory. Theoret. Comput. Sci. 28, 151--169.
|
 |
31
|
|
| |
32
|
|
| |
33
|
van Bakel, S. 1993. Intersection Type Disciplines in Lambda Calculus and Applicative Term Rewriting Systems. Ph.D. thesis, Katholieke Universiteit Nijmegen.
|
| |
34
|
|
| |
35
|
Wells, J. 1994. Typability and type-checking in the second-order lambda-calculus are equivalent and undecidable. In Logic in Computer Science. IEEE, 176--185.
|
| |
36
|
|
Peer to Peer - Readers of this Article have also read:
-
Data structures for quadtree approximation and compression
Communications of the ACM
28, 9
Hanan Samet
-
A hierarchical single-key-lock access control using the Chinese remainder theorem
Proceedings of the 1992 ACM/SIGAPP Symposium on Applied computing
Kim S. Lee
, Huizhu Lu
, D. D. Fisher
-
An intelligent component database for behavioral synthesis
Proceedings of the 27th ACM/IEEE conference on Design automation
Gwo-Dong Chen
, Daniel D. Gajski
-
The GemStone object database management system
Communications of the ACM
34, 10
Paul Butterworth
, Allen Otis
, Jacob Stein
-
Putting innovation to work: adoption strategies for multimedia communication systems
Communications of the ACM
34, 12
Ellen Francik
, Susan Ehrlich Rudman
, Donna Cooper
, Stephen Levine
|