STR-76: Undefine dynamic rules on backtracking
STR-76: Undefine dynamic rules on backtracking

dr-left-choice(s1,s2|rulenames) implements a left choice with dynamic
rule roll-back in case s1 fails for all rules with their name in the
list rulenames.

General roll-back for all dynamic rules in all choices will not be
implemented as it woul be (1) to expensive and (2) difficult to
implement, since it would require some way to know about all dynamic
rules (that are affected by a strategy).

Note that this operation is not cheap: it requires setting up a change
set for every dynamic rule in the list and later committing or
discarding it.


svn path=/trunk/StrategoXT/; revision=13202

metaborg/strategoxt,Apanatshka/strategoxt,Apanatshka/strategoxt,Apanatshka/strategoxt,lichtemo/strategoxt,lichtemo/strategoxt,metaborg/strategoxt,lichtemo/strategoxt,metaborg/strategoxt,Apanatshka/strategoxt,lichtemo/strategoxt,metaborg/strategoxt,metaborg/strategoxt,Apanatshka/strategoxt,lichtemo/strategoxt