27 citations found. Retrieving documents...
Robert Harper and Christopher Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-97-147, School of Computer Science, Carnegie Mellon University, June 1997.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

Effects and effect inference for a core Java calculus - Bierman, Parkinson (2003)   (Correct)

....s : # # E # where # = this : C, var : C , #m (C) m) C # E) # # # , mbody(C, m) var, s)and E # Instrumented operational semantics. We define the operational semantics of MJe in terms of instrumented transitions between configurations, in the style of Harper and Stone [6]. 9 [TE Var] var : C var : C # [TE Null] null : C # [TE FieldAccess] e : C 2 E # f (C 2 ) f) C 1 , r) e.f : C 1 E [TE UpCast] TE DownCast] TE StupidCast] e : C 2 E C 2 C 1 C 1 C 2 # [Method] e : C # E #; # e 1 : C 1 ....

R. Harper and C. Stone. An interpretation of Standard ML in type theory. Technical Report CMU--CS--97--147, Computer Science Department, Carnegie Mellon University, 1997.


Types for Modules - Russo (1998)   (3 citations)  (Correct)

....obtain a uniform language with first class modules. The intention is that the need for a separate core language is subsumed by enriching the modules language directly with computational mechanisms normally associated with the core. This is made more explicit in follow on work by Harper and Stone [53, 22], that describes an interpretation of Standard ML into a variant of the translucent sum calculus, extended directly with state and exceptions. These papers give an involved syntactic translation, which, in this author s opinion, do little to clarify the semantics of Standard ML presented in [43, ....

....in [43, 44] Furthermore, there is currently no proof that this translation is faithful to the original semantics. The thesis of Lillibridge [33] develops the meta theory of a drastically simplified type theory that is presented as a kernel version of the translucent sum calculi underlying [18, 53, 22]. Given the size of both the source and target languages, there probably never will be. 52 2.3.3.2 Leroy s Modules Historically, the goal of designing a simple separate compilation scheme for Standard ML Modules, akin to Modula 2 s mechanism [59] has remained elusive. In particular, the naive ....

[Article contains additional citation context not shown here]

Robert Harper and Chris Stone. An Interpretation of Standard ML in Type Theory. Technical Report CMU-CS-97-147, School of Computer Science, Carnegie Mellon University, June 1997. 350


Operational Semantics and Program Equivalence - Pitts (2000)   (4 citations)  (Correct)

.... (which I will briefly survey) However, I will try to show that one particular and possibly unfamiliar approach to structural operational semantics using a frame stack formalism derived from the approach of Wright and Felleisen [18] and used in the redefinition of ML by Harper and Stone [6] provides a more convenient basis for developing properties of contextual equivalence of programs than does the evaluation (or natural , or big step ) semantics used in the o#cial definition of Standard ML [9] Further Reading. Most of the examples and technical results in this paper to do ....

....of Caml. Andrew M. Pitts tions on local state in functions to give a more tractable theory of equivalence [1] The use of logical relations based on abstract machine semantics to analyse other programming language features, such as polymorphism, is developed in [13, 14, 3] see also [2] and [6]. Exercises. Some exercises are given in Appendix B. Notation. A list of the notations used in this paper is given in Appendix C. Acknowledgement. I am grateful to members of the audience of the lectures on which this paper is based for their lively feedback; and to an anonymous referee of the ....

[Article contains additional citation context not shown here]

R. Harper and C. Stone. An interpretation of Standard ML in type theory. Technical Report CMU--CS--97--147, Carnegie Mellon University, Pittsburgh, PA, 1997.


Down with Emacs Lisp: Dynamic Scope Analysis - Neubauer, Sperber (2001)   (1 citation)  (Correct)

....introducing a syntactic theory of dynamic binding with a calculus allowing equational reasoning. From this theory, he also derived a small step semantics using evaluation contexts and syntactic rewriting as developed by Felleisen and Friedman [6] Wright and Felleisen [30, 31] and Harper and Stone [11] formulated semantics for exception mechanisms which also employ a kind of dynamic binding. Lewis at al. 17] introduce a language feature called implicit parameters that provides dynamically scoped variables for languages with Hindley Milner type systems, and formalize it with an axiomatic ....

R. Harper and C. Stone. An interpretation of Standard ML in type theory. Technical Report CMU--CS--97--147, Carnegie Mellon University, Pittsburgh, PA, June 1997. (Also published as Fox Memorandum CMU--CS--FOX--97--01.).


