32 citations found. Retrieving documents...
Henderson, P.: \Functional Programming: Application and Implementation.";

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

Data Structure Management in a Data Flow Computer System - Guharoy (1985)   (Correct)

....are produced in a data driven manner, allowing the user to write programs in VIMVAL which deal with potentially infinite streams. VIM uses suspensions to implement demand driven evaluation of streams. Suspension mechanisms have been used to implement infinite data structures by Henderson [20], Friedman and Wise [16] etc. In VIM. a suspension contains the address of an instruction, consisting of the uid of the activation template of the instruction and its index in the template. When a SELECT instruction tries to access an element which is a suspension. the suspension is replaced ....

Henderson, P.. Functional Programming: Application and Implementation. Prentice/Hall International, Englewood Cliffs, New Jersey, 1980.


The Lazy Lambda Calculus - Abramsky (1990)   (176 citations)  (Correct)

....as the standard theory ) as that work shows. This, then, is the commonly accepted foundation for functional programming; more precisely, for the lazy functional languages, which represent the mainstream of current functional programming practice. Examples: MIRANDA [Tur85] LML [Aug84] LISPKIT [Hen80], ORWELL [Wad85] PONDER [Fai85] TALE [BvL86] But do these languages as de ned and implemented actually evaluate terms to head normal form To the best of my knowledge, not a single one of them does so. Instead, they evaluate to weak head normal form, i.e. they do not evaluate under ....

P. Henderson. Functional Programming: Applications and Implementation. Prentice Hall, 1980.


Computational Interpretations of Linear Logic - Abramsky (1993)   (225 citations)  (Correct)

....at the higher level of the intuitionistic types. One might say that this gives a rational reconstruction, in logical terms, of the standard method for implementing lazy evaluation on top of an eager evaluation strategy, as introduced by Landin [Lan65] and used in the SECD and CAM machines [Hen80, Hue90]. This idea is standardly modelled in denotational semantics by lifting [Plo85] i.e. A ) B = A B where A B is the type of partial (or alternatively strict) functions. This account requires the presence of divergent programs; the Linear decomposition does not. With these motivating ....

....of the calculus do exist, the implementation we shall describe is purely sequential. In any case, the potential for parallel execution is much greater for Classical Linear Logic, which is treated in Sections 6 8. We will follow the very lucid exposition of the (standard) SECD machine given in [Hen80] fairly closely. The machine is based on a list structured store. We shall use Turner s notation [Tur85] for list operations: for the empty list x : l for infix cons [x 1 ; x n ] for x 1 : Delta Delta Delta : x n : The objects manipulated by the machine are inductively ....

P. Henderson. Functional Programming: Applications and Implementation. Prentice Hall, 1980.


Adaptive Pattern Matching - Sekar, Ramesh (1992)   (9 citations)  (Correct)

....pattern matching in ML) are computationally hard in the presence of type disciplines, whereas they can be solved efficiently in the untyped setting. 1 Introduction Pattern matching is a fundamental 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. ....

P. Henderson, Functional Programming: Application and Implementation, Prentice-Hall, 1980.


The Impact of the Lambda Calculus in Logic and Computer Science - Barendregt (1997)   (8 citations)  (Correct)

....an abstract machine the SECD machine for the implementation of reduction. Many implementations of eager functional languages, including some versions of LISP, have used, or are still using, this computational model. The SECD machine also can be modelled for lazy functional languages, see [57]. Another way of implementing functional languages is based on the so called CPS translation. This was introduced in [96] and used in a compilers by [109] and [3] See also [93] and [97] The first important typed functional language with an eager evaluation strategy is Standard ML, see [84] ....

P. Henderson, Functional programming: Application and implementation, PrenticeHall, Englewood Cli#s, New Jersey, 1980.


(A Model of Object-Oriented Persistent Programming Language) - Ae   (Correct)

.... # #### #j . im ahHK# svdf ###9L### # # ae #, #)# ### ae # ## svdf9L 4 #UW #### ffi.# cgsv# him #2Mffi #j . CK#,#ae ### ae # ### ae,####m# # ### #ae im # # ### j # ae # #9L ae,#### ### 6LOE # j . lisp# mapcar(L,F)ffi 4 lnae,# # 9M j [13]. ####ae ### CLU9L) HK# # ( # #,# #HL, # #ae,# # ) # #9L) ### # #j . U[ UW i ffi ) svdf9L zj # 2L ###m# # f###, j ### JK#m# ###af### 9M dfffi.# ##### ### ffi.# #### 9#ffi ##j . HL OE 7L ah###### #( ###j #, #.#ae,# # ae ## # # #ae,#chim ### ### SQL###, ### # # ....

Peter Henderson. Functional Programming : Application And Implementation. Prentice Hall, 1980.


Daisy, DSI and LiMP - Issues in Architecture for Suspending.. - Johnson   (Correct)

