37 citations found. Retrieving documents...
R. Burstall and B. W. Lampson. A kernel language for abstract data types and modules. In Semantics of Data Types, Springer-Verlag, 1984.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

A Type-Theoretic Approach to Higher-Order Modules with Sharing - Harper, Lillibridge (1994)   (171 citations)  (Correct)

.... Type Theoretic Approach to Higher Order Modules with Sharing Robert Harper t Mark Lillibridge School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 3891 Abstract The design of a module system for constructing and main taining large programs is a difficult task that raises a number of theoretical and practical issues. A fundamental issue is the management of the flow of information between program units at compile time via the notion of ....

....and therefore the system supports higher order modules and some object oriented This work was sponsored by the Advanced Research Projects Agency, CSTO, under the title The Fox Project: Advanced Development of Systems Software , ARPA Order No. 8313, issued by ESD AVS under Contract No. F19628 91 C 0168. IElectronic mail address: rhcs. cmu. edu. Electronic mall address: mdlcs. cmu. edu. Perm ss;on to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage. the ACM copyright notice end the title of the ....

[Article contains additional citation context not shown here]

Rod Burstall and Butler Lampson. A kernel language for abstract data types and modules. In Kahn et al.


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

....with the conceptually hierarchical structure of the system. As an alternative, MacQueen advocates the use of dependent types as a basis for modular programming, drawing inspiration from the novel adoption of dependent types in Burstall and Lampson s experimental modules language Pebble [4, 5]. MacQueen sketches the language DL, which is presented as a de sugared version of the Standard ML Modules language originally proposed by him in [19] DL exploits a combination of strong higher order existentials and first order quantified types and, similar to Standard ML, exhibits a ....

R. M. Burstall and B. Lampson. A kernel language for abstract data types and modules. In Semantics of Data Types, number 173 in LNCS. SpringerVerlag, 1984.


Introducing OBJ - Goguen, Winkler, Meseguer.. (1993)   (69 citations)  (Correct)

.... programming , in which evaluating (what we call) a module expression is indeed a kind of expression evaluation; in particular, there are no variables, no assignments, and no effects, side or otherwise, just functions applied to arguments; this can provide a formal basis for software reuse [12]. However, there are also some significant differences between ordinary functional programming and module expression evaluation in parameterized programming, including semantic interfaces, the use of views, and evaluation in context , producing not just a single module, but also embedding it in ....

Rod Burstall and Butler Lampson. A kernel language for abstract data types and modules. In Giles Kahn, David MacQueen, and Gordon Plotkin, editors, Proceedings, International Symposium on the Semantics of Data Types, volume 173 of Lecture Notes in Computer Science, pages 1--50. Springer, 1984.


Contractual Types - Nierstrasz   (Correct)

....need be captured by the environment in which it is evaluated. Unlike Nishizaki s environment calculus, ## only supports a simple type system. Aside from Piccola, various other languages have supported explicit environments. Scheme [Dyb87] is the best known, and is dynamically typed. Pebble [BL84] is the other well known example, and is statically typed. Quest [Car91] was inspired by Pebble, and supports explicit import and export of first class modules. The contracts expressed by contractual types are technically very weak, and do not capture behavioural contracts, such as pre or ....

Rod Burstall and Butler Lampson. A kernel language for abstract data types and modules. Information and Computation, 76(2/3), 1984. Also appeared in Proceedings of the International Symposium on Semantics of Data Types, Springer, LNCS (1984), and as SRC Research Report 1.


A Type-Theoretic Approach to Higher-Order Modules with Sharing - Harper, Lillibridge (1994)   (171 citations)  (Correct)

....could use one particular hash table implementation for small tables and another for large ones. 5 Related Work An early influential attempt to give a comprehensive type theoretic analysis of modularity and abstraction was undertaken by Burstall and Lampson with the experimental language Pebble [5]. Their work stresses the role of dependent types and the mechanisms required to support abstraction, but does not address the problem of controlling the degree of abstraction. In particular, Pebble supports type and value bindings as primitive notions, but with an opaque typing discipline, in ....

