sig
  type light_pname =
      GL_SPOT_EXPONENT of float
    | GL_SPOT_CUTOFF of float
    | GL_CONSTANT_ATTENUATION of float
    | GL_LINEAR_ATTENUATION of float
    | GL_QUADRATIC_ATTENUATION of float
    | GL_SPOT_DIRECTION of (float * float * float)
    | GL_AMBIENT of (float * float * float * float)
    | GL_DIFFUSE of (float * float * float * float)
    | GL_SPECULAR of (float * float * float * float)
    | GL_POSITION of (float * float * float * float)
end