....or lists ordered by need [FrWi80a, FiFr84 (Chapter 5) The understanding is that the ordering is determined by concurrent evaluation: The suspensions really tasks now that comprise a fern s content compete for promotion in list. Though the evolution of suspensions from delay like objects [He80] to future like objects [Ha85] is evident in published work, the mechanics suspending construction its implications for architecture is not. Elements of architecture are scattered among articles about applicative language and style, leading Vegdahl s taxonomy to list Friedman and Wise s ....

Peter Henderson. Functional Programming: Application and Implementation. Prentice-Hall, Englewood Cliffs, New Jersey, 1980


How to measure reliability in an Erlang System - Danielsson, Olsson (1998)   (Correct)

....idea was to develop a language especially for telecommunication systems. Erlang s roots come from Prolog, Strand, Parlog and Eri Pascal and it is a functional language which supports parallelism. A functional language is a language in which programs are constructed from a large number of functions [20]. The key features of Erlang are: Concurrency Erlang has a process based model of concurrency with asynchronous message passing. This makes it possible for the user to have full control over the sequential flow of execution and at the same time separate different tasks in different independent ....

P. Henderson, "Functional Programming Application and Implementation", Prentice Hall, ISBN:0133315797, 1980,


Pattern Recognition of Noisy Sequences of Behavioural Events Using .. - Clark (1994)   (Correct)

....will execute a different parse thread and will contain its own confidence level. The machines are controlled by a program which can decide whether to continue executing the machine based on its current confidence level. The SECD [15] machine gives an operational semantics to the calculus. In [10] the SECD machine is extended with primitives for nondeterminstic computation. We go further and define an IPARG 2 machine which includes primitives for non determinism but also includes control information which represents the current level of confidence in the computation. Like the SECD ....

Henderson, P. (1980) Functional Programming Applications and Implementation. Prentice-Hall International.


Modeling Sharing and Recursion for Weak Reduction.. - Zine-El-Abidine..   (Correct)

....we return to this subtle point in the paper. 5 a specific strategy and makes the mentioned duplication implicit in the data structures. Later abstract machines include some variation in the used reduction strategy but remain dedicated to one (some early, seminal examples are Plotkin 1977, Henderson 1980, Cardelli 1983) The first issue, sharing to avoid duplication, was addressed already by Wadsworth (1971) who proposed graph reduction which is the simple idea that duplication should be delayed as long as possible by representing subterms of common origin by identical subgraphs. This way all ....

Henderson, P. (1980), Functional Programming---Application and Implementation, Prentice-Hall.


Deterministic Concurrency - Carter (1994)   (2 citations)  (Correct)

....that are currently active at a particular point in a program s execution. This is similar to the need for complex stack frames in procedural languages like Pascal, that allow for the nested definition of functions. Although the early substitution based SECD machine (Landin [42] Henderson [17]) incorporated such an environment, the conventional wisdom has been to try and factor out such complexity. This view may change as the design of the STG machine [38] cleanly CHAPTER 4. IMPLEMENTING FUNCTIONAL LANGUAGES 36 integrates nested environments. However, the Gofer run time system is less ....

P. Henderson. Functional Programming: applications and implementation. PrenticeHall, 1980.


Compiling a Functional Language - Cardelli (1984)   (42 citations)  (Correct)

....to AS, and defines the top level environment of execution for use in interactive systems. At the beginning of execution, EP is the same as AP, but it normally grows because of top level definitions. The semantics of the abstract machine is given operationally by state transitions [Plotkin 81, Henderson 80] A machine state is represented by a tuple: AS, RS, FR, PR, TS, ES, M) For any stack S (i.e. AS, RS, TS or ES) we write S.x:t for the operation of pushing a cell x of type t on the top of S (t may contain type variables a, b, etc. The empty stack is and S.x:t is a stack iff S is a stack. ....

P.Henderson: "Functional Programming, Application and Implementation", Prentice-Hall, 1980.


Environments as First Class Objects - Gelernter, Jagannathan, London (1987)   (6 citations)  (Correct)

.... are treated as meta linguistic data type and to languages that support closures explicitly such as ZetaLisp[15] Insofar as the notion of an environment is integral to the implementation of higher order functions, Symmetric Lisp also has some similarities with functional or applicative languages[17, 24] but differs significantly from all these languages in ways discussed earlier. The ALPHA form in Symmetric Lisp serves some of the same roles as the package construct in Ada[1] or the module construct in Modula[28] insofar as all three constructs are used to build local namespaces for information ....

P. Henderson. Functional Programming: Application and Implementation. Prentice/Hall International, Englewood Cliffs, New Jersey, 1980.


Proving Memory Management Invariants for a Language.. - Chirimar, Gunter, Riecke (1992)   (16 citations)  (Correct)

....described more precisely in Section 4. The reference counting model and corresponding evaluation of terms should seem quite familiar, but like the SECD machine we probably would not implement the model directly : for example, storable values in both models may occupy more than one word of storage [11, 17, 22]. The SECD machine is, in some ways, easier to implement: our rules implicitly involve stack operations, e.g. the evaluation of the body of succ in the rule above, which the SECD machine would make explicit. On the other hand, implementation details lacking from the SECD model have been made ....

Peter Henderson. Functional Programming: Application and Implementation. Prentice-Hall, 1980.


Combinatory Reduction Systems with Explicit Substitution that.. - Bloo, Rose (1996)   (15 citations)  (Correct)

....of fi reduction steps required to model a computation does not correspond to the work a computer has to do. The traditional solution to this problem has been to assume a fixed reduction strategy, and then invent abstract machines realising it in an operationally realistic way (Landin 1964, Henderson 1980). This is unsatisfying because it makes reasoning about the relative operational behaviour of reduction strategies difficult, e.g. for showing the correctness of program transformations. A better solution in this respect is the study of explicit (or stepwise) substitution (Abadi, Cardelli, Curien ....

Henderson, P. (1980). Functional Programming---Application and Implementation.


The Impact of the Lambda Calculus in Logic and Computer Science - Barendregt (1997)   (8 citations)  (Correct)

....an abstract machine the SECD machine for the implementation of reduction. Many implementations of eager functional languages, including some versions of LISP, have used, or are still using, this computational model. The SECD machine also can be modelled for lazy functional languages, see Henderson [1980]. Another way of implementing functional languages is based on the so called CPS translation. This was introduced in Reynolds [1972] and used in a compilers by Steele Jr. 1978] and Appel [1992] See also Plotkin [1975] and Reynolds [1993] The first important typed functional language with an ....

Henderson, P. [1980] Functional Programming: Application and Implementation, Prentice-Hall, Englewood Cliffs, New Jersey.


Computational Interpretations of Linear Logic - Abramsky (1993)   (225 citations)  (Correct)

....at the higher level of the intuitionistic types. One might say that this gives a rational reconstruction, in logical terms, of the standard method for implementing lazy evaluation on top of an eager evaluation strategy, as introduced by Landin [Lan65] and used in the SECD and CAM machines [Hen80, Hue90]. This idea is standardly modelled in denotational semantics by lifting [Plo85] i.e. A ) B = A B where A B is the type of partial (or alternatively strict) functions. This account requires the presence of divergent programs; the Linear decomposition A ) B = A Gammaffi B does not. With ....

