Trait of objects that treated as unification variables.
A substitution that binds Syms to arbitrary values.
It is often necessary to generate names that are guaranteed fresh and the companion object method, Sym.fresh makes it easy to do so:
The exception thrown by unification when unification fails.
A generic unification algorithm.
Package documentation