Guarantee that only IValues are assigned to non-loal variables.
Changed muRascal syntax:
- Added a label to muWhile
- Removed labeled expressions
- Added muContinue, muBreak, muFail.
Created separate module TmpAndLabel for management of temporaries and
labels.
Various additions to r2mu:
- Reflect labels in muWhile.
- Added implementation for break and continue.
Changed code generation for control flow.
- All loops have now names and break/continue/fail labels are derived
from it.
- Improved code for backtracking.
- Added cases for muContinue, etc.
Extended muFunction with fields modifiers and tags:
- modifiers (test/java/default) and tags are now passed from front-end
to backend.
Added a report_test_result primitive
Generate separate testsuite code for tests in module
Added "testsuite" flag: runs testsuite instead of main.
Added a source location to muFunction

This location propagated to the RVM level where it is currently used by
report_test_result (enabling Eclipse integration).
Major renaming in RascalPrimitives

- instead of update_list, list_update, etc.
- for writers: open/close, e.g., listwriter_open
- for creation: list_create.

- Also added stdout argument tot init in order to resuse the PrintWriter
from the context.
Caching the parsing of the muRascal library.

Parsing (and the first time around: also generating a parser for) the
concrete MuRascal library was a bottleneck for compilation (and hence
testing). When a pre-compiled version of the library exists and is
up-to-date that version is used, otherwise the library is parsed and
compiled as before (but now also saved for re-use!).
Sanitized the printed output of all compiler phases.
Added muFailReturn to muRascal and FAILRETURN to RVM

- reorganized RVM AST and documented every instruction
- a Rascal fail statement outside a backtracking context now generates a
muFailReturn which ends up as FAILRETURN.
Added more tests for expressions
Added and implemented FAILRETURN in RVM

Note: FAILRETURN now behaves like RETURN0, but this should change to a
return to the overloading resolution frame.
Added a failure example
Propagated various recent changes
Preparing automatic stack size estimation.
Added an explicit arity field to all call-related instructions

- This is better for instruction locality and enables simpler stack size
estimation.