51 citations found. Retrieving documents...
C. Strachey. Fundamental concepts in programming languages. In Lecture Notes for International Summer School in Computer Programming, Copenhagen. Aug. 1967.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents  Next 50

A General Framework for Hindley/Milner Type Systems with.. - Sulzmann (2000)   (7 citations)  (Correct)

....at compile time. I refer to Section 3.2 for the technical presentation of this. On the other hand, a more expressive type system allows the set of well typed programs to be extended. For instance, a polymorphic type system allows more programs to be typed than a monomorphic type system. Strachey [Str67] was the rst to describe the concept of parametric polymorphism. The identity function is a standard example. Given any input value x the identity function returns x as an output value. What would be a possible type for the identity function Assuming we have a monomorphic type system, then ....

Christopher Strachey. Fundamental concepts in programming languages. unpublished lecture notes, August 1967.


Improving Polymorphic Type Explanations - Yang (2001)   (Correct)

....only ever be associated with values of that type. Strong monomorphic type systems enable simple static checks on programs for type consistency but unduly restrict programming exibility. In contrast, in polymorphic type systems, a construct may take di erent types in di erent contexts. Strachey [56] distinguished ad hoc from parameterized polymorphism. Weakly typed languages like LISP and Prolog, with ad hoc polymorphism, allow variables to be associated with arbitrary typed values without any statically enforced constraints. While this enables considerable exibility in programming, static ....

C. Strachey. Fundamental concepts in programming languages. Technical report, Copenhagen, 1967.


Representation Independence, Confinement and Access Control.. - Banerjee, Naumann   (Correct)

....e.g. simulation, logical relations, abstraction mappings, relational parametricity (e.g. 31, 35, 20, 8] Our main result, an abstraction theorem, says that simulation can be used for a rich fragment of Java. The result is given using a denotational semantics in the manner of Scott Strachey [39]. We apply the result to one of the Meyer Sieber equivalences [21] that was a longstanding challenge for the semantics of Algol like languages [30] We discuss relational proofs of the equivalence of security passing style [42] with the lazy stack inspection implementation of Java s ....

C. Strachey. Fundamental concepts in programming languages. Higher Order and Symbolic Computation, 13(1), 2000.


Semantic and Syntactic Approaches to Simulation Relations - Hannay, Katsumata, Sannella (2003)   (Correct)

....deduction, augmented with inference rules for relation symbols in the obvious way. There are standard axioms for equational reasoning implying extensionality for arrow and universal types. Parametric polymorphism requires all instances of a polymorphic functional to exhibit a uniform behaviour [Str67,BFSS90,Rey83]. We adopt relational parametricity [Rey83,MR91] A polymorphic functional instantiated at two related domains should give related instances. This is asserted by the schema Param : ##.#[#, #] f (##.#[#, eq ] f The logic with Param is sound; we have, e.g. the parametric per model of ....

C. Strachey. Fundamental concepts in programming languages. Lecture notes from the Intl. Summer School in Programming Languages, Copenhagen (1967).


Principals in Programming Languages: Technical Results - Zdancewic, Grossman (1999)   (Correct)

....They too distinguish between the execution environment code and applet code, similar to our use of principals, but they consider only the two agent case and take a less syntactic approach. There has been much work on representation independence and parametric polymorphism, as pioneered by Strachey [18] and Reynolds [17] Such notions have been incorporated into programming languages such as SML and Haskell [10, 14] and studied extensively in Girard s system F [5] Abadi, Cardelli, and Curien have taken a syntactic approach to parametricity by formalizing the logical relations arguments used in ....

C. Strachey. Fundamental concepts in programming languages. Unpublished Lecture Notes, Summer School in Computer Programming, August 1967.


Explaining Polymorphic Types - Jun, Michaelson, Trinder (2002)   (3 citations)  (Correct)

....ever be associated with values of that type. Strong monomorphic type systems enable simple static checks on programs for type consistency but unduly restrict programming flexibility. In contrast, in polymorphic type systems, a construct may take different types in different contexts. Strachey [1] distinguished ad hoc from parameterised polymorphism. Weakly typed languages like LISP and Prolog, with adhoc polymorphism, allow variables to be associated with arbitrary typed values without any statically enforced constraints. While this enables considerable flexibility in programming, static ....

Strachey, C. (2000) Fundamental Concepts in Programming Languages. Higher-Order and Symbolic Computation, Kluwer, 13:1&2, 11--49.


On the Representation of Roles in Object-Oriented and Conceptual .. - Steimann (2000)   (23 citations)  (Correct)

.... in the computing community, polymorphic usually denotes a property of an operator or function symbol, namely that its meaning [28] or associated behaviour [51] is determined by its operands or parameters (rather than the symbol alone) Strachey, who introduced the term to the computing field [68], made a distinction between what he called ad hoc polymorphism and parametric polymorphism. According to his definition, ad hoc polymorphism denotes the random reuse of symbols (such as letting denote number addition, string concatenation, and Boolean disjunction) it is further divided into ....

