I've posted about my abstraction level on CAL, written in pure C++, which allows to write less code than with pure CAL. There are a sample 4 times smaller than hellocal sample in SDK. That is here. Now I have mixed assembly (C++/CLI) with similar functionality. That is .NET gpgpu lib, safe and managed. Using that lib you will be available to write shaders in brook+(with keep IL(-k) option ) or HLSL (old GPUShader Analyzer 1.47 can compile HLSL to il) , fix them if you need in IL and run them from any language you want simply.
If you are interested in this you should send me private message.