I've been wondering why a lot of things are the way they are in functional programming, not being very lambda inclined myself, I didn't seek it out, but this post summarized a lot that has been on my mind lately.<p>In particular, and with apologies for being so clueless – it never occurred to me why currying was necessary – I didn't realize lambda calculus required functions to take only one argument. With that limitation, currying is genius.