The "core" platform annotations are now being ported to the registry. The objective is that the registry will eventually contain all the platform annotations that are used by the core-compilers and other codes maintained by the ThingML team. This was, we can imagine to have:
better documentation of the annotation
better tool support (completion, checks :-), etc)
This way, we regain control over the annotations...
Still, there are a number of tools out there using ThingML one way or another, and that do not necessarily aim at being integrated with the core ThingML. Those external tools might need to rely on self-defined annotations and may not want to extend the ThingML framework, but rather use a release as is. In general, it is probably too restrictive to force registring all annotations.
I suggest a new type of annotations, maybe with a # or $ syntax that are not part of the official platform annotations set, but still may serve a purpose.
Won't fix, but existing annotations have now be made more flexible, and they can accept any literal. Non-registered annotation will at most generate a warning, and never a blocking error.
The "core" platform annotations are now being ported to the registry. The objective is that the registry will eventually contain all the platform annotations that are used by the core-compilers and other codes maintained by the ThingML team. This was, we can imagine to have:
This way, we regain control over the annotations...
Still, there are a number of tools out there using ThingML one way or another, and that do not necessarily aim at being integrated with the core ThingML. Those external tools might need to rely on self-defined annotations and may not want to extend the ThingML framework, but rather use a release as is. In general, it is probably too restrictive to force registring all annotations.
I suggest a new type of annotations, maybe with a
#
or$
syntax that are not part of the official platform annotations set, but still may serve a purpose.What do you think?