18 citations found. Retrieving documents...
G. Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, 1995. Published as CMU Technical Report CMU-CS-95-226.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Type Dispatch for Named Hierarchical Types - Glew (1999)   (15 citations)  (Correct)

....predicates for testing if a value is the empty list, an integer, a pair, and so on. These predicates make Scheme more expressive than it would be without them, and can be used to write polymorphic print and marshalling functions and metaprograms like eval. The intermediate language # ML i [HM95, Mor95] used in the TIL compiler [TMC 96] has a case construct similar to Scheme s type predicates. # This paper is based on work supported in part by the NSF grant CCR 9708915, AFOSR grant F49620 97 1 0013, and ARPA RADC grant F30602 1 0317. Any opinions, findings, and conclusions or ....

....exceptions in a type theoretic account of SML. Their extensible sum is like my tagging language without subtags. However, they do not discuss implementation issues. Type dispatch in a structurally typed language was first discussed by Abadi et al. ACPP91] Harper and Mor10 risett [HM95, Mor95] discuss the related problem of type analysis, and formalise a type dispatch language for structural types without subtyping. Crary, Weirich, and Morrisett s work on # R and LX [CWM98, CW99] shows how to do type analysis in a type erasure framework. Their work is the only work I know of that ....

Greg Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, December 1995. Published as CMU Technical Report CMU-CS-95-226.


Type Dispatch for Named Hierarchical Types - Glew (1999)   (15 citations)  (Correct)

....x n ) blk n executes blk , and if blk throws an exception, matches that exception against classname 1 through classname n . If classname i is the first matching class, x i is bound to the exception with type classname i , and blk i is executed. A final example of type dispatch is # ML i [HM95, Mor95] the basis for an intermediate language in the TIL compiler [TMC 96] The # ML i calculus has a typecase construct for determining the outermost type constructor of an unknown type. The typecase # This material is based on work supported in part by the NSF grant CCR 9708915, AFOSR grant ....

....A similar sort of refinement occurs in # ML i . For example, consider: ##.#x:#.typecase # of # 1 # 2 # e 1 . x initially has static type #, but in expression e 1 it is refined to # 1 # 2 . While type dispatch constructs in functional languages have been studied formally [HM95, Mor95, CWM98, CW99, etc. this work does not extend to object oriented languages as it neglects two important features: subtypes and the creation of new (i.e. generative) types. To my knowledge, this paper is the first to formalise type dispatch constructs common in object oriented languages. The ....

[Article contains additional citation context not shown here]

Greg Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, December 1995. Published as CMU Technical Report CMU-CS-95-226.


How Generic is a Generic Back End? Using MLRISC as a Back.. - Bernard, Harper, Lee (1998)   (Correct)

....back end. 1 Introduction We describe how we integrated MLRISC, a generic compiler back end, with TIL, a type directed compiler for the Standard ML (SML) programming language. A type directed compiler uses variable type information to guide successive translations between intermediate languages [13]. Type directed compilers rely on complete variable type information for most or all phases of compilation thus, types are preserved by intermediate code transformations during each phase. A generic compiler back end translates a low level intermediate language This research was sponsored ....

....of type information permits TIL to check types after any phase of compilation this helps to ensure the correctness of compiler optimizations during development. Type information also allows TIL to perform additional optimizations that are not directly available to conventional compilers [13] [10] A principal benefit of type directed compilation is that it facilitates sound tag free garbage collection [18] Sound garbage collection requires that the heap pointers used by an executing program be identified unambiguously. Tag free garbage collection permits these heap pointers to be ....

[Article contains additional citation context not shown here]

J. Gregory Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, December 1995. Published as CMU Technical Report CMU-CS-95-226.


From System F to Typed Assembly Language - Greg Morrisett David (1998)   (6 citations)  Self-citation (Morrisett)   (Correct)

No context found.

G. Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, 1995. Published as CMU Technical Report CMU-CS-95-226.


From System F to Typed Assembly Language - Greg Morrisett David (1998)   (6 citations)  Self-citation (Morrisett)   (Correct)

