_index.md (2306B)
1 +++ 2 title = "Equational Programming" 3 +++ 4 5 # Equational Programming 6 I took this course in first year but hopefully it hasn't changed much 7 since then. 8 9 Contents: 10 11 - [Functional programming](functional-programming) 12 - [Haskell](haskell) 13 - [Normal form](normal-form) 14 - [Confluence](normal-form#confluence) 15 - [Booleans as lambda terms](booleans-as-lambda-terms#booleans-as-lambda-terms) 16 - [Finding booleans](booleans-as-lambda-terms#finding-booleans) 17 - [Negation](booleans-as-lambda-terms#negation) 18 - [Conjunction (AND)](booleans-as-lambda-terms#conjunction-and) 19 - [Disjunction (OR)](booleans-as-lambda-terms#disjunction-or) 20 - [Pair](pair#pair) 21 - [List](list#list) 22 - [definition](list#definition) 23 - [head and tail](list#head-and-tail) 24 - [Fixed point combinators](fixed-point-combinators#fixed-point-combinators) 25 - [Fixed point](fixed-point-combinators#fixed-point) 26 - [Fixed point combinator](fixed-point-combinators#fixed-point-combinator) 27 - [examples](fixed-point-combinators#examples) 28 - [Lambda terms](lambda-terms#lambda-terms) 29 - [abstraction](lambda-terms#abstraction) 30 - [application](lambda-terms#application) 31 - [terms as trees](lambda-terms#terms-as-trees) 32 - [parentheses](lambda-terms#parentheses) 33 - [currying](lambda-terms#currying) 34 - [free/bound variables](lambda-terms#free-bound-variables) 35 - [substitution](lambda-terms#substitution) 36 - [alpha conversion](lambda-terms#alpha-conversion) 37 - [beta reduction (dynamic)](lambda-terms#beta-reduction-dynamic) 38 - [Strategies](strategies#strategies) 39 - [Call by need](strategies#call-by-need) 40 - [Call by value](strategies#call-by-value) 41 - [Rightmost-outermost: not normalizing!](strategies#rightmost-outermost-not-normalizing) 42 - [Natural numbers as lambda terms](natural-numbers-as-lambda-terms#natural-numbers-as-lambda-terms) 43 - [Church numerals](natural-numbers-as-lambda-terms#church-numerals) 44 - [Definability](natural-numbers-as-lambda-terms#definability) 45 - [Recursion](recursion#recursion) 46 - [Famous lambda calculus terms](famous-lambda-calculus-terms#famous-lambda-calculus-terms) 47 - [Weak head normal form](weak-head-normal-form#weak-head-normal-form) 48 - [Keywords](keywords#keywords)