Rod Burstall and Butler Lampson. A kernel language for abstract data types and modules. In Kahn et al.


Typechecking is Undecidable When 'type' is a Type - Reinhold (1989)   (Correct)

....paradox can be avoided either by retreating to weak dependent pairs, or by settling for a less flexible form of polymorphism [Mitchell : Harper 1988] Kernel languages. Our interest in programming languages with dependent function types and the type of all types was originally sparked by [Burstall Lampson 1984], which describes Pebble, a kernel language for abstract data types and modules. Pebble is a richer language than the X calculus; it supports dependent function types and the type of all types, but it also includes recursion, integer and boolean base types, tuple types, and strong dependent ....

R. Burstall and B. W. Lampson. A kernel language for abstract data types and modules. In Kahn, MacQueen, and Plotkin, editors, Semantics of Data Types, pages 1-50, Volume 173 of Lecture Notes in Computer Science, Springer-Verlag, Berlin, June 1984.


Types as Theories - Joseph Goguen Programming (1991)   (21 citations)  (Correct)

....some variant thereof, such as domains) However, many advocates of this view are more proof theoretically inclined, and hence might resist such denotations. Perhaps the best known work along this line is Martin Lof s type theory [44] which also provides dependent types, as implemented in Pebble [5] and other languages. Note that type theory is not a general theory of types, but rather a specific intuitionistic logic which provides one specific notion of type) Although much effort has been put into the types as sets tradition, perhaps because it seems easier to understand, it ....

Rod Burstall and Butler Lampson. A kernel language for abstract data types and modules. In Giles Kahn, David MacQueen, and Gordon Plotkin, editors, Proceedings, International Symposium on the Semantics of Data Types, volume 173 of Lecture Notes in Computer Science, pages 1--50. Springer, 1984. 23


Architectural specifications in CASL - Bidoit, Sannella, al. (1999)   (4 citations)  (Correct)

....are to be combined. Such architectural specifications are aimed at the implementation modular structure of the system, much in the style of the features for programming in the large using generic modules in modern programming languages like Standard ML [Pau96] cf. Burstall and Lampson s Pebble [BL88] This is related to but is not the same as software architecture in the sense of [AG97] which deals with the organization of software into components and connectors, focusing on the interaction relationships between modules (the latter to be considered when specifications of reactive modules ....

R. Burstall and B. Lampson. A kernel language for abstract data types and modules. Information and Computation 76:278--346 (1988).


Using Dependent Types to Express Modular Structure - MacQueen (1986)   (91 citations)  (Correct)

....of realizing polymorphism by abstraction with respect to types. ML is basically a restricted form of second order lambda calculus, while Russell employs the more general notion of dependent types (Martin Lo f s general product and sum, defined in 2) The Pebble language of Burstall and Lampson [BL84, Bur84] also provides dependent types, but in a somewhat purer form. Finally, Huet and Coquand s Calculus of Constructions is another variant of typed lambda calculus using the general product dependent type. It also provides a form of metatype (or type of types) called a context , that characterizes ....

....Type 1 , including their degenerate forms and ) and perhaps other constructions such as recursion. 7 4 General product types are also called indexed products , Cartesian products, or dependent function spaces. Other notations include x:A B(x) CZ84] x:A B(x) [BL84], and x: A.B(x) from the formulas as types isomorphism) 5 A closed version of the general sum, analogous to SOL s existential type, can be derived from the general product [Pra65] but the open version used here and in ITT appears to be an independent primitive notion. 6 General sums ....

[Article contains additional citation context not shown here]

R. M. Burstall and B. Lampson, A kernel language for abstract data types and modules, in Semantics of Data Types, G. Kahn, D. B. MacQueen, and G. Plotkin, eds., LNCS, Vol 173, Springer-Verlag, Berlin, 1984.


Towards a Practical Programming Language Based on the .. - Lee, Leone.. (1989)   (2 citations)  (Correct)

