Sure thing. Thank you for the reminder, Alex!

Toshiya


On Wed, Feb 28, 2024 at 10:04 PM Alex Porcelli <[email protected]> wrote:

> Thank you very much for the detailed information, Mario and Toshiya.
>
> Let's use this as an opportunity to remind ourselves about the
> importance of continued communication following the guidelines we
> collectively defined [1].
>
> [1] -
> https://cwiki.apache.org/confluence/display/KIE/Communication+within+Apache
>
> On Tue, Feb 27, 2024 at 6:53 AM Mario Fusco <[email protected]> wrote:
> >
> > Hi Alex,
> >
> > Just to clarify the purposes of this effort and from where this
> originate, consider that the development of this new ANTLR v4 based parser
> for the DRL started even before the migration to Apache and its main goal
> was to support the implementation of an LSP server that could allow to
> develop an IDE plugin for the DRL language providing code completion and
> syntax coloring.
> >
> > More in general however the current Drools parser is a very legacy part
> of our codebase. It is implemented with a weird mix of an ANTLR v3
> generated parser with tons of handwritten code covering the most complex
> edge cases of the language. After so many years it has become very hard to
> maintain and evolve to the point that now I consider it one of the most
> relevant contributor to Drools' technical debt.
> >
> > As for the risks related with the replacement of the old parser with
> this new one, I honestly don't have any concern, also considering that:
> >
> > 1. This is a long ongoing work that we are developing on a feature
> branch. It will still require a few months of development (to be
> optimistic), so for sure it won't be part of the 10.0.0 release.
> >
> > 2. As Toshiya already mentioned, this parser is confined in its own
> module and its interactions with the rest of the project are well defined
> and under control.
> >
> > 3. The Drools test base is huge, with tens of thousands of test cases
> covering each and every details and edge cases of the DRL. I'm 100% sure
> that if the new parser won't be implementing correctly even only one of the
> DRL specification, there will be at least one test failure evidencing the
> problem and of course we will do the replacement only when the entire
> Drools test suite will be green also using the new parser.
> >
> > I hope this clarifies the situation.
> > Thanks,
> > Mario
> >
> > On 2024/02/26 13:57:11 Alex Porcelli wrote:
> > > Toshiya,
> > >
> > > Thank you for the heads up, however I'm a bit concerned how far this
> > > implementation has gone without a previous proposal to be discussed as
> > > stated in our community communication guidelines [1].
> > >
> > > Although I really appreciate the effort to keep up to date with
> > > technology advances (ANTLR v4 has been around for soooo many years
> > > now), but I'm also concern that this will introduce complexity and
> > > risk while we still improving the codebase stability (ie. issues [2]
> > > [3] [4] [5]).
> > >
> > > So I would like to better understand what's the timeline expected to
> > > see this incorporated into the codebase, and besides the library
> > > upgrade, what are the goals of this change.
> > >
> > > Note: I'm not sure what you mean by Drools team, as far as I know we
> > > are all part of a single community under KIE. Although we might have
> > > more areas of specialization, I don't think we are split into
> > > different teams.
> > >
> > > [1] -
> https://cwiki.apache.org/confluence/display/KIE/Communication+within+Apache
> > > [2] - https://github.com/apache/incubator-kie-issues/issues/941
> > > [3] - https://github.com/apache/incubator-kie-issues/issues/903
> > > [4] - https://github.com/apache/incubator-kie-issues/issues/968
> > > [5] - https://github.com/apache/incubator-kie-issues/issues/969
> > >
> > >
> > > On Mon, Feb 26, 2024 at 3:37 AM Toshiya Kobayashi
> > > <[email protected]> wrote:
> > > >
> > > > Hello,
> > > >
> > > > In the drools team, we are developing a new Antlr4 based DRL parser.
> The
> > > > current parser is Antlr3 based and contains lots of hard-coded logic
> in a
> > > > generated java code (DRL6Parser.java), so it's hard to maintain.
> > > >
> > > > Originally the new parser was developed under
> > > > https://github.com/kiegroup/drools-lsp/ at the early stage. Now we
> are
> > > > testing the new DRL parser with the existing drool unit tests using a
> > > > feature branch `dev-new-parser`. We hit lots of test failures (as
> expected)
> > > > and are fixing them one-by-one.
> > > >
> > > > This is the parent issue where Jiri Locker made a great effort to
> split
> > > > child issues (test failures):
> > > >
> > > > https://github.com/apache/incubator-kie-drools/issues/5678
> > > >
> > > > Those child issues are fine grained, so it would be nice to
> contribute!
> > > >
> > > > If you are willing to contribute, please put you as an assignee (if
> you
> > > > have a committer permission) or post a comment to avoid duplicate
> work on
> > > > the child issue.
> > > >
> > > > Also you can track the progress by watching the parent issue and
> share your
> > > > thoughts any time you want.
> > > >
> > > > Cheers,
> > > > Toshiya
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [email protected]
> > > For additional commands, e-mail: [email protected]
> > >
> > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [email protected]
> > For additional commands, e-mail: [email protected]
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

Reply via email to