1. A method for programmable processing in a computer graphics pipeline, comprising: receiving data from a buffer; performing programmable operations on the data in order to generate output, wherein the operations are programmable by a user utilizing instructions from a predetermined instruction set; and storing the output in memory; wherein the output stored in memory is used in performing the programmable operations on the data; wherein the predetermined instruction set includes a reciprocal operation, a reciprocal square root operation, a three component dot product operation, a four component dot product operation, a distance operation, a minimum operation, a maximum operation, an exponential operation, and a logarithm operation; wherein the instructions are each carried out using a unique associated method and data structure.