Curated list of awesome lists
Awesome Functional Programming
Based on the Awesome project
What is this about?
On the last decade, functional programming has gained a new found power due to its
declarative characteristics which, some would say, are very effective for parallel computing
and for the whole usage of Moores Law.
This repo gathers some material on Functional Programming such as blog posts, papers, videos,
tools, etc. and also aims to clarify some of the theoretical subjects behind it.
Want to contribute? Please refer to this first.
Table of Contents
Blog posts
Papers
Wikis
-
nLab - A wiki-lab with articles, discussion and tools from the point of view of category theory, which is the main math behind FP.
-
Haskell/Category Theory - A good overview on Category Theory applied to Haskell from Wikibooks.
-
Haskell Wiki
Books
-
Learn you a Haskell - Book, but you can read it online for free as well. Very beginner friendly.
-
The Little Prover - Talks about
a theorem prover called JBob for writing proofs in LISP.
-
Isabelle/HOL - A Proof Assistant for Higher-Order Logic - A Book on implementing logical formalisms in Isabelle/HOL.
-
The Little MLer - A book focused on teaching types, recursive thinking and other important subjects in Standard ML.
-
Introduction to Programming using SML - Introduces you to programming design in a very mathematical way.
-
How to Design Programs / Second Edition
-
Introduction to Functional Programming
-
Haskell in Depth - the perfect second book on Haskell which dives into examples and application scenarios designed to teach how Haskell works and how to apply it correctly.
-
Grokking Simplicity: Taming complex software with functional thinking - Teaches functional programming from first principles using real-world scenarios.
-
Functional Programming in Scala, Second Edition - International bestseller revised with new exercises, annotations, and full coverage of Scala 3.
-
Functional Programming in C#, Second Edition - Real world examples and practical techniques for functional programming in C#.
-
Grokking Functional Programming - Introduction to functional programming.
-
Functional Programming in Kotlin - Master techniques and concepts of functional programming to deliver safer, simpler, and more effective Kotlin code.
-
Functional Design and Architecture - Design patterns and architectures for building production quality applications using functional programming, with examples in Haskell and other FP languages.
-
Haskell Bookcamp - In this book, you’ll get practical experience writing Haskell code and applying functional programming to actual development challenges.
-
Mastering Functional Programming - If you are from an imperative and OOP background, this book will guide you through the world of functional programming, irrespective of which programming language you use.
-
Jax in Action - A book about The JAX numerical computing library.
-
Learn PowerShell Scritping in a Month of Lunches - Automate complex tasks and processes with PowerShell scripts.
-
F# in Action - Book about practical F# development skills needed to create professional applications.
-
Elixir in Action, Third Edition - Fully updated to Elixir 1.14, this authoritative bestseller reveals how Elixir tackles problems of scalability, fault tolerance, and high availability.
Communities
-
Lambda the Ultimate - Community focused on discussing researches, papers
and hot topic on academia. Very high tech discussion level.
-
FP Complete - Community focused on helping companies and students on learning and implementing Functional Programming in Haskell. Hosters of one of the most famous Haskell learning centers: School of Haskell
-
Haskellers - The meeting point for Haskell Programmers
-
ElixirLangMoscow - Russian Elixir community
Discussions (Quora, Stack Overflow, Reddit, etc)
Videos
Lectures
Platforms
- [Paqmind.com] – Guides and challenges to learn and improve in programming. All content is CS and FP oriented.
-
Isabelle/HOL - Generic proof assistant based on Higher Order Logic
Repos
People
-
Simon Peyton Jones - One of the creators of the Haskell Language and the Glasgow Haskell Compiler. Microsoft Researcher.
-
Philip Wadler - Professor of Theoretical Computer Science at the University of Edinburgh, author of the famous paper Propositions as Types. One of the main people behind Java Generics Types.
-
Matthias Felleisen - Author of many books such as How to Design Programs, and The Little Schemer.
-
Erik Meijer - Former software architect for Microsoft, Functional Programming researcher, gives lectures on FP, Software Design and Reactive programming.
-
Brian Beckman - Former Microsoft Researcher, actual Software Engineer at Amazon. Contributed to implementing FP features to inumerous Microsoft technologies such as C#, LINQ and F#
License
To the extent possible under law, Lucas Viola has waived all copyright and related or neighboring rights to this work.