Abstract
Using the concept of "detailization", i.e. introduction of auxiliary denotations, and the strategy of "lazy evaluation" of recursive functions, a collection of linked objects ("nexus of objects") can be described on the applicative level by their constructing functions such that this leads to the introduction of pointers when passing to the procedural, container-oriented level. Examples of such a transformation to pointer representation are discussed, in particular the use of pointer variables and selective updating of composed objects in removing recursion from functions over the objects introduced.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Literature
Backus, J.: Can programming be liberated from the von Neumann style? A functional style and its algebra of programs. Comm. ACM 21, 613–641 (1978)
Bauer, F.L.: Vorlesungsskriptum Algorithmische Sprachen, Kap.4. Institut für Informatik der Technischen Universität München, Februar 1978
Bauer, F.L., Partsch, H., Pepper, P., Wössner, H.: Techniques for program development. In: Software Engineering Techniques. Infotech State of the Art Report 34. Maidenhead: Infotech International 1977, p. 25–30
Berkling, K.J.: Reduction languages for reduction machines. Gesellschaft für Mathematik und Datenverarbeitung mbH Bonn, Interner Bericht ISF-76-8, Sept. 1976
Cooper, D.C.: The equivalence of certain computations. Computer Journal 9, 45–52 (1966)
Friedman, D.P., Wise, D.S.: CONS should not evaluate its arguments. In: Michaelson, S., Milner, R. (eds.): Automata, Languages and Programming. Edinburgh: University Press 1976, p. 257–284
Friedman, D.P., Wise, D.S.: Unbounded computational structures. Softw. Pract. Exper. 8, 407–416
Goldstine, H.H., Neumann, J. von: Planning and coding problems for an electronic computing instrument, Part II, Volume 1. In: Neumann, J. von: Collected Works, Volume V. Oxford-London-New York-Paris: Pergamon Press 1963, p. 80–152
Haskell, R.: Efficient implementation of a class of recursively defined functions. Computer Journal 18, 23–29 (1975)
Henderson, P., Morris, J.H. jr.: A lazy evaluator. Conference Record of the Third ACM Symposium on Principles of Programming Languages, Atlanta, Jan. 1976, p. 95–103
Knuth, D.: Structured programming with go to statements. Computing Surveys 6, 261–301 (1974)
Krieg-Brückner, B.: Concrete and abstract specification, modularization and program development by transformation. Dissertation, Institut für Informatik der Technischen Universität München. TUM-INFO-7805, Jan. 1978
Landin, P.J.: A correspondence between ALGOL 60 and Church's lambda notation. Part I: Comm. ACM 8, 89–158, Part II: Comm. ACM 8, 158–165 (1965)
Landin, P.J.: The next 700 programming languages. Comm. ACM 9, 157–166 (1966)
Laut, A.: Unterdrückung konstanter Parameter. Institut für Informatik der Technischen Universität München, Interner Bericht, April 1978
Magó, G.A.: A network of microprocessors to execute reduction languages. International Journal of Computer and Information Science (to appear)
Scott, D.: Data Types as Lattices. SIAM Journal on Computing 5, 522–587 (1976)
Wirth, N.: Algorithms + Data Structures = Programs. Englewood Cliffs (N.Y.): Prentice-Hall 1976
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1979 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Bauer, F.L. (1979). Detailization and lazy evaluation, infinite objects and pointer representation. In: Bauer, F.L., et al. Program Construction. Lecture Notes in Computer Science, vol 69. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0014675
Download citation
DOI: https://doi.org/10.1007/BFb0014675
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-09251-3
Online ISBN: 978-3-540-35312-6
eBook Packages: Springer Book Archive