The assembler works by first sourcing a device file that contains the fuse definitions and macrocell operating features. This file is written entirely in TCL, but no knowledge of TCL is required since the commands that a device file contains are the only routines required to interface with the interpreter. The macrocell blocks are the most interesting. Their declarations contain embedded code that is executed only if the named operating mode is established. TCL is very handy in this regard.
Propagation continues until a fused array is encountered.
The device definition files are quite large, but they only need to be created once. Maybe one day, there will be a library of them. I have tried to document the code, but some of it is pretty disorganized. More documentation will eventually be made available.