Most often when using matchers, there is a need to get the root node that the matcher matched on.
Currently the only way to do this is to manually create a binding the the root matcher, however this has some drawbacks.
It can be prone to typos and there is no universal agreed name to give the root node, so an API that accepts a DynTypedMatcher wont be able to figure out what the root actually is.
By altering the infrastructure to always provide access to the node being matched on, that isn't dependent on names, it can simplify workflow a lot.