Abstract
The implications of the heap, reference variables and global generators in ALGOL 68 are examined and some notes on possible implementation mechanisms are presented. In particular the use or simulation of hardware with segment addressing facilities is discussed.
Similar content being viewed by others
References
IBM System/360 PL/1 Reference Manual, Form C28-8201, IBM Winchester, 1968.
A. van Wijngaarden (Ed.),Report on the Algorithmic Language Algol 68, MR 101, Mathematisch Centrum, Amsterdam, 1969.
H. D. Baecker,Mapped list structures, Comm. ACM 6, 8 (Aug. 1963), 435–438.
D. E. Knuth,The Art of Computer Programming Vol. 1, Fundamental Algorithms, Addison-Wesley, Reading, 1968.
S. G. van der Meulen and C. H. Lindsey,Informal Introduction to ALGOL 68, Mathematisch Centrum, Amsterdam, 1969.
B. J. Mailloux,On the Implementation of Algol 68, Mathematisch Centrum, Amsterdam, 1968.
G. G. Dodd,Elements of Data Management Systems, Computing Surveys 1, 2 (June 1969), 117–133.
C. Bowman,Package to ‘name’ records, Computer Weekly, 106 (26 Sept. 1968), 6–7.
P. Wegner,Programming Languages, Information Structures and Machine Organisation, McGraw-Hill, New York, 1968.
B. Randell,A Note on Storage Fragmentation and Program Segmentation, Comm. ACM 12, 7 (July 1969), 365–369 & 372.
W. C. McGee,On dynamic program relocation, IBM Systems Journal 4, 3 (1965), 184–199.
J. G. Laski,Segmentation and virtual address topology—an essay in virtual research, Computer Journal 11, 1 (May 1968) 35–40.
J. G. Jodiet,Storage organisation in programming systems, Comm. ACM 11, 11 (Nov. 1968), 741–746.
J. K. Iliffe,Basic Machine Principles, Macdonald, London and American Elseiver, New York, 1968.
H. D. Baecker,Implementing a Stack, Comm. ACM 5, 10 (Oct. 1962) 505–507.
D. W. Barron,Recursive Techniques in Programming, Macdonald, London and American Elsevier, New York, 1968.
B. Randell and L. J. Russell,Algol 60 Implementation, Academic Press, London and New York, 1964.
D. H. R. Huxtable,On writing an optimizing translator for Algol 60, in Introduction to Systems Programming, Academic Press, London and New York, 1964.
N. Wirth and C. A. R. Hoare,A contribution to the development of ALGOL, Comm. ACM 9, 6 (June 1966), 413–418.
C. A. R. Hoare,Record handling, in Symbol manipulation languages and techniques, 262–284, North-Holland Publ. Co., Amsterdam, 1968.
C. A. R. Hoare,Data structures in two-level store, in Proc. IFIP Congress 68, 111–117, North-Holland Publ. Co., Amsterdam, 1968.
H. R. Bauer, et al.,ALGOL W Language Description CS110, Computer Science Dept., Stanford U., 1968.
G. E. Collins,A method of overlapping and erasure of lists, Comm. ACM 3, 12 (Dec. 1960), 655–657.
J. Weizenbaum,Symmetric List Processor, Comm. ACM 6, 9 (Sept. 1963) 524–544.
E. W. Dijkstra,Cooperating Sequential Processes—EWD 123, Technological U., Eindhoven, 1965.
E. W. Dijkstra,Solution of a problem in concurrent programming control, Comm. ACM 8, 9 (Sept. 1965), 569.
J. Weizenbaum,Recovery of Reentrant List Structures in SLIP, Comm. ACM 12, 7 (July 1969), 370–372.
J. C. Gray,Compound data structures for computer aided design; a survey, Proc. ACM Nat. Conf. 1967, 355–365.
H. Schorr and W. M. Waite,An efficient machine-independent procedure for garbage collection in various list structures, Comm. ACM 10, 8 (Aug. 1967), 501–506.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Baecker, H.D. Implementing the ALGOL 68 heap. BIT 10, 405–414 (1970). https://doi.org/10.1007/BF01935562
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF01935562
Key Words and Phrases
- ALGOL 68
- PL/1
- segment addressing
- storage allocation
- garbage collection
- list processing
- storage structures
- multi-level storage
- implementation techniques
- circular lists
- rings
- reference counts