....of the calculus do exist, the implementation we shall describe is purely sequential. In any case, the potential for parallel execution is much greater for Classical Linear Logic, which is treated in Sections 6 8. We will follow the very lucid exposition of the (standard) SECD machine given in [Hen80] fairly closely. The machine is based on a list structured store. We shall use Turner s notation [Tur85] for list operations: for the empty list x : l for infix cons [x 1 ; x n ] for x 1 : Delta Delta Delta : x n : The objects manipulated by the machine are inductively defined ....

P. Henderson. Functional Programming: Applications and Implementation. Prentice Hall, 1980.


Partitioning Non-strict Functional Languages for Multi-threaded.. - Coorg (1995)   (1 citation)  (Correct)

....that provides non strictness is the lazy evaluation strategy, where the evaluation of an expression is delayed until the execution cannot proceed without the value of that expression. Unlike lenient evaluation, lazy evaluation also gives the user the ability to manipulate infinite data structures [11]. In this paper, we are primarily interested in implementing a non strict language with the lenient strategy (though we do remark on the applicability of the techniques developed here to implement lazy evaluation) The contributions of this paper are: ffl The definition of partitioning as a ....

P. Henderson. Functional Programming: Applications and Implementation. Prentice Hall, Englewood Cliffs, NJ, 1980.


A Pragmatic Approach to the Analysis and Compilation of.. - Glaser, Hartel, Wild (1990)   (Correct)

....as a constructor. We can see here that: 1. append is a pure function (in the sense that it has no side effects) facilitating the use of formal manipulation tools; 2. the order of evaluation is not explicitly stated, as expressions evaluate only when required, and then only once (lazy evaluation [11]) any allocation and reclamation of storage is left to the system (garbage collection [5] 3. the interface to the outside world is completely specified by the parameters and result. Since the second of these points implies that the programmer is relieved of the burden of much of the ....

P. Henderson, Functional programming --- Application and implementation, Prentice Hall, 1980.


The Programming Language Opal - Th Corrected Edition   (Correct)

No context found.

Henderson, P.: \Functional Programming: Application and Implementation.";


Compilation of Functional Languages Using Flow Graph Analysis - Hartel, Glaser, Wild (1994)   (3 citations)  (Correct)

No context found.

P. Henderson, Functional Programming---Application and Implementation, Prentice Hall, Englewood Cliffs, New Jersey, 1980.


EBG: A Lazy Functional Programming Language Implemented on the.. - Clark (1999)   (Correct)

No context found.

Henderson P. (1980) Functional Programming Application and Implementation. Prentice/Hall International, 237 -- 238.


Implementing the Charity Abstract Machine - Yee (1995)   (Correct)

No context found.

P. Henderson. Functional Programming -- Applications and Implementation. Prentice--Hall, London, 1980.


Semantic Analyses for Storage Management Optimizations in.. - Park (1991)   (2 citations)  (Correct)

No context found.

P. Henderson. Functional Programming: Application and Implementation. PrenticeHall, 1980.


Accepted for publication in Microprocessors and Microsystems. - Te Ms (1998)   (Correct)

No context found.

Henderson, P Functional Programming Application and Implementation, PrenticeHall (1980)

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