I have a suggestion regarding GLSL shaders that from my point of view would speed up, facilitate and improve developing GLSL shaders:
that there is to be only one common shader file instead of two separate (one for the vertex shader and another one for the fragment/pixel shader) like it is now.
Then instead of the one obligatory main() function you could in this common shader file have the two obligatory functions fmain() executing the fragment program and vmain() executing the vertex
Then you would not have to switch between two files to answer questions like "Did I declare that varying variable in the other file?", "Was it
of the proper type?" etc.etc.
This would make it easier to find errors, (slightly) reduce total code mass and reduce the number of files in the development environment
file 'tree' so it would be quicker to spot the file you want to code in next.
This might also be more natural with coming unified shader GPU:s.
Could you please consider this unless there is some reason I don't know about making it an unfeasible idea.