From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 511F8BB81 for ; Thu, 15 Dec 2005 19:56:06 +0100 (CET) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id jBFIu5iP011114 for ; Thu, 15 Dec 2005 19:56:06 +0100 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id TAA07878 for ; Thu, 15 Dec 2005 19:56:05 +0100 (MET) Received: from tomts22-srv.bellnexxia.net (tomts22.bellnexxia.net [209.226.175.184]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id jBFIu3lv011110; Thu, 15 Dec 2005 19:56:04 +0100 Received: from alfajor ([65.92.242.250]) by tomts22-srv.bellnexxia.net (InterMail vM.5.01.06.13 201-253-122-130-113-20050324) with ESMTP id <20051215185603.SCAV16473.tomts22-srv.bellnexxia.net@alfajor>; Thu, 15 Dec 2005 13:56:03 -0500 Received: by alfajor (Postfix, from userid 1000) id 58A4FD7612; Thu, 15 Dec 2005 13:56:02 -0500 (EST) Message-ID: <871x0ep52y.fsf-monnier+inbox@gnu.org> To: Francois.Pottier@inria.fr Cc: caml-list@inria.fr Subject: Re: [Caml-list] Re: [ANNOUNCE] Alpha release of Menhir, an LR(1) parser generator for ocaml References: <20051212175838.GA8502@yquem.inria.fr> <87acf250oi.fsf-monnier+gmane.comp.lang.caml.inria@gnu.org> <20051215084749.GD1966@yquem.inria.fr> <87y82m2ujh.fsf-monnier+inbox@gnu.org> <20051215165027.GA28709@yquem.inria.fr> From: Stefan Monnier Date: Thu, 15 Dec 2005 13:56:01 -0500 In-Reply-To: <20051215165027.GA28709@yquem.inria.fr> (Francois Pottier's message of "Thu, 15 Dec 2005 17:50:27 +0100") User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Originating-IP: [0] X-Miltered: at concorde with ID 43A1BC45.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 43A1BC43.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 parser:01 ocaml:01 umontreal:01 sml:01 syntax:01 ocaml's:01 tokens:01 compares:01 hooks:03 generally:03 yacc:06 uses:06 tuned:07 release:07 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: * X-Spam-Status: No, score=1.0 required=5.0 tests=X_ORIG_IP_NOT_IPV4 autolearn=disabled version=3.0.3 >> For toy projects it's amazing: you get good error messages with 0 effort. > What about non-toy projects? Are there times where the automatic error > recovery mechanism gets in the way? I wouldn't know, really. SML/NJ uses it and I find its syntax error reporting to be generally good. E.g. significantly better than OCaml's ;-) But if it's not good enough, there are hooks to influence its behavior (e.g. telling it what to try and add/remove first, thus telling it basically what are tokens commonly forgotten and spuriously added), but I don't know how it compares in practice to a well tuned yacc error recovery. Stefan