Kernel WYSIWYG rooted digraphs
I said in comments that I view backquote as a WYSIWYG tree ctor, analogous to `list'.
That's not fully general
But backquote doesn't suffice to construct the most general form of open structure of pairs, a rooted digraph. Those require the ability to share objects between multiple parents.
Things that don't do the job
One could write shared objects by naming objects in a `let' form and
including them by name. That's not WYSIWYG, though. WYSIWYG would at
least present the objects in place once, as
But that's in the reader. It's not available to general code.
What to do
- Enclose the whole construction in an empty `let'.
Provide a combiner expanding to
($sequence ($define! x DEF) x)