mirror of
https://github.com/papers-we-love/papers-we-love.git
synced 2024-10-27 20:34:20 +00:00
2.2 KiB
2.2 KiB
Haskell
- A History of Haskell: Being Lazy With Class by Paul Hudak, John Hughes, Simon Peyton Jones
- 📜 Tackling the Awkward Squad: monadic input/output, concurrency, exceptions, and foreign-language calls in Haskell by Simon Peyton Jones
- 📜 Making a Fast Curry: Push/Enter vs. Eval/Apply for Higher-order Languages by Simon Marlow and Simon Peyton Jones. A classic... describes well the execution model GHC uses for Haskell, and catches the brilliant authors in a design pivot from original intuition to new conclusions based on empirical data.
- 📜 A Poor Man's Concurrency Monad by Koen Claessen. Paper describes how without adding any primitives to the language, you could define a concurrency monad transformer in Haskell.
- 📜 Parallel Generational-Copying Garbage Collection with a Block-Structured Heap. In Haskell, data immutability forces us to produce a lot of temporary data but also helps to collect this garbage rapidly. This paper explains how the Glasgow Haskell Compiler accomplishes this task in a simple, yet effective, manner with no programmer intervention.
- Notions of Computation and Monads by Eugenio Moggi. One of the canonical references for Monads in the functional paradigm. It relates the semantics of computations to equivalences of programs for various notions of computations.
- The Essence of Functional Programming by Philip Wadler. This paper uses monads to structure functional programs in Haskell. A very good reference for understanding monads and more generally in the context of programming languages.