Programming Language Theory: Difference between revisions

Line 13: Line 13:
*<tt>K ≡ λx, y. x</tt> (generation of constant functions)
*<tt>K ≡ λx, y. x</tt> (generation of constant functions)
*<tt>S ≡ λx, y, z. (x z (y z))</tt> (generalized function application)
*<tt>S ≡ λx, y, z. (x z (y z))</tt> (generalized function application)
====Grammar====
<pre>C-term ::= C-app | C-prim | var
C-app ::= C-term C-term</pre>
====Fixed-Point Combinators====
====Fixed-Point Combinators====
For a function F, its set of ''fixed points'' are those inputs which map to themselves. The ''fixed-point combinators'' compute the fixed points of their inputs. Curry's ''Y-combinator'' was the first:
For a function F, its set of ''fixed points'' are those inputs which map to themselves. The ''fixed-point combinators'' compute the fixed points of their inputs. Curry's ''Y-combinator'' was the first: