...
Procedural textures are calculated while rendering.
Extensions are implemented as a set of classes which must be inherited from to create your own extension. These base classes have some pure virtual methods which, when properly implemented, provide the basic functionality and there are other virtual methods which provide optional functionality.