Which Spec to Use ?
What specification version of GLSL would you recommend to use ? I believe they changed quite a bit from what I can recall from Opengl 2.0. Also what's the latest version of GLSL which has the least significant changes ? Basically what version would support the most hardware without requiring too much learning for future versions. Would anyone recommend something like Cg that compiles to GLSL and HLSL ?
Between OpenGL 2.0 (GLSL 1.10) and the latest spec for OpenGL 4.4 (GLSL 4.40) there have been some additions but also some changes (in/out instead of varying/attribute).
Go with GLSL 1.50 for OpenGL 3.2 (core) as a start. It supports the new naming scheme and is available almost everywhere (even MacOS). It's similar to OpenGL ES 3.0 and apart from additions nothing changed between that version and the latest one. If you need tessellation shaders, use at least 4.00, if you need compute shaders use at least 4.30. In short: for maximal compatibility use the lowest one that will work but don't go below 1.50 unless you have to!