Aside from the obvious user-defined vs implemented in source code,
can someone define and differentiate the difference between a "mathematical
primitive" like a
sphere {0, 1}
and an isosurface object such as
isosurface {function { x*x + y*y + z*z - 1 }} ?