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.
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.