Thomas Dinges demonstrates the Open Shading Language node – it allows you to write your own shaders, compile them and connect them in the node editor.
From the Code.blender.org blog:
The Cycles render engine has two shader systems.
SVM (Shader Virtual Machine) is the default shader system but the engine also has support for OSL (Open Shading Language).
The OSL shader system was working on a basic level back in April 2011 when Cycles got released, but afterwards it was not updated as Cycles itself was very young and needed to mature still. There would have been no benefit in supporting both backends from the very beginning.
Lukas Tönne and myself updated the OSL backend in Cycles for the last couple of weeks and brought it up to speed again. We had to fix a bunch of compiler errors first, as the OSL API itself changed as well over the past year.