| Landin, P. J. "Correspondence between ALGOL-60 and Church's lambda notation Part I and II" Comm. ACM 8, 2 (February 1965) and Comm. ACM 8 3 (March 1965). |
....for successful communication with the user. However, as Wadler eloquently explains in his discussion of functional I O, correctly interleaving the sequence of interactive I O has long been a problem for applicative languages [Wadler 1997] The earliest pure approach, synchronous streams [Landin 1965; Stoye 1986] used for example in one version of Haskell, relied upon dependencies to implicitly control sequence. Unfortunately, it was often difficult for programmers to interleave inputs and outputs correctly with only this implicit mechanism for controlling sequence, resulting in waits for ....
P. J. Landin, "A Correspondence between ALGOL 60 and Church's lambda notation: Parts I and II," Communications of the ACM 8(2,3) February and March 1965, 89101, 158-165.
....type theory behind object languages. ffl The language which is developed in this report contains a collection of OOPL mechanisms which are loosely based upon those of the following real life OOPLs: Smalltalk [15] C [28] Beta [20] Trellis Owl [27] Eiffel [24] and Self [29] ffl Landin [21] [22] was the first to propose functional languages as the basis for general programming language analysis. This work in this report originated in a GEC Marconi sponsored PhD undertaken by the author at Queen Mary and Westfield College, University of London, 1989 1994 [6] An edited version of this ....
Landin, P. 1965 A Correspondence between Algol 60 and Church's lambda notation: Part I. Comm. of the ACM 8 2.
....perform alias analysis. Given the hypothesis that calculi represent a universal model of (sequential) computation then the result is a general framework for performing alias analysis with respect to any (sequential) programming language. The initial point of departure is Landin s sharing machine [5] which enriches a calculus with sharing and update features and presents a semantics in terms of a state transition machine. Although the sharing machine is suitable as a general model of imperative computation, it is unwieldy when used to prove program properties. We show that a transformation ....
Landin, P. J. 1965 A Correspondence Between Algol 60 and Church's Lambda-Notation. Communications of the ACM, 8, pp 89 -- 101.
....expression, passed to some object which may or may not force it using the value selector [29] 3.2. LAZY DATA STRUCTURES The second major area of application of delayed evaluation is concerned with constructing data objects whose elements are not evaluated until they are needed. P.J. Landin [16] first originated the idea of a nonstrict data structure; the idea mostly languished until the publication of Friedman and Wise s CONS should not evaluate its arguments in 1976 [9] The essential benefit of using delayed data structures is simple in concept: it separates the time at which a data ....
....the task down more naturally, by first building the tree, and then pruning it during the search. 3.2.2. Streams In 1965, P. J. Landin proposed the idea of a head strict CONS cell, in which the first argument is evaluated by CONS, and the second argument delayed until forced by using CDR [16]. Such a CONS would allow the construction of delayed lists. This idea evolved into the concept of streams . A stream has the same interface as a regular list: a constructor (called CONS STREAM, for instance, in Scheme) which takes two arguments; and two selectors: a function HEAD which ....
Landin, P. J., 1965. A correspondence between ALGOL-60 and Church's lambda notation, part I. In Communications of the ACM, v.8, pp. 89-101.
....dependent on the parent s children or on other descendants. Delegation is a variation on continuation a part of the Scheme programming language and of other functional computing. Delegation allows for a simple implementation of proper tail calls, non strict evaluation, conditional items, streams and of other features of functional computing. 1 Introduction Delegation is an alternative implementation of routines. Delegation and some of its consequences are described in this presentation. These are some of the many results of the Task System and Item Architecture (TSIA) a project in ....
....an application to execute in terms of tasks. This is described in section 2. Such an execution requires an alternative implementation of routines: delegation is described in section 3. Delegation allows for a simple implementation of proper tail calls, non strict evaluation, conditional items and streams, as described in sections 4, 5, 6 and 7. 2 An Execution in Terms of Tasks A TSIA requires an application to execute in terms of tasks. A task can consist of a computer, an instruction, data and perhaps other items. An item can be of arbitrary size and complexity. For example, the instruction ....
[Article contains additional citation context not shown here]
P. J. Landin. "A Correspondence Between ALGOL 60 and Church's Lambda-Notation: Part I", Communications, Vol. 8, No. 2, Feb. 1965, pp. 89-101.
....developments to Dialect, of course) While it is possible to create function valued functions in Refine, it remains for Refine to incorporate the consequences of this capability. Lazily evaluated [12] function arguments should be an available option, and infinite length sequences ( streams [13]) made available. Their implementation would require little more than syntactic sugaring. In similar vein, restrictions on the use of functions should be avoided, e.g. currently functions may not be stored in the object base. While there seem to be technical reasons for this restriction, we ....
Landin, P.J., "A Correspondence Between ALGOL 60 and Church's LambdaNotation: Part I", CACM, vol. 8, no. 2, pp. 89-101 (1965).
.... evaluation and infinite data While as shown above it is possible to create function valued functions in Refine, it remains for Refine actually to incorporate the consequences of this capability, notably lazy evaluation and the associated ability to handle infinite data structures (e.g. streams [12]) the importance of both of which in specification level programming is demonstrable [13] Polymorphism The use of any type to simulate polymorphism as above is insecure, in particular preventing static type checking of correct usage of a polymorphic function or data structure. 12 4.2 ....
Landin, P.J., "A Correspondence Between ALGOL 60 and Church's LambdaNotation: Part I", CACM, vol. 8, no. 2, pp. 89-101 (1965).
No context found.
Landin, P. J. "Correspondence between ALGOL-60 and Church's lambda notation Part I and II" Comm. ACM 8, 2 (February 1965) and Comm. ACM 8 3 (March 1965).
No context found.
Landin, P. J., "A Correspondence between ALGOL 60 and Church's Lambda Notation, Part I," CACM 8, pp. 89-101 (1965).
No context found.
PJ Landin [March 1965], "A correspondence between Algol 60 and Church's lambda calculus," Comm ACM 8, 158--165.
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