MIT has introduced a new language for use of multicore processing platforms called Halide. It seems to use C++ as it's general structure and form but separates the program into 2 portions.
The first is a scheduler and the second is the actual process to do work.
It does hold promise for handling things that require parallelism (also known as the class of problems called embarrassingly parallel). I was thinking of Ray tracing et al. However some of the things that we are doing with emulation might work well with that type of paradigm as well. IE dynamic recompilation,audio generation etc.
Something to think about.