Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/800087.802797acmconferencesArticle/Chapter ViewAbstractPublication PageslfpConference Proceedingsconference-collections
Article
Free access

Address/memory management for a gigantic LISP environment or, GC considered harmful

Published: 25 August 1980 Publication History

Abstract

The possibility of incredibly cheap, fantastically large media for storage gives rise to a realistic LISP memory management scheme under which GC may be postponed for days, or even indefinitely; the idea is encapsulated in the acronym “DDI”—“GC? Don't Do It!”. Tertiary memory is used to archive pages of the LISP environment which are perhaps reclaimable, but which have not been proven so; whereas the standard technique of “paging” is used to swap active data from the main memory to a secondary store such as magnetic disk. Some scenarios are presented considering a variety of currently-available technologies, and of one speculative possibility—videodisc—by which a requisite compactifying GC would be done “overnight”, or over the weekend. With enough tertiary available, one design could last for over 12 years without a GC. “Write-once” memories, probably unusable for most applications, would not be at a disadvantage here.

References

[1]
Baker, H.G., Jr.; "List Processing in Real Time on a Serial Computer"; Comm. ACM 21, 4 (April 1978), Pp. 280-294.
[2]
Bishop, P. B.; Garbage Collection in a Very Large Address Space: Technical Report TR-178, MIT Laboratory for Computer Science.
[3]
Bobrow, D.G., and Clark, D.W.; "Compact Encodings of List Structure"; ACM Trans. on Prog. Lang. and Systems 1, 2 (Oct 1979), Pp. 266-286.
[4]
Clark, D.W., and Green, C.C.; "An Empirical Study of List Structure In LISP"; Comm. ACM 20, 2 (Feb 1977), Pp. 78-87.
[5]
Deutsch, L.P.; "Experience With a Microprogrammed Interlisp System"; Proc. 11th Annual Microprogramming Workshop, Asilomar, Pacific Grove, CA. (Nov 1978)
[6]
Doyle, J.; "A Truth Maintenance System"; Artificial Intelligence 12, 3 (Nov 1979), Pp. 231-272.
[7]
Edwards, Daniel J.; "Secondary Storage in LISP"; A.I. Memo 63, M.I.T. Artificial Intelligence Lab, Cambridge MA (Dec 1963).
[8]
Fenichel, R.R., and Yochelson, J.C.; "A LISP Garbage-Collector for Virtual-Memory Computer Systems"; Comm. ACM 12, 11 (Nov. 1969), Pp. 611-612.
[9]
Greenblatt, R.; "The LISP Machine"; Working Paper No. 79, M.I.T. Artificial Intelligence Lab, Cambridge MA (Nov 1974).
[10]
Greenblatt, R., et. al.; "LISP Machine Progress Report"; A.I. Memo 444, M.I.T. Artificial Intelligence Lab, Cambridge MA (Aug 1977).
[11]
Ingalls, D. H. "The SMALLTALK Programming System Design and Implementation"; Fifth Annual Symposium on Principles of Programming Languages, 1978.
[12]
Lieberman, Henry, and Hewitt, Carl; "A Real Time Garbage Collector That Can Recover Temporary Storage Quickly"; A.I. Memo 569, M.I.T. Artificial Intelligence Lab, Cambridge MA (Apr 1980); (also submitted for publication)
[13]
Marti, J., Hearn, A., Griss, M., and Griss, C.; Standard LISP Report; UCP-60, University of Utah (Jan 1978).
[14]
McWilliams, T.M., Widdoes, L.C., Jr., and Wood, L.L.; The S-1 Project; Lawrence Livermore Laboratory, Livermore CA (Sep 1977)
[15]
Minsky, Marvin L.; "A LISP Garbage Collector Using Serial Secondary Storage"; A.I. Memo 58, M.I.T. Artificial Intelligence Lab, Cambridge MA (Dec 1963) (out of print).
[16]
Nadan, J.S. "Optical Information Storage and Retrieval Systems"; in Archival Memory Technology, Proc. of a Workshop Held at Carnegie-Mellon Univ. (Sep 28, 1978), Pp. 28-30.
[17]
Steele, G.L. Jr.; "Data Representations in PDP-10 Maclisp", A.I. Memo 420, M.I.T. Artificial Intelligence Lab, Cambridge MA (Sep 1977).
[18]
White, JonL; "NIL—A Perspective"; in Proc. of 1979 MACSYMA Users Conference (June 1979), Pp. 190-199.
[19]
White, JonL; "LISP/370: A Short Technical Description of the Implementation"; SIGSAM Bull. 12, 4 (Nov 1978), Pp. 23-27.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
LFP '80: Proceedings of the 1980 ACM conference on LISP and functional programming
August 1980
247 pages
ISBN:9781450373968
DOI:10.1145/800087
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 25 August 1980

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Acceptance Rates

Overall Acceptance Rate 30 of 109 submissions, 28%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)34
  • Downloads (Last 6 weeks)5
Reflects downloads up to 30 Aug 2024

Other Metrics

Citations

Cited By

View all
  • (2015)A survey on object cache locality in automated memory management systems2015 IEEE 28th Canadian Conference on Electrical and Computer Engineering (CCECE)10.1109/CCECE.2015.7129301(349-354)Online publication date: May-2015
  • (2009)Leak pruningACM SIGARCH Computer Architecture News10.1145/2528521.150827737:1(277-288)Online publication date: 7-Mar-2009
  • (2009)Leak pruningACM SIGPLAN Notices10.1145/1508284.150827744:3(277-288)Online publication date: 7-Mar-2009
  • (2009)Leak pruningProceedings of the 14th international conference on Architectural support for programming languages and operating systems10.1145/1508244.1508277(277-288)Online publication date: 7-Mar-2009
  • (2007)Improving Search Speed on Pointer-Based Large Data Structures Using a Hierarchical Clustering Copying AlgorithmProceedings of the Innovative Architecture for Future Generation High-Performance Processors and Systems10.1109/IWIA.2007.18(43-52)Online publication date: 11-Jan-2007
  • (2006)Profile-guided proactive garbage collection for locality optimizationProceedings of the 27th ACM SIGPLAN Conference on Programming Language Design and Implementation10.1145/1133981.1134021(332-340)Online publication date: 11-Jun-2006
  • (2006)Profile-guided proactive garbage collection for locality optimizationACM SIGPLAN Notices10.1145/1133255.113402141:6(332-340)Online publication date: 11-Jun-2006
  • (2005)Dynamic storage allocation: A survey and critical reviewMemory Management10.1007/3-540-60368-9_19(1-116)Online publication date: 1-Jun-2005
  • (2004)Prefetch injection based on hardware monitoring and object metadataACM SIGPLAN Notices10.1145/996893.99687339:6(267-276)Online publication date: 9-Jun-2004
  • (2004)Prefetch injection based on hardware monitoring and object metadataProceedings of the ACM SIGPLAN 2004 conference on Programming language design and implementation10.1145/996841.996873(267-276)Online publication date: 9-Jun-2004
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media