C. Strachey, Fundamental concepts in programming languages, in: Lecture Notes for International Summer School for Computer Programming, Copenhagen, 1967.


Syntactic Type Abstraction - Grossman, Morrisett, Zdancewic (2000)   (5 citations)  (Correct)

....contain polymorphic terms, because the proof in Section 3 does not account for the new extensions to the language. We expect that this requirement is actually not necessary. 6. RELATED WORK There has been much work on representation independence and parametric polymorphism, as pioneered by Strachey [1967] and Reynolds [1983] and more recently by Ma and Reynolds [1992] Such notions have been incorporated into programming languages such as SML [Milner et al. 1997] and Haskell [Peyton Jones et al. 1999] and studied extensively in Girard s System F [1989] The connection between type abstraction and ....

Strachey, C. 1967. Fundamental concepts in programming languages. Unpublished Lecture Notes, Summer School in Computer Programming.


Reflections on complexity of ML type reconstruction - Wierzbicki (1997)   (Correct)

....value to the reader interested especially in the interaction between theory and practice of ML type reconstruction. 1 Introduction The ML type system was developed by Robin Milner in the late seventies [26, 3] but was influenced by much older ideas, both of theoretical [11] as well as practical [29] nature. Implicit typing combined with so called let polymorphism gave a very powerful programming tool. At the same time efficiency of compilation seemed not to be significantly degraded. Time profiling showed that type reconstruction phase in ML compilers (e.g. Luca Cardelli s Edinburgh ML, ML ....

C. Strachey, Fundamental Concepts in Programming Languages, unpublished lecture notes, Int'l Summer School in Computer Programming, Copenhagen, August 1967.


Explaining Polymorphic Types - Jun, Michaelson, Trinder (2001)   (3 citations)  (Correct)

....ever be associated with values of that type. Strong monomorphic type systems enable simple static checks on programs for type consistency but unduly restrict programming flexibility. In contrast, in polymorphic type systems, a construct may take different types in different contexts. Strachey [18] distinguished ad hoc from parameterised polymorphism. Weakly typed languages like LISP and Prolog, with adhoc polymorphism, allow variables to be associated with arbitrary typed values without any statically enforced constraints. While this enables considerable 1 flexibility in programming, ....

Strachey, C. Fundamental Concepts in Programming Languages. In Notes for the International Summer School in Computer Programming, Copenhagen, 1967. 22


Comparison of IMPS, PVS and Larch with respect to Theory.. - Kammüller   (Correct)

....as in IMPS. But, all abstract types have to be declared as such from the beginning there is no explicit way to abstract over a once interpreted type. Besides that, PVS allows the overloading of declaration identifiers. But, we do not get by this an ad hoc polymorphism in the sense of [Str67] because the PVS overloading is restricted to different kinds (cf. Section 2.2.1) For example, it is impossible to define two s of, say, type [int, int int] and [set, set set] respectively, because both declarations belong to kind type. 2.2.4 Semantics of the Types For PVS we can only ....

C. Strachey. Fundamental Concepts in Programming Languages. In Lecture Notes from International Summer School in Computer Programming, Copenhagen, 1967.


Computational Divided Differencing and Divided-Difference.. - Reps, Rall (2000)   (Correct)

....in programming languages, such as parametric polymorphism (Milner, 1978) and inheritance polymorphism (Cardelli, 1984) operator overloading has always been something of a poor cousin. In the programminglanguages community, operator overloading is sometimes referred to as ad hoc polymorphism (Strachey, 2000), a term that has pejorative overtones. Nevertheless, in addition to its application in computational di erentiation and computational divided di erencing, operator overloading provides a convenient implementation mechanism for a wide variety of other interesting applications, including partial ....

Strachey, C.: 2000, `Fundamental Concepts in Programming Languages'. HigherOrder and Symbolic Computation 13(1/2), 1-49.


On the Classification of Binding Mechanisms - Morrison, Atkinson, Brown, Dearle (1990)   (7 citations)  (Correct)

....independently. For large scale, widely used or continuously used systems any alteration to the system should not necessarily require total rebuilding. A mechanism is required to control this rebuilding. 2. The nature of binding mechanisms Traditionally a binding consists of a name value pair [13]. That is, a value is bound to a name for some period during the evaluation of a program. This has been extended by Burstall Lampson to include a type [4] and further by Atkinson Morrison to constancy [2] A binding mechanism, therefore, has four components: a name, a value, a type and an ....

....alter during the period of the binding, or to mutable values (locations) where the binding does not change although the value refered to may. These kinds of bindings are traditionally known as R value (for immutables) and L value (for mutables) bindings in programming language semantics parlance [13]. The manifest constants of BCPL[11] or Pascal [15] are examples of R value bindings. On the other hand Pascal variables are examples of L value bindings where the compiler may bind the name to a location but not to a particular value since that may vary at run time. 2.2 When is the binding ....

Strachey, C. "Fundamental concepts in programming languages". Oxford University Press, Oxford (1967).


ProcessBase Reference Manual - Morrison, Balasubramaniam.. (1999)   (Correct)

....from one consistent state to the next. Execution against the persistent store is always restarted from the last stable state. The ProcessBase language is in the algol tradition as were its predecessors S algol [Mor79] PS algol [PS88] and Napier88 [MBC 96] Following the work of Strachey [Str67] and Tennent [Ten77] the languages obey the principles of correspondence, abstraction and type completeness. This makes for languages with few defining rules allowing no exceptions. It is the belief of the designers that such an approach to language design yields more powerful and less complex ....

....possessed by values, such as the operations defined over them. These sets or types partition the value space. The sets may be predefined, like int, or they may be formed by using one of the predefined type constructors, like view. The constructors obey the Principle of Data Type Completeness [Str67, Mor79]. That is, where a type may be used in a constructor, any type is legal without exception. This has two benefits. Firstly, since all the rules are very general and without exceptions, a very rich type system may be described using a small number of defining rules. This reduces the complexity of ....

[Article contains additional citation context not shown here]

Strachey, C. "Fundamental Concepts in Programming Languages". Oxford University Press, Oxford (1967).


The Requirement and Design Specification Language Spectrum - An.. - Broy, al. (1993)   (42 citations)  (Correct)

....typing every function has a unique sort. These languages are called monomorphic languages. In polymorphic languages, values are allowed to have a set of valid sorts. These values are called polymorphic values. Therefore polymorphic functions can be applied to operands of different sort. Strachey [Str67] distinguished between two major kinds of polymorphism. Parametric polymorphism is obtained when a function works uniformly on an infinite range of sorts with a common structure. Ad hoc polymorphism, in contrast, allows a function to work differently on finitely many sorts not having necessarily ....

C. Strachey. Fundamental concepts in programming languages. In Lecture Notes for International Summer School in Computer Programming, Copenhagen, 1967.


The Napier88 Persistent Programming Language and.. - Morrison, Connor.. (1999)   (2 citations)  (Correct)

....persistent environment, including hyper programming. The justification of the persistence design decisions is given in [53] and the advantages of the abstraction outlined in [4, 11, 15, 18, 34, 54 63] 2 Controlling Complexity 2. 1 Language Design McCarthy [64] van Wijngaarden [65] Strachey [66] and Tennent [67] all observed that expressive power in programming languages could be gained by separating the underlying concepts and allowing them to be combined by powerful composition rules. Strachey and later Tennent distilled these ideas into three principles for use in the design of ....

Strachey C. Fundamental Concepts in Programming Languages. Oxford University Press, Oxford, 1967


Compiling with Non-Parametric Polymorphism - Preliminary Report Robert   (Correct)

No context found.

C. Strachey. Fundamental concepts in programming languages. In Lecture Notes for International Summer School in Computer Programming, Copenhagen. Aug. 1967.


Variables as Resource in Hoare Logics - Matthew Parkinson And (2006)   (Correct)

No context found.

C. Strachey. Fundamental concepts in programming languages. Higher Order Symbolic Computation, 13(1-2):11-- 49, 2000. 10


A Functional Correspondence between Monadic Evaluators and.. - Ager (2004)   (1 citation)  (Correct)

No context found.

Christopher Strachey. Fundamental concepts in programming languages. Higher-Order and Symbolic Computation, 13(1/2):1--49, 2000.


Rewriting Logic Semantics: From Language Specifications To.. - Meseguer, Rosu (2004)   (Correct)

No context found.

C. Strachey. Fundamental concepts in programming languages. Higher-Order and Symbolic Computation, 13:11--49, 2000. 40


Safe Programming at the C Level of Abstraction - Grossman (2003)   (Correct)

No context found.

Christopher Strachey. Fundamental concepts in programming languages. Unpublished Lecture Notes, Summer School in Computer Programming, August 1967.


Extensible Language Implementation - Kolbly (2002)   (Correct)

No context found.

Christopher Strachey. Fundamental concepts in programming languages. Higher-Order and Symbolic Computation, 13(1/2):11-49, 2000.


The Logical Framework of - Radu Grosu Franz   (Correct)

No context found.

C. Strachey.Fundamental Concepts in Programming Languages. In Lecture Notes for International Summer School in Computer Programming, Copenhagen, 1967.


A Universally Polymorphic Specification Language - A Brief.. - Nazareth (1993)   (2 citations)  (Correct)

No context found.

C. Strachey.Fundamental Concepts in Programming Languages. In Lecture Notes for International Summer School in Computer Programming, Copenhagen, 1967.


Symbol Binding and Resolution in Programming - Languages David Lomet   (Correct)

No context found.

Strachey, C. Fundamental Concepts in Programming Languages. Oxford University Press, Oxford, UK (1967)

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