Changes

Jump to: navigation, search

VTLUUG:2016-03-24

1,272 bytes added, 07:18, 3 January 2018
no edit summary
== Date, Time, and Location ==
* Thursday, 25 February24 March
* 8:30pm - 10:30pm
* 1040 [[gp:Torgersen Hall|Torgersen Hall]]
*Officer Elections
** This is a consequence of new club registration policies.
 
=== Results ===
 
* President
** Jacob Melton
* VP of '''not''' IT
** Marcus Wanners
* Secretary/Treasurer
** John Volk
== Talks ==
* [[User:acthetackthet|acthetackthet]] is giving the talk: '''Lambda Calculus for Babies. Retarded Babies.'''
** First in ackthet's 10-part talk on Xmonad, starting from the basics of haskell
* New Website?
* [[Infrastructure 2016]]
 
== Lambda Calculus for Babies: Retarded Babies ==
 
Lambda Calculus forms the fundamentals of functional programming. If it can be described as a function,
it can be described in the lambda calculus and consequently written in Haskell
 
[https://linx.vtluug.org/selif/97s2gvcx.pdf Slides]
 
=== Alpha equivalence ===
* Variable name doesn't matter
 
=== Beta reduction ===
Meat of Lambda calculus.
 
=== Currying ===
Allows for nested functions. Functions manipulate each input individually
 
===Examples===
 
<pre>
(ƛx.x)2
(ƛ[x:=2]) x is bound to 2
2
</pre>
 
<pre>
 
(ƛz.zz)(ƛy.yy)
(ƛ[z:=(ƛy.yy)].zz)
(ƛy.yy)(ƛy.yy)
(ƛy.yy)
1
 
</pre>
 
<pre>
 
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 parenthesis in
(ƛc.czz)(ƛw.(ƛv.w)) So c is applied last
(ƛw.(ƛv.w))zz
(ƛv.z)z
z
 
</pre>
<pre>
 
(ƛx.ƛy.xyy)(ƛa.a)b
(ƛy.(ƛa.a)yy)(b)
(ƛa.a)bb
bb
</pre>
 
<pre>
(ƛx.x)(ƛy.yy)(ƛz.zq) (ƛx.x) is the identity
(ƛy.yy)(ƛz.zq)
(ƛz.zq)(ƛz.zq)
qq
</pre>
 
[[Category:VTLUUG:Meetings]]
[[Category:2016]]
Anonymous user

Navigation menu