reading-group
                                
                                 reading-group copied to clipboard
                                
                                    reading-group copied to clipboard
                            
                            
                            
                        #+TITLE: Haskell Reading Group #+SUBTITLE: [[https://github.com/hackwithlambda/reading-group][Fork me on GitHub]] || By [[http://themattchan.com/][@themattchan]] and [[https://bryangarza.github.io/][@bryangarza]] #+HTML_HEAD: #+OPTIONS: html-postamble:nil
- why functional programming is the correct way to program
- [[http://www.cse.chalmers.se/~rjmh/Papers/whyfp.pdf][Hughes. Why functional programming matters.]] [[https://www.youtube.com/watch?v=1qBHf8DrWR8][(talk)]]
- optional [[https://www.cs.cmu.edu/~crary/819-f09/Landin66.pdf][Landin. The next 700 programming languages]]
- optional [[https://www.cs.cmu.edu/~crary/819-f09/Backus78.pdf][Backus. Can Programming Be Liberated from the von Neumann Style?]]
- the elegance of functional programming
- [[http://www.cs.tufts.edu/~nr/cs257/archive/richard-bird/sudoku.pdf][Bird. A program to solve Sudoku]]
- [[http://www.cs.nott.ac.uk/~pszgmh/countdown.pdf][Hutton. The countdown problem.]]
- folds
- [[http://www.cs.nott.ac.uk/~pszgmh/fold.pdf][Hutton. A tutorial on the universality and expressiveness of fold]]
- monads (and typeclasses)
- [[https://page.mi.fu-berlin.de/scravy/realworldhaskell/materialien/the-essence-of-functional-programming.pdf][Wadler. The essence of functional programming]]
- applicatives
- [[http://www.staff.city.ac.uk/~ross/papers/Applicative.pdf][McBride and Paterson. Applicative programming with effects]]
- typeclasses and the typeclass hierarchy
- [[http://people.csail.mit.edu/dnj/teaching/6898/papers/wadler88.pdf][Wadler and Blott. How to make ad-hoc polymorphism less ad-hoc.]]
- https://wiki.haskell.org/Typeclassopedia
- Semigroup, Monoid, Arrow, Category, [[Https://hackage.haskell.org/package/comonad][Comonad]], and the other typeclasses by Edward Kmett
- parametricity and program calculation
- [[https://people.mpi-sws.org/~dreyer/tor/papers/wadler.pdf][Wadler. Theorems for free!]]
- maybe? [[http://www4.di.uminho.pt/~mac/Publications/phd.pdf][Cunha. Point-free Program Calculation]]
- program calculation, contd
- [[http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.41.125&rep=rep1&type=pdf][Meijer, Fokkinga, and Paterson. Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire]]
- fusion and optimisation
- [[http://ac.els-cdn.com/030439759090147A/1-s2.0-030439759090147A-main.pdf?_tid=77caccdc-fcac-11e6-968b-00000aacb35d&acdnat=1488173015_5ee058d8bb962798340f34943f4c6c4b][Wadler. Deforestation: transforming programs to eliminate trees]]
- DSL embeddings
- [[http://www.cs.ru.nl/~W.Swierstra/Publications/DataTypesALaCarte.pdf][Swierstra. Data types a la carte]]
- [[http://www.cs.nott.ac.uk/~psztxa/publ/beast.pdf][Swierstra and Altenkirch. Beauty in the Beast.]]
- DSLs, contd
- [[http://okmij.org/ftp/tagless-final/JFP.pdf][Carette, Kiselyov, and Shan. Finally Tagless, Partially Evaluated]]
extras
- [[https://www.st.cs.uni-saarland.de/edu/seminare/2005/advanced-fp/docs/huet-zipper.pdf][Huet. The Zipper]]
- [[http://strictlypositive.org/diff.pdf][McBride. The Derivative of a Regular Type is its Type of One-Hole Contexts]]
- [[http://strictlypositive.org/CJ.pdf][McBride. Clowns to the left of me, jokers to the right.]]
- [[https://rkrishnan.org/files/wadler-1985.pdf][Wadler. How to replace failure by a list of successes.]]
- [[http://belle.sourceforge.net/doc/hughes95design.pdf][Hughes. The Design of a Pretty Printer.]]
- [[http://homepages.inf.ed.ac.uk/wadler/papers/prettier/prettier.pdf][Wadler. A prettier printer.]]
- [[http://www.cs.nott.ac.uk/~pszgmh/alacarte.pdf][Day and Hutton. Compilation a la Carte]]
- [[https://www.cs.cmu.edu/~crary/819-f09/DamasMilner82.pdf][Damas and Milner. Principal type-schemes for functional programs.]]
- https://wiki.haskell.org/Research_papers/Functional_pearls
- https://www.cs.cmu.edu/~crary/819-f09/