Non-Dependent Types for Standard ML Modules - Russo (1999)   (2 citations)  (Correct)

....types. Adopting first order dependent types in a programming language is problematic as it rules out the consistent extension to first class modules [2] and violates the phase distinction between compile time type checking and run time evaluation [3] More recently proposed module calculi [1, 4 8] that capture some, but not all, of the features of Standard ML, and significantly generalise them, resort to non standard formulations of dependent types. Though appealing, these calculi have undesirable properties (undecidable subtyping in [1, 8] and the lack of principal types in [1, 4 6, ....

....[1, 4 8] that capture some, but not all, of the features of Standard ML, and significantly generalise them, resort to non standard formulations of dependent types. Though appealing, these calculi have undesirable properties (undecidable subtyping in [1, 8] and the lack of principal types in [1, 4 6, 8]) Core Types u : t type identifier j u u 0 function type j int integers j sp:t type projection Signature Bodies B : type t = u; B transparent type specification j type t; B opaque type specification j val x : u; B value specification j structure X : S; B structure specification j ....

R. Harper, C. Stone. An Interpretation of Standard ML in Type Theory. T. R. CMU-CS-97-147, School of Computer Science,Carnegie Mellon University, 1997.


MOBY objects and classes - Fisher, Reppy (1998)   (2 citations)  (Correct)

....types at the class view than the client view. ffl Formal semantics. More specifically, we wish to provide both a static semantics of the surface language similar to the Definition of SML [MTHM97] and a translation to an IL in the style of Harper and Stone s account of the semantics of SML [HS97] 4 3 An introduction to MOBY classes In this section, we introduce the major features of our class mechanism with a series of simple examples. 3.1 Objects Object types must be declared, much like SML datatypes. For example, here is the declaration of a point object that supports both a ....

....MINIMOBY includes almost all of the features of MOBY s object, class and module mechanisms. Of particular interest is the interaction between the semantics of modules and classes. A number of different approaches to specifying the semantics of ML style modules exist [MTHM97, Ler96, 21 HL94, HS97] The key technical issue that shapes these semantics is accounting for type identity and abstraction. We have chosen to use the stamp based approach used in the definition of SML [MTHM97] but we believe that our object and class semantics can be adapted to other module mechanism formalisms ....

[Article contains additional citation context not shown here]

Robert Harper and Christopher Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-97-147, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA, June 1997.


Foundations for MOBY Classes - Fisher, Reppy (1998)   (Correct)

....but do not specify the implementation. Subtyping on object types is structural. A more complete description of MOBY s object oriented features can be found in [FR98a] 1 . In this paper, we define the formal semantics of the object oriented portion of MOBY using the approach of Harper and Stone [HS97]. Namely, we craft an external language (EL) that formalizes in a direct fashion the aspects of the MOBY surface language that we wish to study. We then define an internal language (IL) rich enough to express all of the EL features, but simple enough to prove type safe via a subject reduction ....

....the Point class with an interface that does not mention x, we make the x field private. We can define a new class of fast points by inheriting from Point and overriding the move method: 3 It is fairly straightforward to add one of the existing module system semantics (e.g. Harper Stone [HS97]) to our system, but this greatly increases the sizes of the formal systems. By including class interface ascription, we get the most interesting module class interaction without the overhead of defining the semantics of modules. 3 class FastPoint (x0 : Int) public meth getX : Unit Int ....

[Article contains additional citation context not shown here]

Harper, R. and C. Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-97-147, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA, June 1997.


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

....between their system and the one presented in this paper. First, their tags are second class, whereas mine are first class. Second, their type system is named, whereas mine is structural. Third, they do not formalise their implementation nor discuss the typing issues that arise. Harper and Stone [HS97] formalise a non hierarchical extensible sum for modelling 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 ....

Robert Harper and Christopher Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-97-147, Carnegie Mellon University, Pittsburgh, PA 15213, June 1997.


Compiling Standard ML to Java - Gammage (1997)   (Correct)

....in the translation. The first stage of a type directed compiler is conventionally to translate the source language into a second order typed calculus, such as Harper and Mitchell s XML [20] Harper and Morisett s ML i [43, 33, 44] Shao s FLINT [39] or Harper and Stone s Internal Language [21], all of which are essentially predicative variants of Girard s system F [18] Examples of such translations are given by Harper and Mitchell (transforming Core ML to Core XML) 20] and Harper and Stone (transforming (most of) SML97 (including the module system) to their Internal Language) 21] ....

