Some History of Functional Programming Languages
summary
A concise history that claims lazy evaluation and type design drive modern functional languages, with concrete artifacts and results: 1936 lambda calculus, garbage collector born in Lisp around 1960, Algol 60’s by-name semantics, early implementations using the SECD machine and SK combinators, SASL/Miranda evolving into Haskell, and practical lazy code generation via the spineless tagless G-machine powering GHC. Key numbers and dates appear, several implementations get built and iterated, and laziness proves practical after decades of optimization.
AI-written summary · about
chapters (20)
- 0:00Start
- 1:14Lambda Calculus
- 1:42Pure Function
- 3:13Alpha Conversion
- 5:25Church-Rosser Theorem
- 8:30Lazy Evaluation
- 10:03Combinator's Combinational Logic and Lambda Calculus
- 13:03Lisp
- 14:05S Expressions
- 16:32The Lambda Calculus
- 16:52Lisp 1 5 Manual
- 18:07Algol 60
- 29:07Co-Routines
- 32:03Sasol
- 37:20Pattern Matching
- 41:56Notation for Algebraic Type Definitions
- 49:30Lexical Distinction between Functions and Constructors
- 51:26Haskell
- 53:49Type Classes
- 57:35What Do You Project for the Future of Functional Languages
related talks
51mPragmatism, Puritanism and Functional Programming
44mFunctional Programming: Failed Successfully
43mEverything You Always Wanted to Know About Functional Programming...
45mFP: The Good, the Bad and the Ugly
39mA Lazy Scheme In Haskell
58mType Theory Behind the Glasgow Haskell Compiler Internals (Part 3)
59mFunctional Programming for Machine Learning Panel
14mAchieving High-Performance the Functional Way - A Functional Pearl on Expressing High...
