Garbage-free Abstract Interpretation through Abstract Reference Counting (Artifact)

Research output: Non-textual formArtefact


This artifact is a modified version of Scala-AM, an abstract interpretation framework implemented in Scala. Specifically, we extended Scala-AM with several implementations of machine abstractions that each employ a different approach to abstract garbage collection. These include traditional (tracing-based) approaches to abstract garbage collection, as well as our own novel approach using abstract reference counting. In particular, using the machine abstraction that employs abstract reference counting (with cycle detection) results in a garbage-free abstract interpreter can greatly improve both the precision and performance of the corresponding machine abstraction in the original version of the Scala-AM framework.
We have set up the framework in such a way that one can easily run a variety of experiments to use, evaluate and compare these approaches to abstract garbage collection. This artifact contains documentation on how these experiments can be configured, specifically to reproduce the results presented in the companion paper.
Original languageEnglish
Media of outputsoftware
Publication statusPublished - 2019
EventEuropean Conference on Object-Oriented Programming (ECOOP 2019) - Hammersmith, London, United Kingdom
Duration: 17 Jul 201918 Jul 2019


  • static analysis
  • abstract interpretation
  • abstract garbage collection
  • reference counting


Dive into the research topics of 'Garbage-free Abstract Interpretation through Abstract Reference Counting (Artifact)'. Together they form a unique fingerprint.

Cite this