I know that computer programs have been around for a very long time to convert speech to text but is there a program which can convert subvocalizations into text? It would be much more usable as a classroom tool than having twenty students talking at the same time.

Wikipedia has this - there is research being done, but results are inconsistent. My guess is that without the audio feedback loop, it is much harder for the brain to control the vocal apparatus reliably. I have seen articles that indicate that mobile phone manufacturers are also interested in this technology, but it just is not working reliably enough, yet.