ACM Home Page
Please provide us with feedback. Feedback
A reference-counting garbage collection algorithmfor cyclical functional programming
Full text PdfPdf (359 KB)
Source
International Symposium on Memory Management archive
Proceedings of the 7th international symposium on Memory management table of contents
Tucson, AZ, USA
SESSION: Domain-specific memory management II table of contents
Pages 71-80  
Year of Publication: 2008
ISBN:978-1-60558-134-7
Author
Baltasar Trancón y Widemann  Universität Bayreuth, Bayreuth, Germany
Sponsors
ACM: Association for Computing Machinery
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 36,   Citation Count: 1
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/1375634.1375645
What is a DOI?

ABSTRACT

Reference-counting garbage collection is known to have problems with the collection of cyclically connected data. There are two historically significant styles of cycle-aware algorithms: The style of Brownbridge that maintains a subset of marked edges and the invariant that every cycle contains at least one marked edge, and the style of Martinez-Lins-Wachenchauzer (MLW) that involves local mark-and-scan procedures to detect cycles. The former is known to be difficult to design and implement correctly, and the latter to have pathological efficiency for a number of very typical situations. We present a novel algorithm that combines both approaches to obtain reasonably efficient local mark-and-scan phases with a marking invariant that is rather cheap to maintain. We demonstrate that the assumptions of this algorithm about mutator activity patterns make it well-suited, but not limited, to a functional programming technique for cyclic data. We evaluate the approach in comparison with simple and more sophisticated MLW algorithms using a simple benchmark based on that functional paradigm.


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
P. A. Bigot and S. K. Debray. Return value placement and tail call optimization in high level languages. Journal of Logic Programming, 38(1):1--29, 1999.
 
4
R. S. Bird. Using circular programs to eliminate multiple traversals of data. Acta Informatica, 21:239--250, 1984.
5
 
6
 
7
D. P. Friedman and D. S. Wise. Reference counting can manage the circular environments of mutual recursion. Information Processing Letters, 8(1):41--45, 1979.
 
8
 
9
10
 
11
 
12
 
13
 
14
R. D. Lins, F. Heron de Carvalho Junior, and Z. D. Lins. Cyclic reference counting with permanent objects. Journal of Universal Computer Science, 13(6):830--838, 2007.
 
15
 
16
E. Pepels, M. van Eekelen, and M. Plasmeijer. A cyclic reference counting algorithm and its proof. Technical Report 88?10, Computing Science Department, University of Nijmegen, 1988.
 
17
D. Pereira and J. Aycock. Dynamic region inference. Technical Report TR 2002 709 12, Department of Computer Science, University of Calgary, 2002.
 
18
 
19
J. D. Salkild. Implementation and analysis of two reference counting algorithms. Master?s thesis, University College, London, 1987.
 
20
B. Trancón y Widemann. Advanced strict corecursion. In Proceedings of the Symposium on Implementation of Functional Languages. Heriot-Watt University, Edinburgh, 2003.
 
21
B. Trancón y Widemann. Ein striktes coalgebraisches Berechnungsmodell. In Programmiersprachen und Rechenkonzepte (22. Workshop der GI-Fachgruppe 2.1.4). Christian-Albrechts-Universität, Kiel, 2005.
 
22
B. Trancón y Widemann. Strikte Verfahren Zyklischer Berechnung. PhD thesis, Technische Universität Berlin, 2008.
 
23
D. H. D.Warren. DAI Research Report 141, University of Edinburgh, 1980.


Collaborative Colleagues:
Baltasar Trancón y Widemann: colleagues