.... [21] all of which are essentially predicative variants of Girard s system F [18] Examples of such translations are given by Harper and Mitchell (transforming Core ML to Core XML) 20] and Harper and Stone (transforming (most of) SML97 (including the module system) to their Internal Language) [21]. 3.3.1 ML i Rather than invent a new calculus, a group of variants of Harper and Morisett s ML i are used as the intermediate forms of the type directed translation. The first variant used is ML i Rep, to which the ML Kit s Lambda language is translated. Later transformations add ....

Robert Harper and Christopher Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-97-147, Carnegie Mellon University, June 1997.


Transparent Modules with Fully Syntactic Signatures - Shao (1999)   (20 citations)  (Correct)

....proposed (independently) to use translucent sums and manifest types to model ML modules; the resulting framework which we call it the abstract approach has a clean type theoretic equational theory on types; furthermore, both systems support fully syntactic signatures. Leroy [21] and Harper [16] have also shown that their systems are sufficiently expressive that it can type the entire module language in the official SML 97 Definition [27] Unfortunately, in the case of higher order functors, the abstract approach does not propagate as much sharing as one would normally expect in the ....

R. Harper and C. Stone. An interpretation of Standard ML in type theory. Technical Report CMU--CS--97--147, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA, June 1997.


Polymorphic Equality - No Tags Required - Elsman (1989)   (2 citations)  (Correct)

....technique does not work well with separate compilation and may lead to unnecessary code duplication. No work on dictionary transformations demonstrates semantic soundness. Harper and Stone present an alternative semantics to Standard ML in terms of a translation into an intermediate typed language [6]. Similar to the translation we present here, polymorphic equality is eliminated during the translation. However, because the semantics of their source language is given by the translation, they cannot show correctness of the translation. Ohori demonstrates how Standard ML may be extended with ....

Robert Harper and Chris Stone. An interpretation of Standard ML in type theory. Technical report, Carnegie Mellon University, June 1997. CMU-CS-97-147.


Automating the Meta Theory of Deductive Systems - Carsten Schürmann (1997)   (15 citations)  (Correct)

....all proof terms in M 2 terminate. An extension of the termination argument to full M is very likely to require an argument by logical relations. The operational semantics for M is a standard big step call by value natural semantics [Pfe94b] with environments as it is defined for Standard ML [HS97] It must be defined with respect to environments because the proof calculus for M does not contain a cut rule: Derivations in the calculus always correspond to normalized, cut free derivations in a more general sequent calculus. This property manifests itself already in the syntactical form of ....

Robert Harper and Chris Stone. An interpretation of Standard ML in type theory. Technical Report CMU--CS--97--147, Carnegie Mellon University, Pittsburgh, PA, June 1997. (Also published as Fox Memorandum CMU--CS--FOX--97--01.).


Typed Cross-Module Compilation - Shao (1998)   (23 citations)  (Correct)

....inside Harper, Mitchell, and Moggi s phase distinction paper [HMM90] is most related, however, it does not support type abbreviation and sharing in signatures. 2 Supporting type abbreviation is non trivial, as discovered by Morrisett [Mor97] and also demonstrated in this paper. Harper and Stone [HS97] give a new type theoretical semantics for the entire SML 97, however, their internal language, IL, contains a separate module calculus that uses translucent signatures. Biswas [Bis95] gives a semantics for the MacQueen Tofte modules based on simple polymorphic types; however, his algorithm does ....

Robert Harper and Chris Stone. An interpretation of Standard ML in type theory. Technical Report CMU--CS--97--147, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA, June 1997.


A Computational Interpretation of the λμ-calculus - Bierman (1998)   (2 citations)  (Correct)

.... E) Gamma (snd( ffl ) S; M; E) M not a value (S; snd(hv; wi) E) Gamma (S; w; E) S; suc(M) E) Gamma (suc(ffl) S; M; E) M not a value (S; suc(n) E) Gamma (S; n 1; E) S; ifz M then N else P; E) Gamma ( ifz ffl then N else P ) S; M; E) M not a value 6 Harper and Stone [16] give simple transition rules in their analysis of SML and Pitts [27] has used similar rules in work on functional languages with dynamic allocation of store. S; ifz 0 then M else N; E) Gamma (S; M; E) S; ifz (n 1) then M else N; E) Gamma (S; N; E) S; letrec f = x:M in N; E) Gamma ....

R. Harper and C. Stone. An interpretation of Standard ML in type theory. Technical Report CMU--CS--97--147, School of Computer Science, Carnegie Mellon University, June 1997.