....FX 89 [13] for example, ML s type system is essentially extended with open and close constructs that provide a means of converting between explicitly quantified and generic types. Other design efforts which also extend a basic type system with some form of type abstraction include Pebble [5] and Russell [9] We are taking an alternative approach in which a core calculus with a type system possessing the desired characteristics (in this case the ability to abstract and quantify over types explicitly) is extended to a practical programming language. The extensions must be made ....

Rod Burstall and Butler Lampson. A kernel language for abstract data types and modules. In G. Kahn, D. MacQueen, and G. Plotkin, editors, Semantics of Data Types, pages 1--50. Springer-Verlag, 1984.


A Polymorphic Language With First-Class Modules - Ophel (1995)   (2 citations)  (Correct)

.... B of a . val sB : datatype a = A of b . and b = B of a . Each module gives the transparent definition of the datatypes a and b which are equivalent as the language has non generative datatypes. 5 Related work The languages Pebble[3], Russell[2] and Poly[9] explored polymorphism by treating types as data values. These languages have been very influential but all suffered from a lack of formal foundation for defining the semantics of the language. The Ada module system has packages and generics. Generics can take values, ....

R. Burstall and B. Lampson. A kernel language for abstract data types and modules. In Semantics of Data Types, pages 1--50. Springer-Verlag Lecture Notes In Computer Science 173, 1984.


Type Checking with Universes - Harper, Pollack (1991)   (6 citations)  (Correct)

....and to type theories such as Constable s V3. 1 Introduction A number of formulations of intuitionistic type theory have been considered as a basis for studying machine assisted formal proof development, and as a theoretical foundation for the study of programming languages (see, for example, [16, 46, 34, 36, 37, 9, 10, 11, 14, 2, 4, 19], to name but a few. One such system, the Calculus of Constructions (CC) was introduced by Coquand and Huet as a comprehensive basis for the formalization of constructive mathematics. 11, 14] CC may be viewed as the calculus associated, via the propositions as types principle [24] with ....

.... is by now widely recognized [36, 10] that the appropriate type theoretic representation of mathematical structures is as elements of strong sum types 1 introduced by Martin Lof [35, 36, 37] and Howard [24] Strong sums have also been used to model modularity constructs in programming languages [33, 41, 2, 4]. Unfortunately, strong sums are, in a sense, incompatible with impredicativity [12, 23, 41] As a result, it is necessary to extend the calculus with a level of types, and to postulate the closure of this additional level under the formation of strong sums. Mathematical structures are then ....

[Article contains additional citation context not shown here]

Rod Burstall and Butler Lampson. A kernel language for abstract data types and modules. In Kahn et al. [28], pages 1--50.


Higher Order Functions Considered Unnecessary for Higher Order.. - Goguen (1990)   (20 citations)  (Correct)

