That Vue isn't "the same as text between script tags". Because "text between script tags" is fully specified, and known to the browser.
Vue's ad-hoc mish-mash of DSLs has to go through an unspecified series of transformations before it can even become a "text between script tags". And that's the issue not just with Vue, but with any other templating layers.
> but you can always solve your mystery of "who knows" by just looking at the source code
Ah yes. The good old "code is the source of truth" fallacy. Can you point to me where exactly in code it specifies this: `Expects: Array | Object | number | string | Iterable (since 2.6)`?