| Trevor Jim. Rank-2 type systems and recursive definitions. Technical Report MIT/LCS/TM-531, Massachusetts Institute of Technology, November 1995. |
....[25] Odersky and Laufer s proposal [20] also falls into this category; however, a side mechanism simultaneously allows a form of toplevel rank 2 quantification, which is not covered by Poly ML but is, we think, subsumed by ML F . Rank 2 polymorphism actually allows for full type inference [13, 11]. However, the algorithm proceeds by reduction on source terms and is not very intuitive. Rank 2 polymorphism has also been incorporated in the Hugs implementation of Haskell [17] but with explicit type annotations. The GHC implementation of Haskell has recently been released with second order ....
T. Jim. Rank-2 type systems and recursive definitions. Technical Report MIT/LCS/TM-531, Massachusetts Institute of Technology, Laboratory for Computer Science, Nov. 1995.
....datatypes [Rm94] The proposal [OL96] also falls into this category; however, a side mechanism simultaneously allows a form of toplevel rank 2 quantification, which is not covered by Poly ML but is, we think, subsumed by ML F . Rank 2 polymorphism actually allows for full type inference [KW94, Jim95] However, the algorithm is defined by reduction on source terms and is not very intuitive. Rank2 polymorphism has also been incorporated in the Hugs implementation of Haskell [Mar02] but with explicit type annotations. The GHC implementation of Haskell has recently been released with ....
Trevor Jim. Rank-2 type systems and recursive definitions. Technical Report MIT/LCS/TM531, Massachusetts Institute of Technology, Laboratory for Computer Science, November 1995.
.... importance of a substitution based principality property in practice is discussed in [Jim96] Investigate the relationship between our systems, based on universal types and recursive types, to derive types for recursive definitions and the systems proposed by Jim, based on intersection types [Jim95] Consider the addition of objects to our source language. Recursive types can be used to find expressive types for objects returning or updating self. A rank 1 inference algorithm including object types has already been devised and will be published in a future revision of this paper. 2 ....
T. Jim. Rank-2 type systems and recursive definitions. Technical Report MIT/LCS/TM-531, Massachusetts Institute of Technology, Nov. 1995.
....strictly more powerful that (Monorec) In this report, we combine universal types and recursive types in order to define such typing rules, and we seek precise conditions under which type inference remains feasible or at least decidable. An earlier attempt towards the same goal was made by Jim [9], who also proposed typing rules that are strictly more powerful than (Monorec) Jim s approach is based on the rank 2 intersection types, with which type inference remains decidable and is DEXPTIME complete. We illustrate several of the issues we tackle in this report with three examples. ....
....recursive type is inferred for map2. Thus, if map2 with its rank 2 type is passed as an argument to the function map3, the resulting typing for the program is at rank 3. let fun map3 f g [ map3 f g lst = f g (hd lst) map3 f g (tl lst) in map3 map2 map1 [ 1,2] 3,4] 5,6,7] [8,9,10]] end Following the same logic, it is possible to write recursive definitions for which the typings are at rank 4, 5, etc. The discussion so far shows that it is possible to combine universal types and recursive types in order to type recursive definitions that are not typable in the ....
[Article contains additional citation context not shown here]
T. Jim. Rank-2 type systems and recursive definitions. Technical Report MIT/LCS/TM-531, Massachusetts Institute of Technology, Nov. 1995.
....[A # ] R,M # # # CIL [M # ] R,E start ,M # : # # ] R,M # . We have not yet proved that applying the RT algorithm preserves the meaning of the program. 4 Related Work General research into the use of intersection types which has influenced us includes the work of Van Bakel [27] and Jim [14, 15]. Relevant research on both intersection and union types includes the work by Pierce [21] Aiken, Wimmers, and Lakshman [3] Trifonov, Smith, and Eifrig [26, 9] and Barbanera, Dezani Ciancaglini, and de Liguoro [7] Of the above, only Pierce considers intersection and union types in an explicitly ....
Trevor Jim. Rank 2 type systems and recursive definitions. Technical Report MIT/LCS/TM-531, Massachusetts Institute of Technology, November 1995.
....strictly more powerful that (Monorec) In this report, we combine universal types and recursive types in order to define such typing rules, and we seek precise conditions under which type inference remains feasible or at least decidable. An earlier attempt towards the same goal was made by Jim [Jim95] who also proposed typing rules that are strictly more powerful than (Monorec) Jim s approach is based on the rank 2 intersection types, with which type inference remains decidable and is DEXPTIME complete. We illustrate several of the issues we tackle in this report with three examples. ....
.... importance of a substitutionbased principality property in practice is discussed in [Jim96] Investigate the relationship between our systems, based on universal types and recursive types, to derive types for recursive definitions and the systems proposed by Jim, based on intersection types [Jim95] Investigate conditions under which subtyping (possibly restricted) and related notions (e.g. matching) can be added to our typing rules without turning type inference into an undecidable problem. The use of variance annotations in the style of [AC96] is one way of including a restricted ....
T. Jim. Rank-2 type systems and recursive definitions. Technical Report MIT/LCS/TM-531, Massachusetts Institute of Technology, Nov. 1995.
....strictly more powerful that (Monorec) In this report, we combine universal types and recursive types in order to define such typing rules, and we seek precise conditions under which type inference remains feasible or at least decidable. An earlier attempt towards the same goal was made by Jim [Jim95] who also proposed typing rules that are strictly more powerful than (Monorec) Jim s approach is based on the rank 2 intersection types, with which type inference remains decidable and is DEXPTIME complete. We illustrate several of the issues we tackle in this report with three examples. ....
.... importance of a substitutionbased principality property in practice is discussed in [Jim96] Investigate the relationship between our systems, based on universal types and recursive types, to derive types for recursive definitions and the systems proposed by Jim, based on intersection types [Jim95] Investigate conditions under which subtyping (possibly restricted) and related notions (e.g. matching) can be added to our typing rules without turning type inference into an undecidable problem. The use of variance annotations in the style of [AC96] is one way of including a restricted ....
T. Jim. Rank-2 type systems and recursive definitions. Technical Report MIT/LCS/TM-531, Massachusetts Institute of Technology, Nov. 1995.
....which are fi equivalent have the same type. Moreover, intersection types characterize normalizable terms: a term is normalizable if and only if it is typable. Intersection type systems are therefore very expressive: this is why many authors have been interested by their theory or their usage [23, 24, 21, 10, 30]. However, the price of this expressiveness is that type assignment is only semi decidable. Another drawback is the loss of the principal type property in the classical sense. As a matter of fact, in order to find all possible types of a term from a unique type, we must have more than just ....
Jim Trevor. Rank 2 type systems and recursive definitions. Technical Report MIT/LCS/TM531, Laboratory for Computer Science, Massachussetts Institute of Technology, August 1995.
....0 ] R;M 0 CIL [ M 0 ] R;E start ;M 0 : 0 ] R;M 0 . We have not yet proved that applying the RT algorithm preserves the meaning of the program. 4 Related Work General research into the use of intersection types which has influenced us includes the work of Van Bakel [4] and Jim [13, 14]. Relevant research on both intersection and union types includes the work by Pierce [20] Aiken, Wimmers, and Lakshman [1] Trifonov, Smith, and Eifrig [29, 8] and Barbanera, Dezani Ciancaglini, and de Liguoro [6] Of the above, only Pierce considers intersection and union types in an explicitly ....
Trevor Jim. Rank-2 type systems and recursive definitions. Technical Report MIT/LCS/TM-531, Massachusetts Institute of Technology, November 1995.
....the question of whether principal typings exist for ML. We describe alternatives to principal typings in x7. In x8, we describe an extension of P 2 with principal typings. We discuss related work in x9, and we summarize our results in x10. Proofs of all theorems can be found in a separate paper [11]. 2 The type system We now present our type system, in an expository manner. Uninteresting details have been placed in an appendix. For the most part, the system relies on familiar rules of subtyping and type assignment. However, the system is based on a notion of rank, and there are some ....
....the 2 programs. As we will see, however, P 2 has the principal typing property, while no notion of principal typings is known for 2 [19] Corollary 5 Typability in P 2 is DEXPTIME complete. The proof of Theorem 4 relies on the principal type property of ML and is given in a separate paper [11]; a similar theorem has been shown independently by Yokouchi [32] Corollary 5 follows by the results of Kfoury and Tiuryn [15] 2 typability is polynomial time equivalent to ML typability) and Kfoury et al. 18] and Mairson [22] ML typability is DEXPTIME complete) 8 2.2 Subtype ....
Trevor Jim. Rank 2 type systems and recursive definitions. Technical Memorandum MIT/LCS/TM--531, M.I.T. Lab. for Computer Science, August 1995.
....exist for ML. In x7, we describe an extension of P 2 with principal typings. We discuss related work in x8, and we summarize our results in x9. In an appendix, we show how our rule for typing recursive definitions could be added to ML. Proofs of all theorems can be found in a separate paper [6]. 2 The type system We now present our type system, in an expository manner. Uninteresting details have been placed in an appendix. For the most part, the system relies on familiar rules of subtyping and type assignment. However, the system is based on a notion of rank, and there are some ....
Trevor Jim. Rank 2 type systems and recursive definitions. Technical Memorandum MIT/LCS/TM--531, Massachusetts Institute of Technology, August 1995.
No context found.
Trevor Jim. Rank-2 type systems and recursive definitions. Technical Report MIT/LCS/TM-531, Massachusetts Institute of Technology, November 1995.
No context found.
T. Jim. Rank 2 type systems and recursive definitions. Technical Report MIT/LCS/TM-531, LCS, Massachusetts Institute of Technology, 1995.
No context found.
JIM, T. 1995. Rank 2 type systems and recursive definitions. Tech. Rep. MIT/LCS/TM-531, LCS, Massachusetts Institute of Technology.
No context found.
T. Jim. Rank-2 type systems and recursive definitions. Technical Report MIT/LCS/TM-531, Massachusetts Institute of Technology, Nov. 1995.
No context found.
Trevor Jim. Rank-2 type systems and recursive definitions. Technical Report MIT/LCS/TM531, Massachusetts Institute of Technology, Laboratory for Computer Science, November 1995.
No context found.
T. Jim. Rank 2 type systems and recursive definitions. Technical Report MIT/LCS/TM-531, LCS, Massachusetts Institute of Technology, 1995.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC