Hot answers tagged algorithmic-composition
I am not sure if they include all of the features you require. But the java jmusic library is quite extensive, I think that would be your best shot. Otherwise other options would be JFugues, music21 (python) or the visual programming language CSound, from ircam, also very extensive.
I think Overtone has what you're looking for and more. It's a Clojure library that acts as a powerful front-end to SuperCollider. It may take a while to learn how to use it (especially if you're new to Clojure), but once you do, it's quite powerful and flexible. You can do things like define a melody as a sequence of scale intervals, and then combine that ...
Only top voted, non community-wiki answers of a minimum length are eligible