YoVDO

Severing Ties: The Need for Non-Updateable Thunks

Offered By: ACM SIGPLAN via YouTube

Tags

Haskell Courses Memory Management Courses Lazy Evaluation Courses Memory Leaks Courses Garbage Collection Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore the concept of non-updateable thunks in Haskell programming through this conference talk from HIW'23. Delve into the differences between call-by-name evaluation and lazy evaluation, focusing on their impact on memory management and performance. Examine how certain data structures in Haskell, particularly streaming abstractions, can lead to memory leaks and inefficient garbage collection due to accidental sharing and thunk allocation. Learn about the dupIO package as a potential solution for creating non-updateable thunks, which can sever ties between instructions and prevent linked list formation. Understand the implications of this approach for improving memory efficiency and reducing the need for major garbage collection in large applications. Consider the broader implications of this low-level solution and the potential for more fundamental approaches to addressing these issues in Haskell programming.

Syllabus

[HIW'23] Severing ties: the need for non-updateable thunks


Taught by

ACM SIGPLAN

Related Courses

Heterogeneous Parallel Programming
University of Illinois at Urbana-Champaign via Coursera
Advanced Operating Systems
Georgia Institute of Technology via Udacity
計算機程式設計 (Computer Programming)
National Taiwan University via Coursera
Introduction to Operating Systems
Georgia Institute of Technology via Udacity
Android Performance
Google via Udacity