Currently the partial evaluator folds errors into error("error text goes here") … Instead it should just leave the original expression, so as to maintain that partial evaluation results in valid policy.
(This will take some care, the ifThenElse, and, or, are heavily tied to how it works now. Likely the main change will be in tryPartial to no longer bubble up the error, but to do the same as the tryFold implementation does, and just return the folded node.)
Currently the partial evaluator folds errors into error("error text goes here") … Instead it should just leave the original expression, so as to maintain that partial evaluation results in valid policy.
(This will take some care, the ifThenElse, and, or, are heavily tied to how it works now. Likely the main change will be in tryPartial to no longer bubble up the error, but to do the same as the tryFold implementation does, and just return the folded node.)