Return-Path: X-Original-To: apmail-groovy-dev-archive@minotaur.apache.org Delivered-To: apmail-groovy-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 585291814D for ; Wed, 24 Feb 2016 11:41:19 +0000 (UTC) Received: (qmail 98939 invoked by uid 500); 24 Feb 2016 11:41:13 -0000 Delivered-To: apmail-groovy-dev-archive@groovy.apache.org Received: (qmail 98906 invoked by uid 500); 24 Feb 2016 11:41:13 -0000 Mailing-List: contact dev-help@groovy.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@groovy.apache.org Delivered-To: mailing list dev@groovy.apache.org Received: (qmail 98896 invoked by uid 99); 24 Feb 2016 11:41:12 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 24 Feb 2016 11:41:12 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 5ED6AC0179 for ; Wed, 24 Feb 2016 11:41:12 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.198 X-Spam-Level: * X-Spam-Status: No, score=1.198 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=2, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd4-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx2-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id f6wHMMDCKJFL for ; Wed, 24 Feb 2016 11:41:09 +0000 (UTC) Received: from mail-lb0-f172.google.com (mail-lb0-f172.google.com [209.85.217.172]) by mx2-lw-eu.apache.org (ASF Mail Server at mx2-lw-eu.apache.org) with ESMTPS id 40B895FAD4 for ; Wed, 24 Feb 2016 11:41:09 +0000 (UTC) Received: by mail-lb0-f172.google.com with SMTP id x1so8632211lbj.3 for ; Wed, 24 Feb 2016 03:41:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=lmafV6pjht55xRe4iUPhyQXz8aHMB5yjxUZQRRBOmZ8=; b=MTqCdFWSVHW0MlJY5UjFnxEtZxnTpqi0XI06A4/9ZrKP78r6NYJ//tIUGg63dKfx5c cRYu4ISzS7htoj62BqvUU6dVuqwA9EV64s94Tf4NaXg09CZMmEE18869VyKwsv+4DJzl hu51rzpLkfLIcBqhGSBVwSN35vGIlQZD3vYjNOnzIzyrubOpqkrBqGVJ1LvlEKE5t16b pGT/nDpnCrIPrXD1OxNhzI6pA7TlvNcGs84CPBrQTnsmhBy5BEDyCYm8RV71XsCyjKuI VwRzx+NXaON08BYusm6JJj4zT/HYfm08Ga6nW9ZZgcQls3crksicfBDHXE5PVFEA1/CP h2AA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type; bh=lmafV6pjht55xRe4iUPhyQXz8aHMB5yjxUZQRRBOmZ8=; b=gb4MHMiJNlcdUSZtdBvKQVux1lcW+k+rPOth/JQDTCpKeMjR/rA6QJE89eV73MEUEt 8fQg7vKTtSrHTiMx4SW2CP8UDFlc6Tc7iDJOqXHdAyExiY5ZSe1tKdrRbW/GTlJogjc8 MvMGllIuVAlcffC2HJno/S0RNCXotyeqiTEUv1wgQs4qMi8yfVvnJnrVWF8L8RMyRobR TaEW95KM0wFGXqSvNoBC2yDPVztDWOzwRlZa49XmxpS29hkIZHQr7yYrIrdHhBypxDnV ts/Qt52NiBoyuZGYcIgTLVncaqw82n96C0T/tr4NV1HAMZ3usZ965ufSnGZ59h1CtHaq +YbA== X-Gm-Message-State: AG10YORLytvRXspJWvsNMvV04YjsDWcOmdNNR4EI70j/VKmAMvknvye11qVVe8zSjxtYJlZecTH0TdUfXAIRRQ== MIME-Version: 1.0 X-Received: by 10.112.190.4 with SMTP id gm4mr14164444lbc.74.1456314062285; Wed, 24 Feb 2016 03:41:02 -0800 (PST) Received: by 10.112.142.38 with HTTP; Wed, 24 Feb 2016 03:41:02 -0800 (PST) In-Reply-To: References: <29FC6596-94BC-4BE2-A9A9-2FA48680CC08@selskabet.org> Date: Wed, 24 Feb 2016 12:41:02 +0100 Message-ID: Subject: Re: Antlr4-based Groovy parser status update From: =?UTF-8?Q?C=C3=A9dric_Champeau?= To: dev@groovy.apache.org, Paul King Content-Type: multipart/alternative; boundary=001a11c244b05d316a052c828a20 --001a11c244b05d316a052c828a20 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable It is a show stopper for groovy-core. We must *not* introduce a dependency on Spock, because it would conflict with the version of Groovy that we are using, and apply global xforms on Groovy core. While it might be ok, we want to minimize the risks. 2016-02-24 12:35 GMT+01:00 Paul King : > Spock for testing is by no means a show stopper! > > On Wed, Feb 24, 2016 at 6:46 PM, Jesper Steen M=C3=B8ller > wrote: > > > > On 24. feb. 2016, at 01.21, Guillaume Laforge > wrote: > > > > Sounds cool, Jesper, great to hear about your progress on the Antlr4 > > grammar! > > Is there a way we can help you? How can we test drive this? Is the buil= d > > working? > > > > > > The build works in that the antlr4 branch can be build and tested with > e.g. > > =E2=80=9Cgradle -PuseAntlr4=3Dtrue test=E2=80=9D. > > > > However, I can=E2=80=99t seem to actually build a real distribution and= use the > new > > parser in that (there=E2=80=99s a dynamic switch), without getting some= very > strange > > errors. > > I=E2=80=99ve put off chasing that problem until I know I have the missi= ng pieces > of > > the grammar and the AST building done right. > > > > The current tests use Spock. Is that out of the question for the main > Groovy > > build? I loooove Spock, but I realise we have to keep the number of > > dependencies down. > > > > -Jesper > > > > > > On Wed, Feb 24, 2016 at 1:14 AM, Jesper Steen M=C3=B8ller < > jesper@selskabet.org> > > wrote: > >> > >> Hi Groovy-dev > >> > >> I=E2=80=99ve found some time to work on the Antlr4 parser and fixed so= me minor > >> tasks there: > >> > >> * Fix grammar for several statement sequences, where NL or semicolon w= as > >> not required (added negative test cases) > >> * Remove non-reentrant static state in ASTBuilder > >> * Added syntax error handling to Antlr 4 parser > >> * Make sure GrammarPredicates work with arbitrarily nested package > >> hierarchies > >> > >> I=E2=80=99m pushing my changes here: > >> https://github.com/jespersm/groovy/commits/antlr4 > >> > >> Next up is support for non-ID method invocation and command expression= s, > >> and then unary expressions. > >> Also, since the GSoC is a bit dated, traits are also missing. > >> > >> -Jesper > > > > > > > > > > -- > > Guillaume Laforge > > Apache Groovy committer & PMC Vice-President > > Product Ninja & Advocate at Restlet > > > > Blog: http://glaforge.appspot.com/ > > Social: @glaforge / Google+ > > > > > --001a11c244b05d316a052c828a20 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
It is a show stopper for groovy-core. We must *not* introd= uce a dependency on Spock, because it would conflict with the version of Gr= oovy that we are using, and apply global xforms on Groovy core. While it mi= ght be ok, we want to minimize the risks.
<= br>
2016-02-24 12:35 GMT+01:00 Paul King <paulk= @asert.com.au>:
Spock for t= esting is by no means a show stopper!

