Bug fix: update operators were not being evaluated correctly. The code I had written assumed that the function passed to an update operator would only be evaluated once. However he 'qualRefUpdate' function actually tries to evaluate the function several times when the 'Dao.Interpreter.QualRef' is unqualified because it needs to check for where the variable has been defined (if at all), it could be defined in the local variable stack, the static variable dictionary, or the global variable dictionary. The code I had written would fail if we were using an update operator like "+=" but the variable was undefined, which meant when 'qualRefUpdate' looked-up a variable in the local variable stack and found nothing, the update function would fail before 'qualRefUpdate' could move on to the static variable store or the global variable store and try to perform the updates there. This has been fixed.
Bug fix: update operators were not being evaluated correctly. The code I had written assumed that the function passed to an update operator would only be evaluated once. However he 'qualRefUpdate' function actually tries to evaluate the function several times when the 'Dao.Interpreter.QualRef' is unqualified because it needs to check for where the variable has been defined (if at all), it could be defined in the local variable stack, the static variable dictionary, or the global variable dictionary. The code I had written would fail if we were using an update operator like "+=" but the variable was undefined, which meant when 'qualRefUpdate' looked-up a variable in the local variable stack and found nothing, the update function would fail before 'qualRefUpdate' could move on to the static variable store or the global variable store and try to perform the updates there. This has been fixed.

printedheart/Dao