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

Updates chapter on system module #371

Merged
merged 1 commit into from
Dec 4, 2024
Merged

Conversation

popematt
Copy link
Contributor

@popematt popematt commented Dec 4, 2024

Issue #, if available:

Follow up to #369, #370

Description of changes:

  • Adds encoding to system symbol table where $ion_encoding used to be.
  • Reworks section that talks about the relationship between the system tables and local tables. This might need more reworking still... I'm just trying to get it moving in the right direction instead of being completely out-of-date.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@popematt popematt requested a review from zslayton December 4, 2024 19:20
@@ -7,23 +7,20 @@ leverages the system symbol table, the text encoding that users typically intera
The system macros are more visible, especially to authors of macros.

This chapter catalogs the system-provided symbols and macros.
The examples below use unqualified names, which works assuming no other macros with the same name are in scope. The unambiguous form `$ion::macro-name` is always available to use in the [template definition language](../macros/defining_macros.md#template-definition-language-tdl).
The examples below use unqualified names, which works assuming no other macros with the same name are in scope.
The unambiguous form `$ion::macro-name` is always available to use.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unimportant, take it if you like it:

Suggested change
The unambiguous form `$ion::macro-name` is always available to use.
The unambiguous form `$ion::macro_name` is always available to use.

Hyphens are illegal in macro names, which is arguably either a good thing (because it's clear macro-name is a placeholder) or a bad thing (because people might think kebab case is accepted.)

However, the system symbols and macros are not permanent fixtures of the local symbol and macro tables respectively.

However, in Ion 1.1, the system symbol and macro tables have a system address space that is distinct from the
local address space, but can optionally be included in the user address space.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have a lot of names for this--[local | user | application] address space. We should standardize on one and put it in the glossary.

@popematt popematt merged commit 9d96f5e into amazon-ion:gh-pages Dec 4, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants