Specification Refinement

95% of eno is built on a very simple foundation which has been fully specified, implemented and stable since mid 2019.

There is a small number of intricate details which comprise the 5% of eno which are still in the process of being carefullly refined in the interest of ending up with a completely solid, bullet-proof specification.

These details are:

  • Whitespace processing on associated comments is specified by this RFC, but implementations might still deviate from the described behavior because it has not yet been set in stone
  • Since revision 3 the associated comments RFC also proposes comments that can be associated to the document, these are currently only implemented by the C-based libeno parser
  • The RFC for the conceptual unification of Field, Fieldset and List elements. proposes a different conceptual hierarchy and terminology around the Field element, which is currently only used by the C-based libeno parser. This change does not affect existing or future documents at all but will require a substantial one-time effort to update all documentation resources, tools and parsers, hence will take a while to be adopted globally.
  • At present only LF and CR+LF linebreaks are considered as linebreaks by eno parsers - it is still an open question whether other forms of vertical whitespace as they exist in the unicode specification should also be interpreted as significant characters that can terminate values and therefore separate instructions from each other. If you have relevant (i.e. professional, cultural or otherwise) experience with the factors to consider here, please get in touch, your insight would be greatly appreciated!

Next page: ABNF