Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define policy for handling $0 and absent shared symbols in $ion_encoding and modules. #324

Open
1 task
toddjonker opened this issue Jun 10, 2024 · 0 comments
Labels
specification 1.1 Ion 1.1 specification work

Comments

@toddjonker
Copy link
Contributor

toddjonker commented Jun 10, 2024

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 and make_symbol accept values without text?
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
specification 1.1 Ion 1.1 specification work
Projects
Development

No branches or pull requests

1 participant