Supercollider sounds like what you're after. You can even use vim :)
https://github.com/pjagielski/awesome-live-coding-music here's a list of related stuff