View Source Document

README.md

Functional Programming

(Up) | See also: Lambda Calculus


Web resources

Functors, Applicatives, And Monads In Pictures - adit.io ★★★

What is the origin and meaning of the phrase "Lambda the ultimate?"

Converting a function to use tail recursion -- a formal study

Do Applicative Functors Generalize the S & K Combinators? - Brandon.Si(mmons)

Railway Oriented Programming | F# for fun and profit ★★

How to implement scheme\'s letrec in a lazy dialect?💭

Recitation 21: Let Expressions & The Environment Model

(in Compiler Construction) Example assembly/machine instruction from lambda calculus ★★ 💭

(in Game Development) Immutable.js: Data structure to represent 2D game field

(in JavaScript) How are people implementing immutable data structures in JavaScript when the language doesn't offer any obvious way of implementing immutability?

Repositories

PseudoPower/AFSM: Arrowized functional state machines ★★★

(in Compiler Construction) natefaubion/example-functional-compiler

(in Programming Languages) ympbyc/Carrot: Purely functional lisp featuring: default currying, left-associative s-expression, lazy evaluation, static type system, and statically determined multimethods. ★★★

(in Programming Languages) ncihnegn/miranda: Miranda is a pure, non-strict, polymorphic, higher order functional programming language designed by David Turner in 1983-6.

(in Programming Languages) UnrealVerseGuru/VerseProgrammingLanguage: Verse Programming Language - Functional logic language developed by Epic Games - all informations, official resources and snippets

(in User Interface) art-w/unicorn: Purely functional GUI algebra ★★

Papers

A tutorial on the universality and expressiveness of fold (online @ www.cs.nott.ac.uk) ★★★ 💭

Total Functional Programming (online @ www.jucs.org) ★★ 💭

Turner, Bird, Eratosthenes: An Eternal Burning Thread (online @ www.cs.ox.ac.uk) ★ 💭

Fast and Loose Reasoning is Morally Correct (online @ www.cs.ox.ac.uk) ★ 💭

let (rec) insertion without effects, lights or magic (online @ icfp19.sigplan.org) 💭

(in Computational Complexity) Pure vs Impure Lisp (online @ dl.acm.org)

(in Type Systems) Initial Algebra Semantics is Enough! (online @ libres.uncg.edu) ★ 💭

Books

Structure and Interpretation of Computer Programs (online @ archive.org (2nd ed.), archive.org (2nd ed. HTML)) (borrow @ archive.org (1st ed.)) 💭

Purely Functional Data Structures (online @ archive.org)

ACM Symposium on LISP and Functional Programming, 1984 (borrow @ archive.org) ★ 💭

(in Type Theory) Type Theory and Functional Programming (online @ www.cs.kent.ac.uk)