LegaSynth is an old chip/synthesizer emulator on top of an advanced software sound synthesis programming framework. It currently emulates the Yamaha DX7 FM Synth, the MOS6581SID (C64 soundchip), the Yamaha 2xxx FM series (very common in some personal synths, arcades, and the Sega Genesis), and the TB303. It supports the ALSA Sequencer API for midi input, and OSS/ALSA and JACK for output. A GTK graphical interface is provided to take full advantage of the synth, as well as for managing presets, patches, and banks, etc.
Q-Midi is a MIDI interface module which allows you to write MIDI applications in the Q programming language. It runs on top of Grame's MidiShare package. Most basic MidiShare functionality is available, including timing functions for realtime programming and MIDI file access. A sample MIDI player application is included (which requires Tcl/Tk).
Scheme Note is a Scheme-like music file format and MIDI conversion tool. It takes a text file, which is a representation of a song, loosely tied to a MIDI-like event structure, and outputs a corresponding MIDI file. It is hand-editable for simple songs, and should be very easy to parse for a GUI.