Hi Daniel,

Thanks for your answer. When your work with parser will be available,
please ping me and I will try to consume it and give you feedback.

Regard's Angelo

Le sam. 25 août 2018 à 09:44, Daniel Dekany <[email protected]> a écrit :

> Any progress? (I understand if not, with a newborn and all, I'm just
> curious.)
>
> Note my answer to Angelo. As I said there, maybe we should settle with
> only expression parsing done by the parser library, and the others are
> done "manually". While that removes most of the tricky requirements
> from the parser library, it brings in a new one, that doing many
> independent expression parsings should have minimal overhead.
>
>
> Sunday, August 5, 2018, 6:58:11 PM, Stephan Müller wrote:
>
> > Am 04.07.2018 um 19:28 schrieb Daniel Dekany:
> >> I wonder what parser libraries could help us, in FM3, to separate the
> >> expression language parsing from the top-level language (like
> >> `<#foo>`, `${...}`, etc.) parsing. Or if a hand written parsers is an
> >> acceptable compromise. It would be good if we can change the top-level
> >> syntax and still reuse the expression syntax. (Or, replace the
> >> expression syntax, and reuse the top-level one.) Like, somebody wants
> >> a syntax like `#foo(exp)` instead of `<#foo exp>`, but still reuse the
> >> expression syntax. (For me it was always part of the FM3 agenda,
> >> though might will be proven to be too much...)
> >> [..]
> >
> > During the last days I had a high-level look at different parser
> > generators, and as one might imagine, there are a lot of parser
> > generators, with different licenses, different maturities, different
> > states of maintenance and so on.
> >
> > Due to https://www.apache.org/legal/resolved.html I ignored all parser
> > generators which may not be included in Apache projects because of their
> > license, especially GNU GPL etc.
> >
> > IMHO this leaves us with:
> >
> > * LL(k) parsers: ANTLR, JavaCC and Grammatica
> > * LALR parsers: CookCC
> > * PEG parsers: Mouse
> > * parser combinators: jparsec, parboiled and PetitParser
> >
> > This list is not exhaustive, so I probably forget some interesting
> > projects. If so, please share, I'd like to have a look into these, too.
> >
> > My idea for the next step: define a really small subset of FTL and try
> > to implement PoCs for this subset with the candidates which I mentioned
> > above.
> >
> > The subset might be something like
> >
> > * interpolations: ${..}
> > * directives: if, assign
> > * expressions: numbers, variables, +
> > * variants of the parsers with different delimiters
> > * split into two parsers (interpolations/directives vs. expression
> language)
> >
> > What do you think?
> >
> >
> > Stephan.
> >
> > P.S.: my more detailed list of parser generators can be found here:
> > https://gist.github.com/chaquotay/8041096bad36f6f3f0d4166d6f8623b5
> >
>
> --
> Thanks,
>  Daniel Dekany
>
>

Reply via email to