I have decided that the word 'Glob' is a better term for what I was calling a 'Pattern'. A glob is an old idea from UNIX where you can match arbitrary strings with wildcards, like writing "*.hs" in the command line and the command line automatically detects the "*" as a wildcard and expands the word to the list of all files matching the glob expression. This is in fact the very idea that inspired my 'Pattern' data type. But the word 'Pattern' was too general, so why not just call it a 'Glob'? So that is what I have done.
I have decided that the word 'Glob' is a better term for what I was calling a 'Pattern'. A glob is an old idea from UNIX where you can match arbitrary strings with wildcards, like writing "*.hs" in the command line and the command line automatically detects the "*" as a wildcard and expands the word to the list of all files matching the glob expression. This is in fact the very idea that inspired my 'Pattern' data type. But the word 'Pattern' was too general, so why not just call it a 'Glob'? So that is what I have done.
Renamed 'Dao.Object.currentDocument' to 'Dao.Object.currnetWithRef'.
Renamed anything data constructor where if it containing the substring 'Toplevel' that substring was replaced with the substring 'Top'.
Renamed anything data constructor where if it containing the substring 'Toplevel' that substring was replaced with the substring 'Top'.
Deadlock: recent changes have introduced a deadlock bug which has not yet been resolved. The changes made were to re-write the function 'Dao.Evaluator.programFromSource' to make better use of the changes to the abstract syntax tree, particularly the recent changes to 'TopLevelExpr'. Implementation is completed, but not debugged.