Kalendarium

Docentföreläsning: ”Fully Concurrent Garbage Collection for the Encore Language”

This lecture will give a gentle introduction to fully concurrent garbage collection, in particular, how it is manifest in the Encore programming language.

Automatic memory management, or garbage collection, relieves the programmer of the burden of explicitly managing the release of memory that is no longer required, enabling her to focus on the program logic. In the context of actor-based programming languages, like Encore, fully concurrent garbage collection is possible. This means that each actor has its own garbage collector that runs independently of other garbage collectors, thereby avoiding expensive memory barriers or stop-the-world garbage collection. Sharing of data between actors is tracked using reference counting. Fully concurrent garbage collection is suitable for modern multicore computers. 

This lecture will give a gentle introduction to fully concurrent garbage collection, in particular, how it is manifest in the Encore programming language. One surprising aspect of fully concurrent garbage collection is how intimately it interacts with language design issues. Some of the consequent problems will also be described and their solutions presented.