Cory Hudson sees callbacks as benefiting from currying JavaScript functions, and defines currying as turning a function with two arguments into a function with one argument that returns a function of one argument. He starts off with two functions and shows how to combine them into one curried function, and also builds a generic version. He shows a good usage of a curried function in an array map() function, which is similar to Prototype's bind().
An explanation of scope in terms of an execution context and scope chain. Also describes how we can alter the this reference using apply and call.