If you want to generate sound by typing lists of numbers, check out csound. Anything you write can be midi-controllable as long as your computer can render it in real-time. (If you're not so much into typing, there's a few dozen graphical front ends that might suit you -- I'd suggest a look at blue.)
Similarly, Nyquist, with a lisp-like language, for the CS students out there. Supercollider, for people with macs. (Kidding. It also works, reluctantly, on other platforms.) PureData if you prefer clicking over typing. Or, y'know, Buzz, which afaik is free but not open source.