On Wed, Feb 24, 2016 at 6:46 PM, Jesper Steen M=C3=B8ller
<jesper@selskabet.org> wrote:
>
> On 24. feb. 2016, at 01.21, Guillaume Laforge <glaforge@gmail.com> wrote:
>
> Sounds cool, Jesper, great to hear about your progress on the Antlr4 > grammar!
> Is there a way we can help you? How can we test drive this? Is the bui= ld
> working?
>
>
> The build works in that the antlr4 branch can be build and tested with= e.g.
> =E2=80=9Cgradle -PuseAntlr4=3Dtrue test=E2=80=9D.
>
> However, I can=E2=80=99t seem to actually build a real distribution an= d use the new
> parser in that (there=E2=80=99s a dynamic switch), without getting som= e very strange
> errors.
> I=E2=80=99ve put off chasing that problem until I know I have the miss= ing pieces of
> the grammar and the AST building done right.
>
> The current tests use Spock. Is that out of the question for the main = Groovy
> build? I loooove Spock, but I realise we have to keep the number of > dependencies down.
>
> -Jesper
>
>
> On Wed, Feb 24, 2016 at 1:14 AM, Jesper Steen M=C3=B8ller <jesper@selskabet.org>
> wrote:
>>
>> Hi Groovy-dev
>>
>> I=E2=80=99ve found some time to work on the Antlr4 parser and fixe= d some minor
>> tasks there:
>>
>> * Fix grammar for several statement sequences, where NL or semicol= on was
>> not required (added negative test cases)
>> * Remove non-reentrant static state in ASTBuilder
>> * Added syntax error handling to Antlr 4 parser
>> * Make sure GrammarPredicates work with arbitrarily nested package=
>> hierarchies
>>
>> I=E2=80=99m pushing my changes here:
>> https://github.com/jespersm/groovy/commit= s/antlr4
>>
>> Next up is support for non-ID method invocation and command expres= sions,
>> and then unary expressions.
>> Also, since the GSoC is a bit dated, traits are also missing.
>>
>> -Jesper
>
>
>
>
> --
> Guillaume Laforge
> Apache Groovy committer & PMC Vice-President
> Product Ninja & Advocate at Restlet
>
> Blog: http://glaforge.appspot.com/
> Social: @glaforge / Google+
>
>

--001a11c244b05d316a052c828a20--