The automatic differentiation of numeric functions expressed in lambda-notation is studied. A set of graph-reduction rules which handles partial derivatives as well as chain differentiation is presented. These rules are implemented within a general lambda-calculus reduction machine programming system. The set of valid expressions for differentiation is defined and a proof of the correctness of the differentiation functions is given. A comparison is made between our method of computing derivatives of lambda expressions and other automatic differentiation techniques. Numerous examples of the use of the new differentiation functions are described