Things to do-----
The Gui:
1 Linking the instrument select box into the edit pane so that it will
be activated on selecting an instrument and put text into the editor pane
in a smart way.
The Backend:
1 Errors are not very descriptive and the semicolon error just causes
an endless loop, that needs to be fixed.
2 Haskell syntax doesn't need semicolons, the editor pane syntax should
follow suit. The editor pane now requires a semicolon after every line. One
way to fix this, is to simply go into the Html.java file and rewrite the
method that gets called when it finds a 'semiToken'. We can change the
logic in the lexer to look at a '\n' character and pop out a 'semiToken'.
3 For some reason we are getting unbound variable errors with some of
the more obscure note functions, this is not good. All the 'dh dq h s p...'
functions should work properly to change the speed of the note.
4 Testing should be done, again on alot of the new music stuff that was
put in.
5 Put all performance of midis into a different thread so the user can
still operate while music is playing. Also be able to stop the music
mid-play in a better way.
New Features:
1 Type checker, to show syntax errors while they are happening and code
hinting.
2 Save individual music expressions and not have to save all of them.
3 Loading an saving the scripts to make music.