ion-docs
ion-docs copied to clipboard
Define policy for handling `$0` and absent shared symbols in `$ion_encoding` and modules.
As @zslayton pointed out recently, we generally remember to define handling of null.symbol
where symbols are allowed, but the other abnormal values $0
and absent shared symbols are generally (if not universally) overlooked by the specification.
I think the 1.0 spec sidesteps the problem by (a) forcing symbols meaningful to the decoder to be encoded using the system symbol table, and (b) not using symbols in other parts of directives. But 1.1 has much more exposure to such things.
Ideally, we would have a simple, global policy, along the lines of "Any symbols with unknown symbols signal an error when encountered within a directive or module definition." But I'm not immediately sure that's desirable as stated.
Here's some relevant contexts:
- [ ] Should arguments to
make_string
andmake_symbol
accept values without text?