detector song; ## to get the filename
detector lyrics; ## extracts lyrics
detector melody; ## extracts melody
atom str name;
atom str text;
atom str note;
song: file lyrics melody;
file: name;
lyrics: text*;
melody: note*;
slide: A simple feature grammar for MIDI files