The merge request gives around a 50x performance improvement based on the benchmark in zia/tests/implication.rs: what was taking around 1 second now takes about 21ms on my laptop. The cached syntax trees persist until the ContextDelta mutates after which the cache may be invalid and so is reset.
Some extra performance improvements were made through parallelisation with help from the rayon crate.
The merge request gives around a 50x performance improvement based on the benchmark in
zia/tests/implication.rs
: what was taking around 1 second now takes about 21ms on my laptop. The cached syntax trees persist until theContextDelta
mutates after which the cache may be invalid and so is reset.Some extra performance improvements were made through parallelisation with help from the
rayon
crate.