Please log in to watch this conference skillscast.
Most people are familiar with the hello world of dependently-typed Haskell: a vector that is annotated with the Peano number represenation of its size. This talk introduces a similar way to deal with binomial heaps.
Binomial heaps are used to implement, among other things, priority queues. They are a fan favourite among data structures because of their simple elegance and the fascinating way their structure corresponds to binary numbers.
Jasper will use this idea to lift binary numbers to the type level, which is great because you get
log(n) size and time in places where you would see
n for Peano numbers -- in addition to being insanely cool.
This talk will be an introductory explanation of a non-trivial (and again, awesome) example of dependent Haskell programming.
YOU MAY ALSO LIKE:
- Lightning Talk: Patat: A terminal-based presentation tool in Haskell (SkillsCast recorded in October 2018)
- Haskell eXchange 2020 (Online Conference on 3rd - 4th November 2020)
- What's in a Functional Compiler? (SkillsCast recorded in July 2020)
- The Secrets of the GHC Garbage Collector (SkillsCast recorded in June 2020)
A Well-Typed Binomial Heap
Jasper Van der Jeugt was born in 1990, and spent most of his youth in Lokeren & Ghent, Belgium. He now lives in Zürich, Switzerland. Jasper has been coding and writing about Haskell since his time at Ghent University. He has been using the language professionally for the last three years, and in open source for much longer. He is currently a consultant for Luminal. In his spare time, he skateboards down mountains and takes pictures.