Hierarchical Modularity And Intermodule Optimization - Blume (1997)   (2 citations)  (Correct)

....Abstractions, such as type t in the examples above, make code generation difficult. Surprisingly, the situation can be improved by being even more abstract. Type l is represented using three functions: two for construction and one for a combination of pattern matching and deconstruction [HS97] Signature S will then be treated as if it looked like this: signature S = sig type l type t val NIL: unit l val CONS: t l val NIL CONS match: l (unit r) t r) r end Furthermore, functor F will be compiled as: functor F (X: S) struct fun f z = X.NIL CONS match (z, fn ....

Robert Harper and Christopher Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-FOX-97-01, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA 15213, June 1997.


Typed Cross-Module Compilation - Shao (1998)   (23 citations)  (Correct)

....hidden inside Harper, Mitchell, and Moggi s phase distinction paper [13] is most related, however, it does not support type abbreviation and sharing in signatures. 2 Supporting type abbreviation is non trivial, as discovered by Morrisett [30] and also demonstrated in this paper. Harper and Stone [15] give a new type theoretical semantics for the entire SML 97, however, their internal language, IL, contains a separate module calculus that uses translucent signatures. Biswas [4] gives a semantics for the MacQueen Tofte modules based on simple polymorphic types; however, his algorithm does not ....

R. Harper and C. Stone. An interpretation of Standard ML in type theory. Technical Report CMU--CS--97--147, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA, June 1997.


A Computational Interpretation of the λμ-calculus - Bierman (1998)   (2 citations)  (Correct)

....back to an evaluation context before inserting M . For example d ( x:M)ffl)P )Q e def = x:M)ffl) fflP ) fflQ) x:M)ffl) fflP ) fflQ) N def = x:M)N)P )Q The two sets of reduction rules can be related in the following sense. 3 Harper and Stone [6] give similar transition rules in their analysis of SML and Pitts [10] has used similar rules in work on functional languages with dynamic allocation of store. Proposition 1 (S M; E) N; E 0 ) iff 9S 0 ; M 0 :N = S 0 M 0 ; S; M; d E e ) Gamma (S 0 ; M 0 ; d E 0e ) ....

R. HARPER AND C. STONE. An interpretation of Standard ML in type theory. Technical Report CMU--CS--97--147, School of Computer Science, Carnegie Mellon University, June 1997.


A Separate Compilation Extension to Standard ML - Revised And Expanded   Self-citation (Harper)   (Correct)

No context found.

Robert Harper and Christopher Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-97-147, School of Computer Science, Carnegie Mellon University, June 1997.


A Separate Compilation Extension to Standard ML - David Swasey Tom   Self-citation (Harper)   (Correct)

No context found.

Robert Harper and Christopher Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-97-147, School of Computer Science, Carnegie Mellon University, June 1997.


Toward a Practical Type Theory for Recursive Modules - Dreyer, Harper, Crary (2001)   (6 citations)  Self-citation (Harper)   (Correct)

....to general programming. Finally, in Section 4.1.4, we look at how transparent fixed points generalize ML s recursive function definitions. 4.1. 1 The Harper Stone Interpretation of Datatypes Harper and Stone have given an interpretation of Standard ML into an underlying type theory with modules [10], which serves as the basis of the front end of the TILT compiler for Standard ML in development at Carnegie Mellon University. This interpretation takes the form of a set of elaboration rules that involve typechecking of the ML source program as well as the desugaring of ML features such as ....

....can be solved by first generating a total functor that coerces a module from the full signature of the module body to the rds. Then, the application of that functor coercion to the original module body matches the rds and can be used as the body of the transparent fixed point. Harper and Stone [10] show how to generate such functor coercions automatically, as they are the same sort of coercions that are generated during the elaboration of signature ascription and functor application. 28 Finally, for the design to be successful, there must be a straightforward way to explain recursive ....

Robert Harper and Christopher Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-97-147, Carnegie Mellon University, Pittsburgh, PA, June 1997. Also published as Fox Memorandum CMU-CS-FOX-97-01.


Implementing the TILT Internal Language - Petersen, Cheng, Harper, Stone (2000)   (1 citation)  Self-citation (Harper Stone)   (Correct)

