If you don't really need arbitrary text, you might find Win32::Sound useful. I use it in many of my long-running utilities to alert me of problems. You can easily record messages into .WAV files (I have been known to get my kids to record messages too), or you can assemble a message from individual .WAVs for some flexibility. For instance I have a file that says "unable to open" and then two other files that say "input" and "output". It's simple to keep a directory of such resources and assemble statements as needed, and though it doesn't give you the flexibility of speech synthesis, the sound is probably more understandable and I imagine it uses a lot less CPU.
in reply to Speech synthesis module
I'd like to be able to assign to an luser