Persistent Data Structures In Haskell
Room: BBL 023
Speaker: Sebastiaan Visser
Title: Persistent Data Structures In Haskell
In this talk we will discuss a framework for storing functional data structures in Haskell on disk.
Algebraic datatypes in Haskell are a powerful tool for modeling functional data structures. Data structures like binary trees, patricia tries, finger trees, etc. are all available as ready-to-use libraries. Unfortunately, when your application data outlives the running time of a single process or there is too much data to store in memory at once, no easy way exists to make functional data structures persistent.
In this talk we present a framework for Haskell that uses generic programming techniques to store recursive data structures on disk. The framework allows incremental access to parts of the data by mapping recursive operations to work on a file based storage heap. By generically annotating data structures with I/O operations we can keep their definitions pure.
- 15 May 2010