ACM Home Page
Please provide us with feedback. Feedback
Busy and lazy FP with infinite objects
Full text PdfPdf (905 KB)
Source Conference on LISP and Functional Programming archive
Proceedings of the 1984 ACM Symposium on LISP and functional programming table of contents
Austin, Texas, United States
Pages: 282 - 292  
Year of Publication: 1984
ISBN:0-89791-142-3
Authors
Sponsors
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGART: ACM Special Interest Group on Artificial Intelligence
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 5,   Downloads (12 Months): 16,   Citation Count: 2
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/800055.802045
What is a DOI?

ABSTRACT

The paper introduces a variant of Backus' functional programming language FP that has non-strict basic operations as well as non-strict language constructs. The basic data structure of FP, finite nested sequences, is generalized to infinite trees by allowing a non-strict sequence constructor. Then infinite objects can be described as least solutions of recursion equations. For this language variant we give a structured mathematical and operational semantics which employs rewriting rules on finite terms. Infinite objects are evaluated by repeated unfolding of their recursive definitions and subsequent simplifications according to a confluent and Noetherian rewriting system on the level of objects. Two algorithms are given that formalize the ideas of busy (data-driven) and lazy (demand-driven) evaluation. Throughout the paper the semantic concepts of FP are explained; special emphasis is laid on the notion and the proper algebraic treatment of infinite objects.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
 
3
J. Backus: Is computer science based on the wrong fundamental concept of 'program'? An extended concept. In: J.W. de Bakker, J.C. van Vliet (eds.): Algorithmic languages. Proceedings of the International Symposium on Algorithmic Languages. Amsterdam-New York-Oxford: North-Holland 1981, 133-165
4
 
5
J. Backus: Function-level computing. IEEE Spectrum 19:8, 22-27 (1982)
 
6
 
7
 
8
F.L. Bauer, M. Broy, W. Dosch, F. Geiselbrechtinger, R. Gnatz, W. Hesse, B. Krieg-Brückner, A. Laut, T. Matzner, B. Möller, F. Nickl, H. Partsch, P. Pepper, K. Samelson (@@@@), M. Wirsing, H. Wössner: The wide spectrum language 84. Technische Universität Monchen, Institut für Informatik, December 1983
 
9
M. Broy: A fixed point approach to applicative multiprogramming. In: M. Broy, G. Schmidt (eds.): Theoretical foundations of programming methodology. Dordrecht: Reidel 1982, 565-622
 
10
V.J. Bush, J.N.F. Oliveira, J.R. Gurd: FP as a basis for dataflow program transformation. University of Manchester, Department of Computer Science, Dataflow Research Project, October 1983
11
 
12
B. Courcelle, M. Nivat: Algebraic families of interpretations. Proc. 17th Annual IEEE Symposium on Foundations of Computer Science, 1976, 137-146
 
13
 
14
D.P. Friedman, D.S. Wise: CONS should not evaluate its arguments. In: S. Michaelson, R. Milner (eds.): Automata, languages and programming. Edinburgh: Edinburgh University Press 1976, 257-285
15
 
16
17
 
18
G. Huet, D.C. Oppen: Equations and rewrite rules - a survey. In: R.V. Book (ed.): Formal language theory - perspectives and open problems. London: Academic Press 1980, 349-405
 
19
S.C. Kleene: Introduction to metamathematics. New York: Van Nostrand 1952
 
20
G.A. Magó: A network of microprocessors to execute reduction languages. International Journal on Computer and Information Systems 8:5, 349-385, 8:6, 435-471 (1979)
21
 
22
B. Möller: Unendliche Objekte und Geflechte. Fakultät für Mathematik und Informatik der Technischen Universität München, Dissertation. TUM-I8213, September 1982. English excerpt: On the algebraic specification of infinite objects - ordered and continuous models of algebraic types. Institut für Informatik, Technischen Universität München, June 1984
 
23
 
24
D. Scott: Lectures on a mathematical theory of computation. In: M. Broy, G. Schmidt (eds.): Theoretical foundations of programming methodology. Dordrecht: Reidel 1982, 145-292
 
25
A. Tarski: A lattice theoretical fixed point theorem and its applications. Pacific J. Math. 5, 285-309 (1955)
26
 
27
J. Vuillemin: Correct and optimal implementations of recursion in a simple programming language. Journal of Computer and Systems Science 9, 332-354 (1974)
28
 
29
M. Wirsing, P. Pepper, H. Partsch, W. Dosch, M. Broy: On hierarchies of abstract data types. Acta Informatica 20, 1-33 (1983)


Collaborative Colleagues:
Walter Dosch: colleagues
Bernhard Möller>: colleagues