HEAPLab Talks: Memoization in Haskell
Memoization in Haskell: a quick tale of recursion, fixed points, lazy evaluation and memoization
Alessandro Di Federico
DEIB PhD student
DEIB - PT1 Room
September 11th, 2017
2.30 pm
Research Line:
Advanced software architectures and methodologies
Alessandro Di Federico
DEIB PhD student
DEIB - PT1 Room
September 11th, 2017
2.30 pm
Research Line:
Advanced software architectures and methodologies
Sommario
On Septeber 11th, 2017 HEAPLab Talk: “Memoization in Haskell: a quick tale of recursion, fixed points, lazy evaluation and memoization”, will be held in DEIB PT1 Room at 2.30 pm.
Haskell is a popular functional programming language. One of its key features is the so called "lazy evaluation".
In this talk we will see how can we exploit it to play with infinite lists and other concepts uncommon in other programming languages. We will also play with recursive functions and introduce elegant ways to improve their performance through local and global memoization, and discuss why it can be done and what happens under the hood.
This talk doesn't require any experience with Haskell, most examples will be presented both in Python and in Haskell for easier
understanding. Nevertheless, a general idea of the key characteristics of functional programming will be helpful.
Haskell is a popular functional programming language. One of its key features is the so called "lazy evaluation".
In this talk we will see how can we exploit it to play with infinite lists and other concepts uncommon in other programming languages. We will also play with recursive functions and introduce elegant ways to improve their performance through local and global memoization, and discuss why it can be done and what happens under the hood.
This talk doesn't require any experience with Haskell, most examples will be presented both in Python and in Haskell for easier
understanding. Nevertheless, a general idea of the key characteristics of functional programming will be helpful.