Bundle methods for nonsmooth optimization and semismooth Newton methods for nonsmooth equation solving both require computation of elements of the (Clarke) generalized Jacobian, which provides slope information for locally Lipschitz continuous functions. Since the generalized Jacobian does not obey sharp calculus rules, this computation can be difficult. In this article, methods are developed for evaluating generalized Jacobian elements for a nonsmooth function that is expressed as a finite composition of known elemental piecewise differentiable functions. In principle, these elemental functions can include any piecewise differentiable function whose analytical directional derivatives are known. The methods are fully automatable, and are shown to be computationally tractable relative to the cost of a function evaluation. An implementation developed in C++ is discussed, and the methods are applied to several example problems for illustration.