rindPHI / isla

The ISLa (Input Specification Language) language & solver.
https://isla.readthedocs.org
GNU General Public License v3.0
62 stars 8 forks source link

[FEATURE] Consolidate Concrete Syntax #81

Open rindPHI opened 1 year ago

rindPHI commented 1 year ago

Many problems in ISLa's frontend parser (e.g., #3, #72) originate in the mixture of S-expressions and "mathematical" syntax in ISLa's concrete syntax. Supporting both correctly is difficult; the necessity of such a "hybrid" syntax is questionable.

Thus, we should remove S-expressions from ISLa's main syntax. To make it easier to integrate ISLa in automatic toolchains, we should, however, support another concrete syntax exclusively using S-expressions.

Additionally, we should consider/discuss stacking these syntaxes. The S-expression syntax would become the bottom layer, directly parsed into ISLa's language data types; the "mathematical" syntax would translate to S-expressions.