Comparing revisions for page Functional data structures

Back to history list
  == Headline ==

Functional data structures in Haskell

== Description ==

We look at the implementation of abstract data types and concrete data structures in a functional manner - without relying on side effects and thereby providing a form of persistence. To this end, we leverage so-called functional data structures which exploit (path) copying to achieve persistence while potentially leveraging lazy evaluation to achieve competitive performance (complexity). We demonstrate functonal data structures for stacks and heaps.

== Material ==





== Concepts ==

* [[Lazy evaluation]]
* [[Functional data structure]]
* [[Binary search tree]]
* [[Stack]]
* [[Skew heap]]
* [[Amortized analysis]]

== Further reading ==

* [[Document:Handbook of data structures and applications]]
* [[Document:Okasaki96]]
* [https://github.com/101companies/101repo/tree/master/concepts/Functional_data_structure]

== Metadata ==

* [[memberOf::Course:Lambdas in Koblenz]]
* [[dependsOn::Script:Data modeling in Haskell]]
* [[dependsOn::Script:Abstract data types in Haskell]]