BTW the case that gives me the most pause is with one null, eg (make_symbol null.string) which one might expect to return null.symbol not "". That's fairly useless for E-expression invocation (you could just write the desired null directly), but in templates it enables coercing any string to a symbol.
The spec currently states that
make_string
There's still some discussion, eg at https://github.com/amazon-ion/ion-tests/pull/100#discussion_r1630181823
The spec also ignores
$0
and absent shared symbols. See also https://github.com/amazon-ion/ion-docs/issues/324BTW the case that gives me the most pause is with one null, eg
(make_symbol null.string)
which one might expect to returnnull.symbol
not "". That's fairly useless for E-expression invocation (you could just write the desired null directly), but in templates it enables coercing any string to a symbol.