Open main menu

Linux and Unix Users Group at Virginia Teck Wiki β

Changes

VTLUUG:2016-03-24

404 bytes added, 01:23, 25 March 2016
Lambda Calculus for Babies: Retarded Babies
=== Beta reduction ===
Meat of Lambda calculus.
 
=== Currying ===
Allows for nested functions. Functions manipulate each input individually
===Examples===
<pre>
Currying example: (ƛx.x)2 x is bound (ƛabc.cba)zz(ƛwv.w)(ƛ[x:=2x2]) to 2 (ƛa.(ƛb.(ƛc.cba)))(z)z(ƛw.(ƛv.w))) The first function 2 (ƛa.(ƛb.zba)z(ƛw.(ƛv.w) Only applies the first z
(ƛz.zz)(ƛy.yy)
(ƛ[z:=(ƛƛy.yy)].zz)
Currying example:
(ƛabc.cba)zz(ƛwv.w)
(ƛa.(ƛb.(ƛc.cba)))(z)z(ƛw.(ƛv.w))) The first function only applies the first z
(ƛb.(ƛc.cbz))z(ƛw.(ƛv.w)) applies from the outer parenths in
(ƛc.czz)(ƛw.(ƛv.w)) so c is applied last
(ƛw.(ƛv.w))zz
(ƛv.z)z
z
</pre>
 
=== Currying ===
Anonymous user