67 citations found. Retrieving documents...
Burge, W.: Recursive Programming Techniques, Addison-Wesley, 1975.

 @ NUS  Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents  Next 50

Replication, Sharing, Deletion, Lists, and Numerals: Progress on .. - MacLennan (2002)   (Correct)

.... fixed point combinator Y is defined so that YF = F (YF ) 9) It s easy to see that this leads to a nonterminating process: YF = F (YF ) F (F (YF ) F (F (F (YF ) 10) Nevertheless this operation is useful in conventional functional programming for defining recursive functions [Bur75, Mac90]. Whether it will be similarly useful in molecular combinatory programming is less obvious, but if it is needed, it can be defined in terms of S and K (Sec. 21 [Mac02a] so it does not need to be supported by a primitive reaction. However, as we have seen (Sec. 4.1) sharing and copying are ....

....recursive function definitions, since typically one branch of the conditional will lead to recursive expansion of the function. One common method of avoiding this problem is to delay execution of the arms of the conditional until one of them is chosen, at which point its execution is released [Bur75, Mac90]. Execution of an expression is delayed by abstracting [Abd76, CFC58] a dummy formal parameter from it. Then it cannot be reduced until a corresponding dummy actual is provided. These operations are defined: hhEii = x(E) 26) forceF = FA; 27) if C then X else Y = force(C hhXii j hhY ....

William H. Burge. Recursive Programming Techniques. Addison-Wesley, Reading, 1975.


Verifying the Unification Algorithm in LCF - Paulson (1985)   (15 citations)  (Correct)

....building hierarchies of theories. If you create a theory nat of the natural numbers, then you and other users can build new theories on top of nat . 3. 2 The meta language ML PPLAMBDA is embedded in LCF s meta language, ML, which is a functional programming language related to Landin s ISWIM [4]. ML data types include the usual int and bool , and also term, form, and thm, whose values are PPLAMBDA terms, formulas, and theorems. An axiom is a constant of type thm; an inference rule is a function mapping theorems to theorems. Type checking ensures that a theorem can only be obtained by ....

....up in s; if t is a combination, then SUBST calls itself on the two subterms. SUBST is defined using the functional TERM REC for structural recursion on terms. Such functionals appear throughout the formalization, but could be removed easily. I wish to avoid digressing into this area, which Burge [4] describes with many examples: new theory SUBST ; new parent TERM REC ; new parent ASSOC ; new curried infix ( SUBST , term (var, term)alist term ) new axiom ( SUBST , #ts. t SUBST s TERM REC(CONST, #v. ASSOC(VAR v)vs) COMB) t ) Since TERM REC can be seen as a ....

W. H. Burge, Recursive Programming Techniques (Addison-Wesley, 1975).


There and Back Again - Danvy, Goldberg (2001)   (Correct)

....9 A From higher order lists to continuations 9 B Palindrome detection in Scheme 10 C Background: Vedic mathematics 10 List of Figures 1 Computing s 0 , s 4 out of x 0 , x 1 , x 2 and y 0 , y 1 , y 2 . 11 2 1 Introduction Ever since the inception of functional programming [1, 3], lists have stood as a consistent source of inspiration for functional programmers, encouraging skill and even exuberance to the point of fostering striking new discoveries as well as hiding simple solutions. In this article, we substantiate this observation with a series of examples that are ....

....the classical fields function segmenting a list of characters into a list of words. To simplify the presentation, we consider it a function mapping a list of integers into a list of lists of integers, and we consider that zero is a separator in the input list. So our fields function maps the list [0,1,2,0,3,4,5,0,6] to the list [ 1,2] 3,4,5] 6] 2.1 A higher order solution Fifteen years ago, John Hughes chose the fields function to illustrate his novel representation of lists [8] Given a curried list constructor, Hughes s solution reads in ML [10] as follows. fun cons x xs ( a a list a list ....

[Article contains additional citation context not shown here]

William H. Burge. Recursive Programming Techniques. Addison-Wesley, 1975.


Towards Language-Agnostic Mobile Code - Stork, Housel, Haldar, Dalton.. (2001)   (Correct)

....Outside the realm of object oriented programming, the functional language community has developed techniques for the related problem of composing semantic functions on ASTs. They use higher order functions (parser combinators) to implement grammar constructs such as sequencing and choice [4,31,14]. In this setting the idea of weaving visitors like yarns is equivalent to fusing computations (i.e. folds) on the AST, thereby alleviating the need for intermediate data structures (deforestation) The ASF SDF system [30] allows the syntax and semantics of programming languages to be speci ed ....

Burge, W. H., \Recursive Programming Techniques," Addison-Wesley, 1975 .


Process Calculi at work - An account of the LCS project - Berthomieu (1995)   (2 citations)  (Correct)

....of threads results from deterministic progress of its individual threads, rather than from subsets of them. 4. 3 The LCS abstract machine Compiling LCS expressions Core LCS expressions are reduced using a customized and optimized SECD abstract machine (the SECD machine is described in, e.g. [5] or [17] That machine implements a superset of the SECD instruction set, and uses five registers: A stack S combining the S and D stacks of Landin s machine, an environment E, the code register C, a resumption stack X for exception handling and a store identifier G. Both registers X and G will ....

W. H. Burge, "Recursive Programming Techniques", Systems Programing Series, Addison Wesley, 1976.


Coordinating Functional Processes with Haskell# - Carvalho, Jr., Lima, Lins (2002)   (Correct)

....requires prior specific permission and or a fee. SAC 2002, Madrid, Spain c ACM 1 58113 445 2 02 03. 5.00 for the non strict (or lazy) functional programming community, with several compilers available. The idea of parallel functional programming dates back to 1975 [23, 12] when Burge [5] suggested the technique of evaluating function arguments in parallel, with the possibility of functions absorbing unevaluated arguments and perhaps also exploiting speculative evaluation. In general, parallelism obtained from referential transparency in pure functional languages is of too fine ....

W. H. Burge.RecursiveProgramming Techniques. Addison-Wesley Publishers Ltd., 1975.


Parallelizing MCP-Haskell for Evaluating Haskel#.. - Carvalho, Jr., Lins.. (2001)   (Correct)

....recent innovations in programming language design. It has now become de facto standard for the non strict (or lazy) functional programming community, with several compilers available. The idea of parallel functional programming dates back to 1975 [Lins, 1996, Hammond Michaelson, 1999] when Burge [Burge, 1975] suggested the technique of evaluating function arguments in parallel, with the possibility of functions absorbing unevaluated arguments and perhaps also exploiting speculative evaluation. In general, parallelism obtained from referential transparency in pure functional languages is of too fine ....

Burge, W. H. (1975). Recursive Programming Techniques. Addison-Wesley Publishers Ltd.


Coordinating Functional Processes with Haskell# - Carvalho, Jr., Lima (2002)   (Correct)

....on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and or a fee. SAC 2002, Madrid, Spain c ACM 1 58113 445 2 02 03. 5. 00 The idea of parallel functional programming dates back to 1975 [23, 12] when Burge [5] suggested the technique of evaluating function arguments in parallel, with the possibility of functions absorbing unevaluated arguments and perhaps also exploiting speculative evaluation. In general, parallelism obtained from referential transparency in pure functional languages is of too ne ....

W. H. Burge. Recursive Programming Techniques. Addison-Wesley Publishers Ltd., 1975.


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

.... to Plotkin s [D E] construction in his (equivalent) category of predomains and partial functions [Plo85] Moreover, this may be regarded as the formalisation of Landin s applicative order calculus, with abstraction used to protect expressions from evaluation, as illustrated extensively in [Lan64, Lan65, Bur75]. The intriguing point about these four constructions is that (1) and (2) are mathematically natural, yielding cartesian closure and monoidal closure in e.g. CPO and CPO respectively (the latter being analogous to partial functions over sets) while (3) and (4) are computationally natural, as ....

W. H. Burge. Recursive programming techniques. Addison Wesley, Reading, Mass., 1975.


Parsec: A practical parser library - Leijen, Meijer (2001)   (Correct)

....time e#cient parser combinators that in case of a parse error, report both the position of the error as well as all grammar productions that would have been legal at that point in the input. 1 Introduction Parser combinators have always been a favorite topic amongst functional programmers. Burge [2] already described a set of combinators in 1975 and they have been studied extensively over the years by many others [18,9,4,10] In contrast to parser generators that o#er a fixed set of combinators to express grammars, these combinators are manipulated as first class values and can be combined ....

Burge, W., "Recursive Programming Techniques," Addison-Wesley, 1975.


Monads and Effects (revised) - Benton, Hughes, Moggi (2000)   (1 citation)  (Correct)

....just what is a purely functional language Perhaps the answer is: one in which assignment has a funny type 5. 3 Domain Specific Embedded Languages Since the early days of functional programming, combinator libraries have been used to define succinct notations for programs in particular domains [Bur75] There are combinator libraries for many different applications, but in this section we shall focus on one very well studied area: parsing. A library for writing parsers typically defines a type Parser a, of parsers for values of type a, and combinators for constructing and invoking parsers. ....

W. Burge. Recursive Programming Techniques. Addison-Wesley Publishing Company, Reading, Mass., 1975.


Ordinals and Interactive Programs - Hancock (2000)   (Correct)

....of linear logic. Several authors have observed that there is also a set of arithmetical combinators A, M , E , N 1 arising from the Church numerals, which is combinatorially complete. For example, this has been observed by Stenlund [101] page 21, Schwichtenberg [104] page 19, Burge [10] page 35, Rosenbloom [93] page 122, Church [14] page 10, and Fitch (according to Stenlund) These combinators share the advantage of B , C , K , W that they mesh well with concerns about linearity. However their arithmetical combinators are improvable. In this appendix I define, and show the ....

.... possibility of using ( and ( as if they were numbers , that represent the arithmetical operations in the sense that the following laws hold: ba( ab ba( a b ba( a b These are the arithmetical combinators of Stenlund [101] page 21, Schwichtenberg [104] page 19, Burge [10] page 35, Rosenbloom [93] page 122, Church [14] page 10, and Fitch, except for a small point. All these authors define the multiplication combinator to be the transpose of ( namely ( # ) which equals the classic B combinator. Their addition combinator is correspondingly di#erent. It is # . ....

W.H. Burge. Recursive Programming Techniques. The Systems Programming Series. Addison-Wesley, Reading, Massachusetts, 1975. 180


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

....recognition using graph grammars which allow sharing in between terminal symbols. 22] describes a method of parsing incomplete input data by growing islands and coalescing islands which are sufficiently close together in the parse. Parsing using functional combinators has been described in [2] and [11] and are generalised to include attributes in [12] and [8] 18] and [21] show how monads can be used to implement parsers and hide error information. 4 Behaviours as grammars A grammar represents a formal language which is the set of strings which the grammar generates. A behaviour ....

Burge, W. (1975) Recursive Programming Techniques. Addison-Wesley.


Proof Methods for Corecursive Programs - Gibbons, Hutton (1999)   (1 citation)  (Correct)

....programming, corecursion, greatest fixpoints, fixpoint induction, approximation lemma, coinduction, fusion 1. INTRODUCTION Recursion is a central concept in computing, with applications ranging from the theoretical foundations of computation [Reynolds 1998] to practical programming techniques [Burge 1975]. In recent years, it has become increasingly clear that the dual but less well known concept of corecursion is just as useful [Aczel 1988; Barwise and Moss 1996; Jacobs et al. 1998; Jacobs and Rutten 1999] As yet, there is no standard definition for the notion of corecursion. We follow the work ....

Burge, W. 1975. Recursive Programming Techniques. Addison-Wesley.


Stochastic Process Algebras - A Formal Approach to.. - Hermanns, Herzog.. (1996)   (6 citations)  (Correct)

....problem of managing and conserving space while generating large graphs. Notationally, PEPA is not a large language. For this reason, it was decided not to use the Standard ML versions of the well known Lex and Yacc tools to generate a lexical analyser and a parser. Instead, a Burge style parser [12] has been produced for the PEPA language. This is a compact, elegant functional program which uses infix function symbols to encode the operators which combine productions in a formal description notation such as BNF. This provides a simple correspondence with the grammar for the language which ....

W.H. Burge. Recursive Programming Techniques. Addison-Wesley, 1975.


A Logical Basis for Functional Programming (Extended Abstract) - Shankar   (Correct)

....Stanford University Stanford, CA 94305, USA. The work reported here was supported by NSF Grant No. CCR 8718605. 1 Introduction Functional programming provides a powerful medium for specifying computations and is frequently employed as a foundational tool to explain other forms of programming [13, 1, 5]. Many of the existing axiom systems which have been proposed for functional programming are either limited in scope or too complicated from the point of view of a programmer. We present an axiomatic framework for proving properties of functional programs which is, on the one hand, simpler than ....

W. H. Burge. Recursive Programming Techniques. Addison-Wesley, Reading, MA, 1975.


Termination Issues in Automated Syntheses - Bellegarde (1994)   (Correct)

....by a terminating, constructor based and orthogonal first order rewrite system. The transformation strategies that are automated are: fusion or deforestation (elimination of useless intermediate data structures) and two loops fusion or tupling (consolidation of similar control structures) [8, 9, 22]. Number of issues occur to automate the synthesis process. Mechanisms are needed to control or enhance the completion procedure. For example, a mechanism to control the production of critical pairs during the completion process is required to maintain a reasonable performance. Generation of ....

W.H. Burge. Recursive Programming Techniques. Addisson-Wesley, 1975.


An Executable Representation of Distance and Direction - Johnson, Li, Pingali (1991)   (1 citation)  (Correct)

....style [12] data dependence graphs [13] and static single assignment form [8] In this paper, we show how dependence distance and direction information can be represented in this model using dependence operators. From a functional perspective, these operators can be viewed as functions on streams [4]. 1 Introduction The growing complexity of optimizing and parallelizing compilers has led the compiler community to re examine the design of intermediate program representations. Traditionally, compilers have used the control flow graph augmented with dependence information such as def use ....

....loops and nonnested loops [18] pose no problem for us. For readers familiar with the concept of streams in functional languages, our results can be interpreted as a generalization of the ideas of Landin who first used streams to model functionally the execution of loops in imperative languages [4] 3 . The rest of the paper is organized as follows. In Section 2, we introduce dependence flow graphs and their execution model. In Section 3, we include distance and direction vector information in our execution model. In Section 4, we show how reduction operators and producer consumer ....

W. H. Burge. Recursive Programming Techniques. Addison-Wesley, Reading, MA, 1975.


Infinite Objects In Type Theory - Gaspes (1997)   (Correct)

....sketches the desired extensions of this work and comments on related work. 2. Lazy Evaluation and Infinite Objects Laziness has for a long time been acknowledged as an interesting feature of functional programming languages, in great part because it provides for an attractive programming style [Bur75, KM77, Hug84, AS86]. Infinite (lazy) objects can be used to write programs built up from simple and general modules. The infinite objects pop up for instance, when separating iterations from their termination conditions. The laziness of the language helps then when putting together the different parts: only the ....

W. H. Burge. Recursive Programming Techniques. Addison-Wesley Publishing Company, Reading, Mass., 1975.


Monads and Effects - Benton, Hughes, Moggi (2000)   (1 citation)  (Correct)

....just what is a purely functional language Perhaps the answer is: one in which assignment has a funny type 5. 3 Domain specific embedded languages Since the early days of functional programming, combinator libraries have been used to define succinct notations for programs in particular domains [Bur75] There are combinator libraries for many different applications, but in this section we shall focus on one very well studied area: parsing. A library for writing parsers typically defines a type Parser a, of parsers for values of type a, and combinators for constructing and invoking parsers. ....

W. Burge. Recursive Programming Techniques. Addison-Wesley Publishing Company, Reading, Mass., 1975.


Type Checking Dependent (Record) Types and Subtyping - Betarte (2000)   (Correct)

....monad, in the sense of [Wad92] which has associated a basic set of combinators that allow to access and update the state components. The type checking monad is just a combination of a state and error monad and it interacts with a parsing monad. The latter is implemented following the ideas in [Bur75, Hut92, Roj95]. A very simple XEmacs interface has also been incorporated to the system. Even though it is still in a very primitive stage, we have found its use to be of considerable help to the task of proof construction using the system 1 . A script for the proof checker looks very much like one for a ....

W. H. Burge. Recursive Programming Techniques. Addison-Wesley Publishing Company, 1975.


Foundations of Functional Programming - Paulson (2000)   (3 citations)  (Correct)

....and modules but much of the syntax is still defined by translation. A French dialect of ML, called CAML, retains much of the traditional ISWIM syntax [3] 6. 5 The SECD Machine Landin invented the SECD machine, an interpreter for the # calculus, in order to execute ISWIM programs [2, 4, 7]. A variant of the machine executes instructions 6.6 Environments and Closures 33 compiled from # terms. With a few optimisations, it can be used to implement real functional languages, such as ML. SECD machines can be realized as bytecode interpreters, their instructions can be translated to ....

W. H. Burge. Recursive Programming Techniques. Addison-Wesley, 1975.


Operational Semantics of Process-Oriented Simulation.. - Birtwistle, Tofts (1993)   (Correct)

....the event list at time 0 and line 5 generates a van named V2 and inserts it into the event list at time 2) and the length of the model run is established ( line 6 sets the simulation run length at 6) 2. 1 Notation We have adopted certain notations from modern functional programming languages ([1, 7, 10, 14]) to express lists and sub expressions. Lists. The empty list is denoted by [ When we wish to display a nonempty list in full, we enumerate it. The process body below with three actions: 4 [ getR(W) hold(3) putR(W) is actually short for getR(W) hold(3) putR(W) where : is the ....

W. Burge. Recursive Programming Techniques. Addison-Wesley, New York, 1975.


Monadic Parsing in Haskell - Hutton, Meijer (1993)   (19 citations)  (Correct)

....University of Nottingham Erik Meijer University of Utrecht 1 Introduction This paper is a tutorial on defining recursive descent parsers in Haskell. In the spirit of one stop shopping , the paper combines material from three areas into a single source. The three areas are functional parsers (Burge, 1975; Wadler, 1985; Hutton, 1992; Fokker, 1995) the use of monads to structure functional programs (Wadler, 1990; Wadler, 1992a; Wadler, 1992b) and the use of special syntax for monadic programs in Haskell (Jones, 1995; Peterson et al. 1996) More specifically, the paper shows how to define ....

Burge, W.H. (1975). Recursive programming techniques. Addison-Wesley.


Proof Methods for Structured Corecursive Programs - Gibbons, Hutton (1999)   (Correct)

....this operator to conduct proofs in a purely calculational style that avoids the use of inductive or coinductive methods. 1 INTRODUCTION Recursion is a central concept in computing, with applications ranging from the theoretical foundations of computation [22] to practical programming techniques [5]. In recent years, it has become increasingly clear that the dual but less wellknown concept of corecursion is just as central to computing [1, 2, 14, 15] In this article, we explore methods for proving properties of corecursive programs. As yet, there appears to be no standard definition for ....

W.H. Burge. Recursive Programming Techniques. Addison-Wesley, 1975.


Histories of Discoveries of Continuations: Belles-Lettres .. - Peter Landin Department (1997)   (1 citation)  (Correct)

....the real world there arose however one pattern that could be rescued, but only by resorting to the ominously growing list of deviations from strict lambda. State, assignment, and sharing had already crept in, though only to two happily circumscribed situations, namely Y and delayed evaluation [1] (also, I think, Strachey s term) aka call by need. The other deviation was program closures . Re engineering a single program did not, of course, bump so hard against the limitations of strict lambda as did compiling a whole language of programs. With the above caveat concerning slight ....

.... construction in my next visit to the ACM office. A more careful account, with one substantial error appeared in [5] Defined as a feature interpreted by a state transition function, it exactly failed to express the early forgetting that was claimed for it. The error was corrected in [1]. Another paper [8] was submitted later and appeared much later, without these late thoughts. 1 7 It is perhaps a tribute to the robustness of the concept that several scope errors, overlooked during that enjoyable bustle, are easily reparable. But a matching claim could be made for goto s 5 ....

W. H. Burge. Recursive Programming Techniques. Addison-Wesley, Reading, Massachusetts, 1975.


Proof Methods for Structured Corecursive Programs - Gibbons, Hutton (1999)   (Correct)

....in a purely calculational style that avoids the use of either induction or coinduction. 1 Introduction Recursion has long been recognised as a central concept in computing science, with applications ranging from the theoretical foundations of computation [28] to practical programming techniques [5]. In recent years, it has become increasingly clear that the dual, but less well known, concept of corecursion is just as central to computing [1, 2, 17, 18] In this article, we explore methods for proving properties of corecursive programs. As yet, there appears to be no standard de nition for ....

W.H. Burge. Recursive Programming Techniques. Addison-Wesley, 1975.


Precedences in Specifications and Implementations of Programming.. - Aasa (1991)   (3 citations)  (Correct)

....We have used the algorithm to implement an experimental language with user defined distfix operators [1] A new distfix operator is specified by the operator words and optionally with precedence and associativity. The parser is written in ML [15] and uses parser constructors due to Burge [5] and Fairbairn [11] and Kent Petersson and Soren Holmstrom [17] Using these parser constructors it is easy to write a parser given a grammar, since there are constructors that recognize terminal symbols, sequences, and alternatives and other constructors that introduce actions during the ....

W. H. Burge. Recursive Programming Techniques. Addison-Wesley Publishing Company, Reading, Mass., 1975.


Haskell and XML: Generic Combinators or Type-Based Translation? - Wallace, Runciman (1999)   (61 citations)  (Correct)

....in either a combinator style or a type translation style. Philip Wadler has written a short formal semantics of XSL selection patterns [15] Application based combinators Parsing is the most extensively studied application for combinator libraries. Since the original treatment by Burge [2], there have been many variations on the theme. Swierstra and Duponcheel s method incorporating on the fly grammar analysis and error correction is a notable recent example [10] We hope it may be possible to incorporate DTD analysis in our combinators in a similar style. Although many other ....

W H Burge. Recursive Programming Techniques. Addison-Wesley, 1975.


Precedences in Specifications and Implementations of Programming.. - Aasa (1991)   (3 citations)  (Correct)

....used the algorithm to implement an experimental language with user defined distfix operators [1] also described in [2] A distfix operator is specified by the operator words and optionally precedence and associativity. The parser is written in ML [16] and uses parser constructors due to Burge [5] and Fairbairn [10] and Kent Petersson and Soren Holmstrom [18] Using these parser constructors it is easy to write a parser given a grammar, since there are constructors that recognize terminal symbols, sequences, and alternatives and other constructors that introduce actions during the ....

W. H. Burge. Recursive Programming Techniques. Addison-Wesley Publishing Company, Reading, Mass., 1975.


Continuation Passing Combinators for Parsing Precedence Grammars - Hill (1994)   (Correct)

....in C. Hutton s combinators provide a powerful set of primitives with which one may rapidly construct top down parsers. They provide for backtracking and hence can cope with ambiguous grammars. We summarise them in Figure 1. In fact, parsers written in this style go back at least as far as [2]. All code in this paper is written in Gofer [5] whose syntax is similar to Haskell [3] This has necessitated some function renaming to avoid clashes with keywords and the standard prelude. Briefly, a parser is implemented by a function from a list of input tokens to a list of possible parses, ....

W. H. Burge. Recursive Programming Techniques. Addison Wesley, 1975.


Machine-Assisted Theorem-Proving for Software Engineering - Martin (1994)   (6 citations)  (Correct)

....WORK 130 version of orelse is presented, since such pruning of the proof search is needed in interactive use of the system she describes. No algebraic laws are given. The usefulness of lazy lists to implement backtracking has been known in functional programming circles for some time. Burge [Bur75] discusses such backtracking in the context of top down parsing, and Wadler [Wad85] presents a whole parser toolkit in this style. The parser combinators are very similar to those given here. For example, lit x is a parser combinator which matches a string whose first character is x. Parser ....

W. H. Burge. Recursive Programming Techniques. Addison-Wesley, 1975.


The PEPA Workbench: A Tool to Support a Process Algebra-based .. - Stephen Gilmore (1994)   (36 citations)  (Correct)

....of the well known Lex and Yacc tools to generate a lexical analyser and a parser. This decision has a favourable consequence since using these tools would mean that they would be added to the exported image of the workbench, making it larger than really necessary. Instead, a Burge style parser [17] has been produced for the PEPA language. This is a compact, elegant functional program which uses infix function symbols to encode the operators which combine productions in a formal description notation such as BNF. This provides a simple correspondence with the grammar for the language which ....

W.H. Burge. Recursive Programming Techniques. Addison-Wesley, 1975.


Calculating Software Generators from Solution.. - Kieburtz, Bellegarde.. (1994)   (6 citations)  (Correct)

.... can be addressed by two parametric transformation strategies: ffl fusion or deforestation, in which identical control structures of sequentially applied functions are merged, often allowing an intermediate data structure to be eliminated [27, 9] and ffl the tupling or parallel fusion strategy [6, 10]. in which a pair of functions that operate on the same data are transformed into a single function that returns paired results. Symbolically, this transformation is (f x; g x) hf; gi x When applied to traditional functional programs, parametric strategies can require expensive and inexact ....

W.H. Burge. Recursive Programming Techniques. Addison-Wesley, 1975.


Functional Pearls - Even Higher-Order Functions for Parsing or.. - Okasaki (1999)   (3 citations)  (Correct)

....so beginning functional programmers often wonder: What good are functions of order three or above We illustrate functions of up to sixth order with examples taken from a combinator parsing library. Combinator parsing is a classic application of functional programming, dating back to at least Burge (1975). Most combinator parsers are based on Wadler s listof successes technique (Wadler, 1985) Hutton popularized the idea in his excellent tutorial Higher Order Functions for Parsing (Hutton, 1992) In spite of the title, however, he considered only functions of up to order three. 2 Parsers as ....

Burge, W. H. (1975) Recursive Programming Techniques. Addison-Wesley.


Graphical Application and Visualization of Lazy Functional.. - Foubister (1995)   (Correct)

....language that he is discussing, a function is applied to a list of arguments. A stream is a nullary 2 function: applied to an empty list of arguments it returns a pair of which the first component is the head of the stream, and the second component is another stream, representing the tail. Burge [15] (p 136) notes that such streams are . most useful for implementing functions which process character streams from input . In order to structure an interactive program with such a representation of the input, continuations may be used. A continuation style version of a function takes an ....

William H. Burge. Recursive Programming Techniques. Addison-Wesley, 1975.


Foundations of Functional Programming - Paulson (1995)   (3 citations)  (Correct)

....and modules but much of the syntax is still defined by translation. A French dialect of ML, called CAML, retains much of the traditional ISWIM syntax [4] 6. 5 The SECD Machine Landin invented the SECD machine, an interpreter for the calculus, in order to execute ISWIM programs [3, 5, 8]. A variant of the machine executes instructions compiled from terms. With a few optimisations, it can be used to implement real functional languages, such as ML. SECD machines can be realized as byte code interpreters, their instructions can be translated to native code, and they can be ....

W. H. Burge. Recursive Programming Techniques. Addison-Wesley, 1975.


Defining Concurrent Processes Constructively - Takayama (1994)   (2 citations)  (Correct)

....constructive programming systems, but rules for nondeterminacy and for stream types are also introduced. Among them, a kind of structural induction on stream types called (MPST ) is the heart of our extended system: With (MPST ) stream transformers can be de ned as Burge s mapstream functions [Bur75] T. Hagino [Hag87] gave a clear categorical formalization of stream types (in nite list types or lazy types) whose canonical elements are given by a schema of mapstream functions, but relation between his formulation and logic is not investigated. N. Mendler and others [PL86] introduced lazy ....

W. H. Burge. Recursive Programming Techniques. Addison-Wesley, 1975.


Models for Persistence in Lazy Functional Programming Systems - McNally (1993)   (96 citations)  (Correct)

....is performed during module or expression compilation. bindings to imported identifiers are made at compile time. referentially transparency is preserved as a consequence of performing compile time binding. 47 Chapter 3 Stream Persistence 3. 1 Introduction Stream processing functions [Burg75] have been used in functional programming languages to provide a model for input output which preserves referential transparency [Jone84,Thom86,Huda88] Input from the keyboard, for example, can be modelled as an infinite lazily evaluated list of characters. Character based output can be similarly ....

....operate over streams are similar to those over finite lists but they need only consider arguments which are not the empty list. Streams can be used to model the continuous interaction between a functional program and its external environment such as the keyboard, the screen and the file system [Burg75]. Streams are often implemented using the built in list data type. 3.2.1 Character Streams A basic stream model for interactive functional programs views a program as a consumer of characters on its input stream and as a producer of characters on its output stream. A program is of type: program : ....

Burge, W.H., Recursive Programming Techniques, Addison-Wesley, 1975


Call-by-Value Combinatory Logic and the Lambda-Value Calculus - Gateley, Duba (1991)   (4 citations)  (Correct)

....the v calculus, as CL was used to create a model of the calculus [11] An open problem is the construction of a set of axioms, corresponding to A fi , for CL v that are equivalent to the inference rule i 0 . The logic CL q is useful for creating implementations of by value languages. Burge [2] rediscovered combinators for computer science. Turner [14] popularized and improved the translation using a larger set of combinators so that the resulting CL programs were shorter. Then Hughes [8] developed supercombinators that made the translation linear in terms of size. Hudak and Goldberg ....

W. Burge. Recursive Programming Techniques. Addison-Wesley, Reading, Mass., 1975.


Efficient Parsing Combinators - Röjemo (1995)   (Correct)

....The input that is held onto only to allow backtracking is dropped by applying a cut combinator. This combinator was introduction in a continuation based implementation of parsing combinators. Introduction One method to implement parsers in functional languages is to use parsing combinators [Bur75, Wad85, Hut92, PW94]. Parsing combinators are higher order functions which create more complex parsers from simpler ones. The behaviour of the parser, i.e. how it handles errors, ambiguous grammars, etc. can easily be changed by changing the behaviour of the parsing combinators. This paper is concerned with parsing ....

W. H. Burge. Recursive Programming Techniques. Addison-Wesley Publishing Company, Reading, Mass., 1975.


Proof Methods for Corecursive Programs - Gibbons, Hutton (2005)   (1 citation)  (Correct)

No context found.

Burge, W.: Recursive Programming Techniques, Addison-Wesley, 1975.


An Executable Representation of Distance and Direction - Richard Johnson Wei (1991)   (1 citation)  (Correct)

No context found.

W. H. Burge. Recursive Programming Techniques. Addison-Wesley, Reading, MA,


The AMEN architecture. - Peter Hancock Abandoned   (Correct)

No context found.

W.H. Burge. Recursive Programming Techniques. The Systems Programming Series. Addison-Wesley, Reading, Massachusetts, 1975. 16


Ordinals and Interactive Programs - Hancock (2000)   (Correct)

No context found.

W.H. Burge. Recursive Programming Techniques. The Systems Programming Series. Addison-Wesley, Reading, Massachusetts, 1975. 181


Molecular Combinator Reference Manual - MacLennan (2002)   (Correct)

No context found.

William H. Burge. Recursive Programming Techniques. Addison-Wesley, Reading, 1975.


Guarded Attribute Grammars - Frost (1993)   (Correct)

No context found.

W. H. Burge, Recursive Programming Techniques, Addison-Wesley Publishing Company, Reading, Massachusetts, 1975.


A Scheme for Little Languages in Interactive Graphics - Beckman (1991)   (11 citations)  (Correct)

No context found.

W.F. Burge, Recursive Programming Techniques, Addison-Wesley Systems Programming Series, Addison-Wesley, 1979.


Parsec, a Fast Combinator Parser - Leijen   (Correct)

No context found.

W.H. Burge. (1975) Recursive programming techniques. Addison-Wesley.


Parsec, a Fast Combinator Parser - Leijen   (Correct)

No context found.

W.H. Burge. (1975) Recursive programming techniques. Addison-Wesley.

First 50 documents  Next 50

Online articles have much greater impact   More about CiteSeer.IST at NUS   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST at NUS - Copyright Penn State and NEC. Hosted by the School of Computing, National University of Singapore.