....are an entirely new feature, not found in the calculus. These points perhaps deserve some elaboration. First, they suggest it might be awkward to code up parameterized programming into some form of denotational semantics (e.g. in the style of [65] or type theory (e.g. in the style of Pebble [11], PX [54] or Martin Lof s type theory [66] Even if we had such an encoding, it would not be the sort of notation that programers should have to deal with in practice, but would be somewhat like trying to program with Godel numbers; however, it could be valuable in theoretical studies. Of ....

Rod Burstall and Butler Lampson. A kernel language for abstract data types and modules. In Proceedings, International Symposium on the Semantics of Data Types, volume 173 of Lecture Notes in Computer Science, pages 1--50. Springer-Verlag, 1984.


A Polymorphic lambda-calculus with Type:Type - Cardelli (1986)   (4 citations)  (Correct)

....typechecking, philosophically dubious, and often (when formalized) mathematically inconsistent. All the existing programming languages with Type:Type have been designed on shaky grounds, and built without much investigation of the really fundamental difficulties that have to be resolved. Pebble [Burstall 84] is probably the first serious attempt at defining a programming language with a consistent type structure based on dependent types and the notion of Type:Type. Pebble s semantics and typechecking strategy are defined operationally, and leave open some semantic questions. This paper describes a ....

.... problems were solved by McCracken [McCracken 79] Dependent types come from intuitionistic type theory [Martin Lf 80] and their denotational semantics is studied by Barendregt and Rezus [Barendregt 83] Rezus 85] Relevant languages have been proposed such as Russell [Boehm 80] and Pebble [Burstall 84] Relevant formal systems have been widely studied; they include intuitionistic logic and type theory [Scott 70] Martin Lf 80] second order lambda calculus [Girard 72] Reynolds 74] Fortune 83] Bruce 84] Automath [de Bruijn 80] Barendregt 83] the theory of constructions [Coquand 85a, ....

R.Burstall, B.Lampson, A kernel language for abstract data types and modules, in Sematics of Data Types, Lecture Notes in Computer Science 173, Springer-Verlag, 1984.


Phase Distinctions in Type Theory - Cardelli (1988)   (21 citations)  (Correct)

....polymorphism (e.g. in ML [Milner 84] and abstract types [Mitchell 85] In all these languages, phases can be distinguished syntactically: there are separate syntactic sorts of type expressions and value expressions. Phase distinction are however lost when moving to languages like Pebble [Burstall 84a] based on dependent types [Martin Lf 73] A dependent type is a type which may depend upon the value of some expression. This dependency directly causes phase mixing, unless one is careful to distinguish between compile time values (e.g. given by constant expressions in Pascal) and run time ....

R.M.Burstall, B.Lampson, A kernel language for abstract data types and modules, in Semantics of Data Types, Lecture Notes in Computer Science 173, Springer-Verlag, 1984.


Higher-Order Modules and the Phase Distinction - Harper, Mitchell, Moggi (1990)   (76 citations)  (Correct)

....be useful for supporting separate compilation (roughly, a separately compilable module is abstracted with respect to the functors used within it. Furthermore, higher order functors may be used as an alternative to ML s sharing speci cations to ensure that program units are coherently combined [BL84, Mac86] Unfortunately, the extension of the module facility to higher orders results in violations of the phase distinction. Speci cally, since structures are mixed phase entities, consisting of a compile time part and a run time part, the usual functional interpretation of functors ....

R. Burstall and B. Lampson. A kernel language for abstract data types and modules. In Proc. Int. Symp. on Semantics of Data Types, Sophia-Antipolis (France), Springer LNCS 173, pages 1-50, 1984.


Phase Distinctions in Type Theory - Cardelli (1988)   (21 citations)  (Correct)

....polymorphism (e.g. in ML [Milner 84] and abstract types [Mitchell 85] In all these languages, phases can be distinguished syntactically: there are separate syntactic sorts of type expressions and value expressions. Phase distinction are however lost when moving to languages like Pebble [Burstall 84a] based on dependent types [Martin Lf 73] A dependent type is a type which may depend upon the value of some expression. This dependency directly causes phase mixing, unless one is careful to distinguish between compile time values (e.g. given by constant expressions in Pascal) and run time ....

R.M.Burstall, B.Lampson, A kernel language for abstract data types and modules, in Semantics of Data Types, Lecture Notes in Computer Science 173, Springer-Verlag, 1984.


Finitely Generated Rank-Ordered Sets as a Model for Type: Type - Spreen   (Correct)

.... that the collection of all types is itself a type (cf. e.g. 3] In the recent systems by Martin Lof, in Girard s systems F and F , and Coquand Huet s Calculus of Construction this assumption is carefully avoided, whereas in programming languages like those studied by Burstall and Lampson [5], or by Cardelli [6] it is explicitly used. Models of such calculi with the axiom Type: Type have been constructed using finitary retractions and or projections over certain domains [2, 11] In the present paper we present a model based on rank ordered sets for a very simple type system, the ....

R.M. Burstall and B. Lampson, "A kernel language for abstract data types and modules ", in Symposium on Semantics of Data Types , eds. G. Kahn, D.B. MacQueen and G. Plotkin, Lecture Notes in Computer Science, Vol. 173 (Springer, Berlin, 1984) pp. 1--50.


Type Theory for Programming Languages - Harper (1994)   (Correct)

....then there exists 0 2 such that e(v) 0 2 . Thus applications of functors to values are always well formed, provided that the types match up suitably. 10.6 References The type theoretic approach to modularity in programming languages was pioneered by MacQueen [39] and Burstall and Lampson [5]. MacQueen s approach was subsequently developed by Harper and Mitchell [35] who suggested a comprehensive type theory to encompass all of Standard ML. This suggestion was further refined by Harper, Mitchell, and Moggi [36] to account for the phase 99 distinction in type theory [6] These calculi ....

Rod Burstall and Butler Lampson. A kernel language for abstract data types and modules. In Gilles Kahn, David MacQueen, and Gordon Plotkin, editors, Semantics of Data Types, volume 173 of Lecture Notes in Computer Science, pages 1--50. Springer-Verlag, June 1984.


Algebraic System Specification and Development.. - Cerioli, Gogolla, .. (1997)   (Correct)

....structures to which it may be applied, and an output signature describing the result of an application. The development of programs from specifications is simplified by the fact that the mechanisms used for structuring specifications and programs are identical. A related module system is Pebble [185], which abandons the distinction between type and value. This gives more power and simplifies matters but as a consequence it sacrifices guaranteed termination for type checking. A similar powerful system based on type theory with decidable type checking is ECC [626, 628] The application of ECC ....

R. M. Burstall and B. Lampson. A kernel language for abstract data types and modules. Information and Computation, 76:278--346, 1988.


Towards a Set-Theoretic Type Theory - Borzyszkowski, Kubiak.. (1988)   (1 citation)  (Correct)

....out superobjects. This reflects our belief that the first two or three levels are in fact all that is needed for most applications. 6.2 Relation to other type systems There are basically three different approaches to more sophisticated type systems: 1. operational as in Pebble language (see [Burstall Lampson] 2. constructive Martin Lof, Girard, Nuprl 3. model theoretic ML s and our approach. The important feature of the Pebble type system is that TYPE:TYPE. This exludes it from set theoretic scope (Russell s paradox) Somewhere between 1 and 2 is Cardelli s type system which, while including ....

Rod Burstall and B. Lampson. "A kernel language for abstract data types and modules". In Kahn G., MacQueen D.B. and G. Plotkin eds. Semantics of Data Types, LNCS 173, 1984.


Higher-Order Modules and the Phase Distinction - Harper, Mitchell, Moggi (1990)   (76 citations)  (Correct)

....clear how to statically type check versions of XML with certain additional type constructors or with higher order modules. This is particularly unfortunate for higher order modules, since these seem useful in supporting separate compilation or as an alternative to ML s sharing specifications [BL84, Mac86] In this paper, we redesign XML so that compile time type checking is an intrinsic part of the type theoretic framework. Since it is difficult to characterize the difference between compile time and run time precisely, we focus on establishing a phase distinction, in the terminology of ....

R. Burstall and B. Lampson. A kernel language for abstract data types and modules. In Proc. Int. Symp. on Semantics of Data Types, Sophia-Antipolis (France), Springer LNCS 173, pages 1--50, 1984.


Static Dependent Types for First Class Modules - Mark Sheldon And   (Correct)

No context found.

R. Burstall and B. W. Lampson. A kernel language for abstract data types and modules. In Semantics of Data Types, Springer-Verlag, 1984.


Contractual Types - Oscar Nierstrasz Institut   (Correct)

No context found.

Rod Burstall and Butler Lampson. A kernel language for abstract data types and modules. Information and Computation, 76(2/3), 1984.


A Calculus for Modeling Software Components - Nierstrasz, Achermann (2002)   (Correct)

No context found.

Rod Burstall and Butler Lampson. A kernel language for abstract data types and modules. Information and Computation, 76(2/3), 1984. Also appeared in Proceedings of the International Symposium on Semantics of Data Types, Springer, LNCS (1984), and as SRC Research Report 1.

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