No context found.

G. Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, 1995. Published as CMU Technical Report CMU-CS-95-226.


Type Dispatch for Named Hierarchical Types - Neal Glew Cornell (1999)   (15 citations)  Self-citation (Types)   (Correct)

No context found.

Greg Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, December 1995. Published as CMU Technical Report CMU-CS-95-226.


Phantom Types - Cheney, Hinze (2003)   (1 citation)  Self-citation (Types)   (Correct)

....after applying a uni er. Proposition 1. Assume i : and (i.e. uni es ) Then ; 1 = 2 : if and only if 1 = 2 . The proofs of these properties are straightforward. The proof of type soundness is similar in structure to those for related systems i [20] and R [7] We prove the standard substitution lemmas, as well as additional cases for substituting types into equivalence judgments and substituting equivalence derivations into equivalence and typing derivations. We also show that typed values have canonical forms even with our stronger notion ....

Greg Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, 1995. Published as CMU Technical Report CMU-CS-95-226.


From System F to Typed Assembly Language - Extended Version Greg   Self-citation (Morrisett)   (Correct)

....over a conventional untyped compiler. An optimizing compiler for a high level language such as ML may make as many as 20 passes over a single program, performing sophisticated analyses and transformations such as CPS conversion [15, 35, 3, 13, 19] closure conversion [21, 40, 20, 4, 27] unboxing [23, 31, 39], subsumption elimination [10, 12] or region inference [8] Many of these optimizations require type information in order to succeed, and even those that do not often benefit from the additional structure supplied by a typing discipline [23, 19, 31, 37] Furthermore, the ability to typecheck ....

.... closure conversion [21, 40, 20, 4, 27] unboxing [23, 31, 39] subsumption elimination [10, 12] or region inference [8] Many of these optimizations require type information in order to succeed, and even those that do not often benefit from the additional structure supplied by a typing discipline [23, 19, 31, 37]. Furthermore, the ability to typecheck intermediate code provides an invaluable tool for debugging new transformations and optimizations [41, 29] # This material is based on work supported in part by the AFOSR grant F49620 97 1 0013, ARPA RADC grant F30602 96 1 0317, ARPA AF grant ....

[Article contains additional citation context not shown here]

Gregory Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, 1995. Published as CMU Technical Report CMU-CS-95-226.


Early Storage Reclamation in a Tracing Garbage Collector - Harris (1999)   (3 citations)  Self-citation (December)   (Correct)

....in a high level language can provide valuable opportunities for improving run time performance. Examples of this are pervasive. For instance, information gleaned from type analysis allows natural unboxed representations of primitive quantities like integers, even in the presence of polymorphism [Mor95, HU95]. The precision of pointer aliasing analysis in an imperative language can be improved by considering the types of the pointers involved [App98] Run time feedback can help reduce the overhead of virtual method lookup in an object oriented language [Hol94] This article describes a further ....

J. Gregory Morrisett. Compiling with Types. PhD thesis, School of Computer Science, Carnegie-Mellon University, December 1995. Published as CMU Technical Report CMU-CS95 -226.


Stack-Based Typed Assembly Language - Morrisett, Crary, Walker, Glew (1998)   (44 citations)  Self-citation (Morrisett)   (Correct)

....by preserving type information computed in the front end through a series of typed intermediate languages. These compilers use types to direct sophisticated transformations such as closure conversion [17, 31, 16, 4, 20] region inference [8] subsumption elimination [9, 10] and unboxing [18, 22, 28]. In many cases, without types, these transformations are less e#ective or simply impossible. Furthermore, the type translation partially specifies the corresponding term translation and often captures the critical concerns in an elegant and succinct fashion. Strong type systems not only describe ....

Greg Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, 1995. Published as CMU Technical Report CMU-CS-95-226.


From System F to Typed Assembly Language - Morrisett, Walker, Crary, Glew (1998)   (6 citations)  Self-citation (Morrisett)   (Correct)

