Computer Science Resources
Contents
- Haskell
- Dependent Types
- Machine Learning
- Algorithms & Data Structures
- Numerical, Mathematical & Physical Computing
- Misc
Here I will collect various resources related to computer science, especially as pertain to Haskell programming.
Haskell
Haskell is the world’s preimere functional programming language. First the Haskell homepage, tryhaskell.org for experimenting in the browser, and Hoogle to search haskell code by type or by name.
Beginner’s Haskell
- Learn You a Haskell for Great Good! – Probably the best absolute beginner’s introduction.
- Real World Haskell – Another excellent free-to-read Haskell book focused on practical applications.
- Learn Haskell Fast and Hard
- Haskell School of Music – Teaches Haskell along with principles of computer music. By the late and great Paul Hudak. PDF here.
- What I Wish I Knew When Learning Haskell – Reference for a wide range of Haskell topics.
- Haskell by Example
- The Haskell Road to Logic, Math and Programming (PDF)
Haskell Topic Overviews
- Typeclassopedia – These typeclasses, and underlying categorical concepts, are faily crucial to becoming a proficient haskeller.
- State of the Haskell Ecosystem
- Category Theory for Programmers series
- Haskell Theoretical Foundations – a category on Haskell wiki
- The Algebra of algebraic data types
- Parallel and Concurrent Programming in Haskell
Targeted Haskell Tutorials
- Functors, Applicatives, And Monads In Pictures
- 24 Days of GHC Extensions
- Image Processing with Comonads
- Cofun with Cofree Comonads
- An Introduction to Recursion Schemes
- Practical Dependent Types in Haskell: Type-Safe Neural Networks
- Type Families and Pokemon
- Grok Haskell Monad Transformers
- Fixed-Length Vector Types in Haskell, 2015
- Numeric Haskell: A Vector Tutorial
- Program imperatively using Haskell lenses
- Mutable State in Haskell
- TemplateHaskell tutorial by Sean Westfall
- Functional programming with graphs
Dependent Types
- Pi-Forall – A demo implementation of a simple dependently-typed language
- Software Foundations
- Learn you an Agda – And achieve enlightenment
Machine Learning
- Deep Learning for Beginners
- Awesome Deep Learning Papers – curated list by Terry Taewoong Um.
- Tensorflow exercises
Algorithms & Data Structures
Numerical, Mathematical & Physical Computing
- Haskell Fast Fourier Transform tutorial series
- Computational Physics with Python
- Digital Geometry Processing with Discrete Exterior Calculus
- 0.30000000000000004.com