I have done a fair amount of GPU graphics programming using the Processing Java dialect. GPU programming can be carried out using many other languages also, but the main thing is not the host language but rather to understand GLSL, the GPU, the graphics algorithms and techniques, and of course the associated mathematics.
Simple screenshots illustrating some well known graphics algorithms and techniques: