Transitional parsing rule for semistatic templates: Difference between revisions

(Created page with "The problem: We want to require most simple static assignments (all those recognized by the parser except for class and function definitions) to be terminated by a semicolon, however, the <code>create-credits</code> command has been (in recent releases leading up to trplkt v0.13.0) emitting code that would not validate under those circumstances: it doesn't end with a semicolon. So we have instituted a transitional phase for v0.13.x and the next few releases whe...")
 
(mention rhs and semistatic forms)
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
The problem:
The problem:


We want to require most [[simple static assignments]] (all those recognized by the parser except for class and function definitions) to be terminated by a semicolon, however, the <code>create-credits</code> command has been (in recent releases leading up to [[trplkt]] v0.13.0) emitting code that would not validate under those circumstances: it doesn't end with a semicolon. So we have instituted a transitional phase for v0.13.x and the next few releases where the compiler will continue to accept source inputs in the form generated by create-credits, but with the expectation that with newer versions of trplkt people will re-generate their `credits.src` file (or edit it by hand to validate) at some point, and then in future versions, bring this transitional phase to an end.
We want to require most [[simple static assignment]]s (all those recognized by the parser except for class and function definitions) to be terminated by a semicolon, however, the <code>create-credits</code> command has been (in releases leading up to [[trplkt]] v0.13.0) emitting code that would not validate under those circumstances: the [[rhs]] (consisting of a [[semistatic form]]) isn't terminated with a semicolon. So we have instituted a transitional phase for v0.13.x and the next few releases where the compiler will continue to accept source inputs in the form generated by create-credits, but with the expectation that with newer versions of trplkt people will re-generate their `credits.src` file (or edit it by hand to validate) at some point, and then in future versions, bring this transitional phase to an end.

Note that there is a related issue: we want to require semistatic forms to also be bracketed by open and close parentheses wherever they appear in the source code, and <code>AcknowledgeMint</code> hasn't been obeying this rule, either.

Latest revision as of 22:03, 27 September 2023

The problem:

We want to require most simple static assignments (all those recognized by the parser except for class and function definitions) to be terminated by a semicolon, however, the create-credits command has been (in releases leading up to trplkt v0.13.0) emitting code that would not validate under those circumstances: the rhs (consisting of a semistatic form) isn't terminated with a semicolon. So we have instituted a transitional phase for v0.13.x and the next few releases where the compiler will continue to accept source inputs in the form generated by create-credits, but with the expectation that with newer versions of trplkt people will re-generate their `credits.src` file (or edit it by hand to validate) at some point, and then in future versions, bring this transitional phase to an end.

Note that there is a related issue: we want to require semistatic forms to also be bracketed by open and close parentheses wherever they appear in the source code, and AcknowledgeMint hasn't been obeying this rule, either.