The first things I noticed when browsing this code is the quality and quantity of the comments.
I sometimes wish that low percentages of comments would generate a fatal error!
I sometimes wish that low percentages of comments would generate a fatal error!
Haskell has a `mode' called Literate Haskell, were everything is a comment, unless you specify otherwise (e.g. enclose it in \begin{code} and \end{code} pairs).
I don't yet seem to be at that level of evolution yet.
Btw, did you know that the 'SAIL' assembler/debugger was called 'FAIL' ?