Not sure what "true" and "magic" mean in this context. I could define `case class FreeVariable(value: Value) extends Tree` (which is isomorphic to a tree with a Value attachment), but I don't see how that would make it truer.

Also I'd like to note that the equations that you posted above do hold. `eval(q"$value") === value` and `val q"${value1: Value}" = q"$value"` implies that `value === value1`.