Description
Currently, in kore-rpc-booster
we rely on Kore's simplifier to simplify the execution state before returning it to the client. One of the reasons for that is that Kore extracts the substitution from constraints and applies it to the configuration. We, however, could do it in Booster.
Here's an idea by @jberthold on what we should do:
I think we could take a different approach, namely to identify substitution-like constraints in the internal format and then apply the substitution as well as return it.
That would probably be part of the final simplification before returning the
execute
result. An even more invasive change would be to carry a substitution within thePattern
type which is accumulated as we rewrite the term (accommodates the substitution that is returned bykore-rpc
when we fall back).
We do not have to extend the internalPattern
type with a substitution field if we only handle substitutions at the end.