From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Chong Yidong Newsgroups: gmane.emacs.devel Subject: Re: SMIE documentation Date: Mon, 29 Nov 2010 12:54:58 -0500 Message-ID: <87ipzgow0d.fsf@stupidchicken.com> References: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1291053327 20173 80.91.229.12 (29 Nov 2010 17:55:27 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 29 Nov 2010 17:55:27 +0000 (UTC) Cc: emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Nov 29 18:55:23 2010 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1PN7wS-0005RM-PV for ged-emacs-devel@m.gmane.org; Mon, 29 Nov 2010 18:55:08 +0100 Original-Received: from localhost ([127.0.0.1]:54990 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PN7wS-000207-D8 for ged-emacs-devel@m.gmane.org; Mon, 29 Nov 2010 12:55:08 -0500 Original-Received: from [140.186.70.92] (port=53632 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PN7wL-0001ty-2K for emacs-devel@gnu.org; Mon, 29 Nov 2010 12:55:02 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PN7wJ-00036z-T7 for emacs-devel@gnu.org; Mon, 29 Nov 2010 12:55:00 -0500 Original-Received: from pantheon-po26.its.yale.edu ([130.132.50.121]:35698) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PN7wJ-00036Z-Mw for emacs-devel@gnu.org; Mon, 29 Nov 2010 12:54:59 -0500 Original-Received: from furball (dhcp128036014248.central.yale.edu [128.36.14.248]) (authenticated bits=0) by pantheon-po26.its.yale.edu (8.12.11.20060308/8.12.11) with ESMTP id oATHsw7l005986 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Mon, 29 Nov 2010 12:54:58 -0500 Original-Received: by furball (Postfix, from userid 1000) id DF2C6160903; Mon, 29 Nov 2010 12:54:58 -0500 (EST) In-Reply-To: (Stefan Monnier's message of "Sun, 28 Nov 2010 15:36:26 -0500") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) X-YaleITSMailFilter: Version 1.2c (attachment(s) not renamed) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4-2.6 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:133231 Archived-At: A few quick comments: > +programming languages's syntax is designed to be parsed forward, but for This should be "languages'", or "the syntax of programming languages". > +extra effort; but it also means that most programming languages cannot > +be parsed correctly, at least not without resorting to some > +special tricks. You should xref to "SMIE Tricks", if that is what you are referring to. In general, it is good to add xrefs to the introduction, even if there are links to the same nodes in the menu below that introduction, because that makes it clearer to the reader exactly where to find the more detailed treatment of each statement in the introduction. Also, it would be nice to have a better description of what kinds of languages it's practical to use SMIE for. > +@node SMIE Grammar > +@subsubsection Defining the Grammar of a Language > + > +The usual way to define the SMIE grammar of a language is by > +defining a new global variable holding the precedence table by > +giving a set of BNF rules. > +For example: It might be good to give a sample of the kind of language that this example is supposed to indent.