aboutsummaryrefslogtreecommitdiff
path: root/dev
diff options
context:
space:
mode:
authorEnrico Tassi2019-02-19 14:55:01 +0100
committerEnrico Tassi2019-02-22 23:49:32 +0100
commitb13e6d67084f7e35595513ffa1045ba6bdccd482 (patch)
tree08b4139a4bd18d695906c32b8dfe898ee0f6bbbd /dev
parentdea9f08178efcf9cfac7ee2970dc21abc2fde308 (diff)
[kernel] termination checking backtracks on stuck case
The strategy is to backtrack when a constant is in head position: we first try to see if the arguments are guarded, if not we unfold. Since `Case` is represented as a head (rather than as a context as the reduction machine does) we did not backtrack there and reduce (including delta) the scrutinized in order to fire the iota redex. This commit adds a choice point in that specific case, and reduces eagerly (not step by step) the scrutinized in case of failure.
Diffstat (limited to 'dev')
0 files changed, 0 insertions, 0 deletions