A lot changes in 7 years...!
With THE-TUPLE! and THE-PATH!, you can make values like these:
>> @vid.[button "push me"]
== @vid.[button "push me"]
>> @{vector}.[1 2 3] ; when we get FENCE!
== @{vector}.[1 2 3]
>> @markdown/"*This* could be interesting."
== @markdown/"*This* could be interesting."
The @
suppresses evaluation, meaning you could pass them around without generating evaluation errors... and whatever you passed it to could read the type information. And we now know that @ carries binding, which is important here.
Who exactly pays attention to this and what it means, I don't know. This could be something DO would accept... e.g. it assumes if you DO a THE-TUPLE! (or THE-PATH!) then it should consider it dialected. (Maybe it's better to have it be DO-DIALECT to make it clearer?)
But the mechanics are in place to experiment with!