My old project from around 2011-2012.
The project includes a command line "compiler" (compiles a MusicString into a WAV file) and Visual "IDE".
WARNING: I'm publishing the old source codes as is, in whatever state I left this project while back, if you want to play with it, you're on your own!
https://github.com/Frooxius/MusicString/blob/main/doc/Documentation.pdf
MusicString is a programming language for writing simple tones and music using just a few ASCII characters, allowing easy sharing of such tunes via text-based media like webpages, forums, micro blogging services (e.g. Twitter), IRC chats or Instant Messaging. The goal is to provide a simple way to write music and tunes with as few characters as possible, while keeping the syntax simple and straightforward.
Tunes and music are written as series of tones that are played in a sequence. Each tone is expressed with a single letter from the English alphabet, where each letter produces different frequency (pitch). MusicString is capable of playing theoretically unlimited number of channels at the same time, allowing creating chords or using several instruments at once. Composer can choose from several instruments, where default set is composed from several basic soundwaves (sine, square, triangle, sawtooth, pluck and noise). Apart from pitch and instruments, it’s also possible to change duration, volume and volume envelope (constant, fade in, fade out) of each tone. Language also provides constructs for reusing and repeating parts of the sequence and more advanced features like nested expressions.