....such as eliminating redundant boxing and unboxing of floats which can only be performed if the boxing and unboxing operations are present at the MIL level. For similar reasons, the sum case construct in the MIL is also somewhat non standard, as can be seen from the sum elimination rule [HS97] Delta e : T (c 1 c 2 ) Delta[x : T (c 1 1 c 2 ) e 1 : Delta[x : T (c 1 2 c 2 ) e 2 : Sum elimination Delta case e of finl(x) e 1 ; inr(x) e 2 g : Notice that the case construct does not destructure its argument rather, it will bind the argument in the ....

Robert Harper and Chris Stone. An interpretation of Standard ML in type theory. Technical Report CMU--CS--97--147, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA, June 1997. (Supersedes [HS96] and [SH96]. Also published as Fox Memorandum CMU--CS--FOX--97--01.).


Toward a Practical Type Theory for Recursive Modules - Dreyer, Harper, Crary (2001)   (6 citations)  Self-citation (Harper)   (Correct)

....to general programming. Finally, in Section 4.1.4, we look at how transparent xed points generalize ML s recursive function de nitions. 4.1. 1 The Harper Stone Interpretation of Datatypes Harper and Stone have given an interpretation of Standard ML into an underlying type theory with modules [10], which serves as the basis of the front end of the TILT compiler for Standard ML in development at Carnegie Mellon University. This interpretation takes the form of a set of elaboration rules that involve typechecking of the ML source program as well as the desugaring of ML features such as ....

....This can be solved by rst generating a total functor that coerces a module from the full signature of the module body to the rds. Then, the application of that functor coercion to the original module body matches the rds and can be used as the body of the transparent xed point. Harper and Stone [10] show how to generate such functor coercions automatically, as they are the same sort of coercions that are generated during the elaboration of signature ascription and functor application. 28 Finally, for the design to be successful, there must be a straightforward way to explain recursive ....

Robert Harper and Christopher Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-97-147, Carnegie Mellon University, Pittsburgh, PA, June 1997. Also published as Fox Memorandum CMU-CS-FOX-97-01.


A Type-Theoretic Interpretation of Standard ML - Harper, Stone (1998)   (26 citations)  Self-citation (Harper Stone)   (Correct)

....type system [13] This section consists of a brief overview of the internal language. The language is defined by a set of inference rules for deriving the judgment forms given in Figure 1. A selection of the rules is given in Appendix B; the remainder can be found in a companion technical report [11]. For further background and motivation the reader is urged to consult the references cited above. 2.1 Constructors and Kinds The syntax of constructors and kinds is given in Figure 2. Kinds classify constructors. Constructors of kind Omega are called types. Kinds are closed under formation of ....

.... Sigma 0 t = Sigma t , Delta; Delta; let basis=mod basis in exp 0 end) Sigma 0 t : 4 Summary We have given a brief overview of an interpretation of Standard ML into a typed calculus. A fully detailed account of the interpretation appears in a companion technical report [11]. The complete interpretation consists of approximately 270 inference rules, of which approximately 140 form the typing rules and dynamic semantics of the internal language (120 rules and 20 rules, respectively) with the remaining 130 rules being the interpretation itself. Of these approximately ....

Robert Harper and Christopher Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-97-147, School of Computer Science, Carnegie Mellon University, 1997.


A Type-Theoretic Interpretation of Standard ML - Harper, Stone (1998)   (26 citations)  Self-citation (Harper Stone)   (Correct)

....type system [12] This section consists of a brief overview of the internal language. The language is defined by a set of inference rules for deriving the judgment forms given in Figure 1. A selection of the rules is given in Appendix B; the remainder can be found in a companion technical report [10]. For further background and motivation the reader is urged to consult the references cited above. 2.1 Constructors and Kinds The syntax of constructors and kinds is given in Figure 2. Kinds classify constructors. Constructors of kind Omega are called types. Kinds are closed under formation of ....

.... Sigma 0 t = Sigma t , Delta; Delta; let basis=mod basis in exp 0 end) Sigma 0 t : 4 Summary We have given a brief overview of an interpretation of Standard ML into a kernel type theory. A fully detailed account of the interpretation appears in a companion technical report [10]. The complete interpretation consists of approximately 270 inference rules, of which approximately 140 form the typing rules and dynamic semantics of the internal language (120 rules and 20 rules, respectively) with the remaining 130 rules being part of the interpretation itself. Of these ....

Robert Harper and Christopher Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-97-147, School of Computer Science, Carnegie Mellon University, 1997.


Compiling Standard ML to Java - An   (Correct)

No context found.

Robert Harper and Christopher Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-97-147, Carnegie Mellon University, June 1997.

First 50 documents

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