....over a conventional untyped compiler. An optimizing compiler for a high level language such as ML may make as many as 20 passes over a single program, performing sophisticated analyses and transformations such as CPS conversion [14, 35, 2, 12, 18] closure conversion [20, 40, 19, 3, 26] unboxing [22, 28, 38], subsumption elimination [9, 11] or region inference [7] Many of these optimizations require type information in order to succeed, and even those that do not often benefit from the additional structure supplied by a typing discipline [22, 18, 28, 37] Furthermore, the ability to type check ....

.... closure conversion [20, 40, 19, 3, 26] unboxing [22, 28, 38] subsumption elimination [9, 11] or region inference [7] Many of these optimizations require type information in order to succeed, and even those that do not often benefit from the additional structure supplied by a typing discipline [22, 18, 28, 37]. Furthermore, the ability to type check intermediate code provides an invaluable tool for debugging new transformations and optimizations [41, 30] Today a small number of compilers work with typed intermediate languages in order to realize some or all of these benefits [22, 34, 6, 41, 24, 39, ....

[Article contains additional citation context not shown here]

G. Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, 1995. Published as CMU Technical Report CMU-CS-95-226.


Stack-Based Typed Assembly Language - Morrisett, Crary, Glew, Walker (1998)   (44 citations)  Self-citation (Morrisett)   (Correct)

....by preserving type information computed in the front end through a series of typed intermediate languages. These compilers use types to direct sophisticated transformations such as closure conversion [18, 31, 17, 4, 21] region inference [8] subsumption elimination [9, 11] and unboxing [19, 24, 29]. Without types these transformations are, in many cases, less e#ective or impossible. Furthermore, the type translation partially specifies the corresponding term translation and often captures the critical concerns in an elegant and succinct fashion. Strong type systems not only describe but ....

Gregory Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, 1995. Published as CMU Technical Report CMU-CS-95-226.


From System F to Typed Assembly Language - Greg Morrisett (1998)   (6 citations)  Self-citation (Morrisett)   (Correct)

....advantages over a conventional untyped compiler. An optimizing compiler for a high level language such as ML may make as many as 20 passes over a single program, performing sophisticated analyses and transformations such as CPS [14, 36, 2, 12, 18] closure conversion [20, 40, 19, 3, 26] unboxing [22, 28, 38], or region inference [7] Many of these optimizations require type information in order to succeed, and even those that do not can benefit from the additional structure, as types provide the semantic framework on which an implementer can hang a proof of correctness [22, 18, 28] Furthermore, the ....

.... 3, 26] unboxing [22, 28, 38] or region inference [7] Many of these optimizations require type information in order to succeed, and even those that do not can benefit from the additional structure, as types provide the semantic framework on which an implementer can hang a proof of correctness [22, 18, 28]. Furthermore, the ability to type check intermediate code provides an invaluable tool for debugging new transformations and optimizations [41, 31] Today a small number of compilers work with typed intermediate languages in order to realize some or all of these benefits [22, 34, 6, 41, 24, 39, ....

[Article contains additional citation context not shown here]

G. Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, 1995. Published as CMU Technical Report CMU-CS-95-226.


From System F to Typed Assembly Language (Extended Version) - Morrisett, Walker, Crary.. (1997)   Self-citation (Morrisett)   (Correct)

....over a conventional untyped compiler. An optimizing compiler for a high level language such as ML may make as many as 20 passes over a single program, performing sophisticated analyses and transformations such as CPS conversion [15, 35, 3, 13, 19] closure conversion [21, 40, 20, 4, 27] unboxing [23, 31, 39], subsumption elimination [10, 12] or region inference [8] Many of these optimizations require type information in order to succeed, and even those that do not often benefit from the additional structure supplied by a typing discipline [23, 19, 31, 37] Furthermore, the ability to typecheck ....

.... closure conversion [21, 40, 20, 4, 27] unboxing [23, 31, 39] subsumption elimination [10, 12] or region inference [8] Many of these optimizations require type information in order to succeed, and even those that do not often benefit from the additional structure supplied by a typing discipline [23, 19, 31, 37]. Furthermore, the ability to typecheck intermediate code provides an invaluable tool for debugging new transformations and optimizations [41, 29] Today a small number of compilers work with typed intermediate languages in order to realize some or all of these benefits [23, 34, 7, 41, 25, 38, ....

[Article contains additional citation context not shown here]

Gregory Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, 1995. Published as CMU Technical Report CMU-CS-95-226.


From System F to Typed Assembly Language - Morrisett, Walker, Crary, Glew (1998)   (6 citations)  Self-citation (Morrisett)   (Correct)

....over a conventional untyped compiler. An optimizing compiler for a high level language such as ML may make as many as 20 passes over a single program, performing sophisticated analyses and transformations such as CPS conversion [14, 35, 2, 12, 18] closure conversion [20, 40, 19, 3, 26] unboxing [22, 28, 38], subsumption elimination [9, 11] or region inference [7] Many of these optimizations require type information in order to succeed, and even those that do not often benefit from the additional structure supplied by a typing discipline [22, 18, 28, 37] Furthermore, the ability to type check ....

.... closure conversion [20, 40, 19, 3, 26] unboxing [22, 28, 38] subsumption elimination [9, 11] or region inference [7] Many of these optimizations require type information in order to succeed, and even those that do not often benefit from the additional structure supplied by a typing discipline [22, 18, 28, 37]. Furthermore, the ability to type check intermediate code provides an invaluable tool for debugging new transformations and optimizations [41, 30] Today a small number of compilers work with typed intermediate languages in order to realize some or all of these benefits [22, 34, 6, 41, 24, 39, ....

[Article contains additional citation context not shown here]

G. Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, 1995. Published as CMU Technical Report CMU-CS-95-226.


Stack-Based Typed Assembly Language - Morrisett, Crary, Walker, Glew (1998)   (44 citations)  Self-citation (Morrisett)   (Correct)

....by preserving type information computed in the front end through a series of typed intermediate languages. These compilers use types to direct sophisticated transformations such as closure conversion [17, 31, 16, 4, 20] region inference [8] subsumption elimination [9, 10] and unboxing [18, 22, 28]. In many cases, without types, these transformations are less effective or simply impossible. Furthermore, the type translation partially specifies the corresponding term translation and often captures the critical concerns in an elegant and succinct fashion. Strong type systems not only describe ....

Greg Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, 1995. Published as CMU Technical Report CMU-CS-95-226.


From System F to Typed Assembly Language - Morrisett, Walker, Crary, Glew (1998)   (6 citations)  Self-citation (Morrisett)   (Correct)

....untyped program representations. An optimizing compiler for a high level language such as ML may make as many as 20 passes over a single program, performing sophisticated analyses and transformations such as CPS conversion [14, 37, 1, 12, 19] closure conversion [21, 42, 20, 2, 26] unboxing [23, 29, 41], subsumption elimination [8, 10] or region inference [6] Many of these optimizations require type information in order to succeed, and even those that do not often benefit from the additional structure supplied by a typing discipline [23, 19, 29, 39] For example, the essence of a term ....

.... closure conversion [21, 42, 20, 2, 26] unboxing [23, 29, 41] subsumption elimination [8, 10] or region inference [6] Many of these optimizations require type information in order to succeed, and even those that do not often benefit from the additional structure supplied by a typing discipline [23, 19, 29, 39]. For example, the essence of a term translation can often be specified by the corresponding type translation. Hence, types provide concise and yet precise documentation that can be automatically verified by running intermediate language typecheckers. In practice, this technique has been ....

Greg Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, 1995. Published as CMU Technical Report CMU-CS-95-226.


the Garbage Collection Bibliography - Richard Jones (2003)   (Correct)

No context found.

J. Gregory Morrisett. Compiling with Types. PhD thesis, Carnegie Mellon University, December 1995. Published as CMU Technical Report CMU-CS-95-226.

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