| R. Harper, D. MacQueen, and R. Milner. Standard ML. Technical Report ECS--LFCS--86--2, Laboratory for the Foundations of Computer Science, Edinburgh University, Mar. 1986. |
....operation in a number of important applications such as functional and equational programming [11, 21] term rewriting, theorem proving [7] and rulebased systems[6] In most of these applications, patterns are partially ordered by assigning priorities. For instance, in languages such as ML [10] and Haskell [13] a pattern occurring earlier in the text has a higher priority over those following it. In HOPE [3] and in many rule based systems, more specific patterns have higher priority over less specific ones [6, 20] In theorem proving applications, priorities are used to encode ....
R.Harper, R.Milner and M.Tofte, The Definition of Standard ML, Report ECSLFCS -88-62, Laboratory for Foundations of Computer Science, University of Edinburgh, 1988.
....accompanying graduate courses on computer architecture, to rapidly prototype and study various programming and (abstract) machine models, compilation schemes, type checkers, etc. 1 Introduction Functional or function based programming languages such as Miranda, standard ML, Haskell or Scheme [Turn86, HaMiTo88, HuWa88, AbSus85] have become increasingly popular in teaching basic programming concepts at the undergraduate level as well as advanced topics such as compiler construction, type systems, abstract machines language interpreters etc. in graduate CS courses. The functional paradigm derives its appeal primarily ....
Harper, R.; Milner, R.; Tofte, M.: The Definition of Standard ML Version 3, Laboratory for Foundations of Computer Science, University of Edinburgh, May 1989
....ffl context type information. Two main approaches to infer type information statically can be distinguished: Milner style unification (functional approach) and Kaplan Ullman fixed point iteration (imperative approach) 2] 2.1. Milner style Unification Due to the type discipline of ML [10, 4] a static typing of polymorphic functions is possible. This functional approach to type inference tries to relate the types of all language expressions to each other via type variables. The relations of program structures are reflected in equations of type expressions which, as suggested by Milner ....
Harper, R. Introduction to Standard ML. Report ECS-LFCS-86-14, University of Edinburgh (November 1986). Laboratory for Foundations of Computer Science.
.... (namely, possibly failing applications of object logic inference rules) Notice that in this paper, the word tactic has a different meaning from that used in most of the previous literature, e.g. in [32, 31, 14, 45] where tactics are programs written in a procedural metalanguage, e.g. in ML [34]. We call these latter tactics, program tactics. The second feature makes it possible to give tactics a procedural content, i.e. to use them to assert object level theorems (possibly proofs) This can be done in two ways. Tactics can be interpreted, i.e. they can be given as input to an ....
R. Harper, D. McQueen, and Robin Milner. Standard ML. LFCS report series ECSLFCS -86-2, Laboratory for Foundations of Computer Science, Dept. of Computer Science, University of Edinburgh, 1986.
....us, that Ada is not the ideal design language for describing such generic architectures. We are therefore exploring language formalisms in this regard, including efforts such as Goguen s module interconnect language work [Gogo 83] Tracz s LILEANNA work [Trac 90] and modular extensions to ML [Harp 86] ....
Harper, R., Milner, R., and Tofte, M. [1988] The definition of Standard ML, Version 2. ECS-LFCS-88-62, Laboratory for Foundations of Computer Science, University of Edinburgh.
....the techniques of replanning and plan reuse have been given in [Thi ebaux, 1991] The aforementioned report contains also the exact specification of the semi reactive behavior of the global system, given as a transition system. The planning component has been fully implemented in Standard ML [Harper, 1986], and is domain independent. 3.6 Conclusion We can conclude from the state of the art that a planning system for unpredictable domains should have the ability of synthesizing plans from first principles, taking into account several alternatives in advance, as well as the ability to modify ....
R. Harper. Introduction to Standard ML. Technical report, Laboratory for Foundations of Computer Science (LFCS), University of Edinburgh, November 1986.
....Initial T algebras are the counterpart of the ML 8 datatype construct. Comparing practice with theory can be used for a categorical critic of ML : ffl ML has parametrized datatypes which correspond to functors, so we can define 9 8 All this refers to the core language, as described in [HMM86]. 9 I know, a list is a predefined type but this is the best example. 4 datatype a mylist = mynil mycons of ( a a mylist) 10 but we can t apply mylist to morphisms, we have to define fun mymap f mynil = mynil mymap f (mycons(h,t) mycons(f h,mymap f t) explicitly, even ....
R. Harper, D. MacQueen, and R. Milner. Standard ML. Technical Report ECS-LFCS-86-2, Laboratory for Foundations of Computer Science, 1986.
....the reason that some blackboard operations may require the introduction of new types 6 . We believe that the explicit introduction of types into blackboard systems is to be welcomed (types were present in the hearsay iii system [2, 12] whether one chooses to use a type theoretic logic such as [4, 17, 18] or a many sorted logic with a classical interpretation. The use of typed objects at runtime can reduce errors, and the specification in terms of typed objects reduces the risk of faulty reasoning. The second point to be made concerns temporal logic. In the last section, we merely introduced the ....
Harper, R., An Equational Formulation of LF, Report ECS-LFCS-88-67, Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh, 1988.
....the reason that some blackboard operations may require the introduction of new types 6 . We believe that the explicit introduction of types into blackboard systems is to be welcomed (types were present in the hearsay iii system [2, 12] whether one chooses to use a type theoretic logic such as [4, 17, 18] or a many sorted logic with a classical interpretation. The use of typed objects at runtime can reduce errors, and the specification in terms of typed objects reduces the risk of faulty reasoning. The second point to be made concerns temporal logic. In the last section, we merely introduced the ....
Harper, R., Honsell, F. and Plotkin, G., A Framework for Defining Logics, Report ECS-LFCS-87-23, Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh, 1987.
....Actually, the structural induction is the only function definition method provided for recursive types in programming languages. It turns out, however, that in the languages that involve high order function types and parametric polymorphism, such as e.g. Standard ML (see the formal report [5] or informal introductions [4] and [6] the types defined recursively using disjoint unions and Cartesian products and the structural induction are redundant. This should be understood as follows. For any recursive type X there exists another type Z that may be defined without type recursion, and ....
Harper R., Milner R., Tofte M. The definition of Standard ML. Version 2 University of Edinburgh, Laboratory for Foundations of Computer Science, Report ECS-LFCS88 -62, 1988
....induction is the only function definition method provided for recursive types in programming languages. It turns out, however, that in the languages that involve high order function types and parametric polymorphism, such as e.g. Standard ML (see the formal report [5] or informal introductions [4] and [6] the types defined recursively using disjoint unions and Cartesian products and the structural induction are redundant. This should be understood as follows. For any recursive type X there exists another type Z that may be defined without type recursion, and a function ae : X Z which ....
Harper R. Introduction to Standard ML University of Edinburgh, Laboratory for Foundations of Computer Science, Report ECS-LFCS-86-14, 1986
....SDDP with Sigma dependent types should be easy. The type system of SDDP is based on considerations from [2] It generalises the ramified 2 type system from [5] see also [10] Therefore, it generalises also the two level type system of the core language of Standard ML cf. 12] and [6]. The generalisation is twofold. Firstly, SDDP allows the type dependence across the levels of the stratification: in a Pi dependent type (x 2 st) t 0 (functions over st bringing any argument x to an element of t 0 , where t 0 may depend on x) the sets st and t 0 may come from ....
Harper R., Milner R., Tofte M. The definition of Standard ML, Version 2. University of Edinburgh, Laboratory for Foundations of Computer Science, Report ECS-LFCS-88-62, 1988
....accompanying graduate courses on computer architecture, to rapidly prototype and study various programming and (abstract) machine models, compilation schemes, type checkers, etc. 1 Introduction Functional or function based programming languages such as Miranda, standard ML, Haskell or Scheme [Turn86, HaMiTo88, HuWa88, AbSus85] have become increasingly popular in teaching basic programming concepts at the undergraduate level as well as advanced topics such as compiler construction, type systems, abstract machines, language interpreters etc. in graduate CS courses. The functional paradigm derives its appeal primarily ....
Harper, R.; Milner, R.; Tofte, M.: The Definition of Standard ML Version 3, Laboratory for Foundations of Computer Science, University of Edinburgh, May 1989
No context found.
R. Harper, D. MacQueen, and R. Milner. Standard ML. Technical Report ECS--LFCS--86--2, Laboratory for the Foundations of Computer Science, Edinburgh University, Mar. 1986.
....The implementation of modules in this new compiler went through two generations. A first version was done in the fall of 1986, but it was completely rewritten in the summer of 1987 following discussions of the operational static semantics of modules with Robin Milner, Mads Tofte, and Bob Harper [6,7,12]. Like Harper s prototype implementation, the new modules implementation was inspired by the static semantics, but it uses a structure sharing strategy [3,13] to avoid serious performance problems associated with a naive implementation of the static semantics. Although precise comparative ....
....C = structure CA = A structure CB = B fun h x = CB.g(CA.f x) signature SIGB = structure BA: SIGA val g: BA.t BA.t signature SIGC = structure CA : SIGA structure CB : SIGB val h: CA.t CA.t We prefer the term stamp for this purpose. rather than the term name used in [6,7], since name could also refer to the identifier to which a structure i, bound or an identifier bound within a structure. 216 CB CA k3 k2 structure C X2 fJ 1 x3 BA X4 signature SIGC The purpose of a signature matching S: S IG is to produce a structure S that has exactly the form ....
R. Harper, R. Milner, and M. Tofte, The semantics of Standard ML, Version I, Laboratory for Foundations of Computer Science, Dept. of Computer Science, University of Edinburgh. ECS-LFCS-87-36, 1986. 222
....the existence of the module constructs they have been reduced to common notions of records and functions. 3.2. Static Representations A naive representation of signatures and structures can be modeled more or less directly on the semantic constructs used in the operational static semantics [5,6]. There a structure is modeled by an environment E that maps component identifiers to the appropriate sort of static binding (type, structure, variable, etc. and a stamp, n, that uniquely identifies the structure: str = n,E) We can view a structure as a tree or dag with nodes labeled by ....
R. Harper, D. MacQueen, and R. Milner, Standard ML, Laboratory for Foundations of Computer Science, Dept. of Computer Science, University of Edinburgh, ECS-LFCS-86-2, 1986. (Also Polymorphism II, 2, October 1985.)
....approaches 1 The inference system presented here is a variant of the well known polymorhic type system by Hindley and Milner see [4] by Milner. Also, the algorithm for type reconstruction derives from Hindley Milner s one. The language considered differs from the core of Standard ML (see [2]) in that types are dependent on terms; more exactly, the type before the arrow may be restricted using a Boolean valued term, or a predicate; the type after the arrow may not be restricted. Consistently, defining occurrences of variables in expressions may be annotated by types and by ....
Harper R., Milner R., Tofte M. The definition of Standard ML, Version 2. University of Edinburgh, Laboratory for Foundations of Computer Science, Report ECS-LFCS88 -62, 1988.
.... has been developed [44, 45] Elliott has also developed a unification algorithm for LF [16] which has been used by Pfenning as the basis for a logic programming language based on the LF type theory [41] An equational variant of LF is introduced, along with the basic model theoretic results, in [21]. Three different implementations have been undertaken, one by Griffin [20] based on the Cornell Program Synthesizer [46] one by Hagino (in ML) and one by Pollack (also in ML) 4] Concurrently with the later development of LF, Paulson extended his Isabelle system using ideas very similar to ....
Harper, R. An equational formulation of LF. Tech. Rep. ECS--LFCS-- 88--67, Laboratory for the Foundations of Computer Science, Edinburgh University, Oct. 1988.
....( ae(P 1 ) and b = c 2 Th FOEQ ( ae(P ) since 9x:s: true; 8x:s: b = c FOEQ Sigma b = c. In terms of entailment relations, we have that ae(P ) fl FOEQ Sigma b = c even though P fl EQ Sigma b = c does not hold. A simpler but even more contrived counterexample may be found in [HST89a] Counterexample 4.6) The source of this failure of equivalence is a discrepancy between Th L (P ) and Th L 0 ( ae(P ) The use of the derive operation may cause the following crucial property to be lost: Th L 0 ( ae(P ) ae(Th L (P ) The reverse inclusion follows directly from ....
R. Harper, D. Sannella, and A. Tarlecki. Structure and representation in LF. Technical Report ECS--LFCS--89--75, Laboratory for Foundations of Computer Science, Edinburgh University, 1989. Abridged version in Proceedings of the Symposium on Logic in Computer Science, pages 226--237, Asilomar, California, June 1989.
No context found.
R. Harper. Introduction to standard ML. Technical Report ECS-LFCS-86-14, Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh, November 1986.
No context found.
R. Harper, D. MacQueen, and R. Milner. Standard ML. Report 86-2, University of Edinburgh, Laboratory for Foundations of Computer Science, 1986.
No context found.
R. Harper, R. Milner and M. Tofte, The Definition of Standard ML, Report ECS-LFCS-88-62, Laboratory for Foundations of Computer Science, University of Edinburgh, 1988.
No context found.
R.Harper, R.Milner and M.Tofte, The Definition of Standard ML, Report ECSLFCS -88-62, Laboratory for Foundations of Computer Science, University of Edinburgh, 1988.
No context found.
R. Harper. Introduction to Standard ML. Technical Report ECS-LFCS-86-14, Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh, November 1986.
No context found.
R. Harper, D. MacQueen, and R. Milner, \Standard ML," Laboratory for Foundations of Computer Science, Dept. of Computer Science, University of Edinburgh, ECS-LFCS-86-2 (1986).
First 50 documents Next 50
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