Return-Path: Delivered-To: apmail-jackrabbit-dev-archive@www.apache.org Received: (qmail 16982 invoked from network); 11 Sep 2007 14:36:53 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 11 Sep 2007 14:36:53 -0000 Received: (qmail 53515 invoked by uid 500); 11 Sep 2007 14:36:46 -0000 Delivered-To: apmail-jackrabbit-dev-archive@jackrabbit.apache.org Received: (qmail 53476 invoked by uid 500); 11 Sep 2007 14:36:45 -0000 Mailing-List: contact dev-help@jackrabbit.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@jackrabbit.apache.org Delivered-To: mailing list dev@jackrabbit.apache.org Received: (qmail 53467 invoked by uid 99); 11 Sep 2007 14:36:45 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 11 Sep 2007 07:36:45 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [194.246.122.11] (HELO gw1.consol.de) (194.246.122.11) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 11 Sep 2007 14:38:18 +0000 Received: from sol1.bb.consol.de (sol1.bb.consol.de [10.250.0.71]) by gw1.consol.de (8.14.1/8.13.8) with ESMTP id l8BEaJQx054311 for ; Tue, 11 Sep 2007 16:36:19 +0200 (CEST) (envelope-from marcel.may@consol.de) Received: from marcel-mays-computer.local (imap.consol.de [10.250.0.113]) by sol1.bb.consol.de (8.13.7+Sun/8.13.7) with ESMTP id l8BEaJ6Y018623 for ; Tue, 11 Sep 2007 16:36:19 +0200 (CEST) Message-ID: <46E6A7E3.6090407@consol.de> Date: Tue, 11 Sep 2007 16:36:19 +0200 From: Marcel May Organization: ConSol* Software GmbH User-Agent: Thunderbird 2.0.0.6 (Macintosh/20070728) MIME-Version: 1.0 To: dev@jackrabbit.apache.org Subject: Re: master plan for jsr 283 query implementation References: <46DFB804.4040809@gmx.net> <5f211bd50709110008j2f58d22fnb778f1237eb190b@mail.gmail.com> <46E69F37.4030304@gmx.net> In-Reply-To: <46E69F37.4030304@gmx.net> X-Enigmail-Version: 0.95.3 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Vamsi: scanned X-Virus-Scanned: ClamAV 0.91.2/4239/Tue Sep 11 15:08:30 2007 on gw1.consol.de X-Virus-Status: Clean X-Virus-Checked: Checked by ClamAV on apache.org Marcel Reutegger wrote: > Thomas Mueller wrote: >>> use javacc for SQL2 parsing >> >> I would use a hand-written recursive descent parser. I know I'm >> probably the only one suggesting this... > > what are the advantages of a hand-written parser over a generated one? > > probably performance, but are there other? > - Extensibility and easier maintenance - ANTLR/JavaCC are more or less 'standards' - Don't reinvent the wheel :-) It's nice to write your own parser and lexer, but why do that if you get a perfectly generated one? You'll be faster, too, in terms of performance and implementation time. The generated lexer/parser are proven to work in many other projects. - You need to define the grammar anyway, and eg JavaCC can generate Javadoc like grammar documentation using JJDoc > regards > marcel Cheers, Marcel