I guess we would have one winner, and a lot of loosers.
Now that the ISO core standard has its own mix,
everbody is a looser. Isn’t that fair?
If Arity/Prolog would have won, we would have in the
ISO core standard maybe:
/**
* Snips contain a goal or goals such that if backtracking
* attempts to resatisfy the snips, then the entire snips fail.
* It is similar to the cut but the scope of behavior is not the
* entire predicate but is delimited by the left and right
* barriers of the snips.
*/
goal1 :-
subgoal1,
[!
subgoal2,
subgoal3
!],
subgoal4.
http://petergabel.info/ArityProlog32/Programcontrol/
Just wonder whether this would give a nice syntax for
transactions. But I am afraid I have no clue how to parse it.
Maybe this is just the once/1 predicate?