speaking for less concepts, the MIDI output is just a translation of the data generated by the script’s sequencing maths – so the data is able to be agnostically re-formatted to the syntax a particular sound engine expects 
this happens in the iterate() function which starts on line 175:
if seed_as_binary[v1_bit] == 1 then
engine.noteOn(1,midi_to_hz((notes[coll][scaled])+(48+(v1_octave * 12)+semi)),127)
the engine.noteOn... part is just the formatting Passersby expects (voice,hz,velocity), so it could easily be substituted for the syntax required by FM7.
@lazzarello, seems like FM7's engine.start() command requires a voice ID and a “MIDI” note?