From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: CEDET merge question Date: Sun, 13 Sep 2009 12:40:45 -0400 Message-ID: References: <87eiql2w5s.fsf@cyd.mit.edu> <87k50bixsl.fsf@engster.org> <1252759780.4770.76.camel@projectile.siege-engine.com> Reply-To: rms@gnu.org NNTP-Posting-Host: lo.gmane.org Content-Type: text/plain; charset=ISO-8859-15 X-Trace: ger.gmane.org 1252860365 9663 80.91.229.12 (13 Sep 2009 16:46:05 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 13 Sep 2009 16:46:05 +0000 (UTC) Cc: cyd@stupidchicken.com, raeburn@raeburn.org, deng@randomsample.de, emacs-devel@gnu.org To: eric@siege-engine.com Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Sep 13 18:45:57 2009 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.50) id 1MmsD7-0007u9-2N for ged-emacs-devel@m.gmane.org; Sun, 13 Sep 2009 18:45:57 +0200 Original-Received: from localhost ([127.0.0.1]:58082 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MmsD6-0003mQ-5L for ged-emacs-devel@m.gmane.org; Sun, 13 Sep 2009 12:45:56 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Mms8C-0008Kz-AH for emacs-devel@gnu.org; Sun, 13 Sep 2009 12:40:52 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Mms87-0008ED-6i for emacs-devel@gnu.org; Sun, 13 Sep 2009 12:40:51 -0400 Original-Received: from [199.232.76.173] (port=37286 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Mms86-0008E1-IQ for emacs-devel@gnu.org; Sun, 13 Sep 2009 12:40:46 -0400 Original-Received: from fencepost.gnu.org ([140.186.70.10]:55586) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Mms86-00075c-4J for emacs-devel@gnu.org; Sun, 13 Sep 2009 12:40:46 -0400 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.67) (envelope-from ) id 1Mms85-0007kJ-Mb; Sun, 13 Sep 2009 12:40:45 -0400 In-reply-to: <1252759780.4770.76.camel@projectile.siege-engine.com> (eric@siege-engine.com) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) 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:115278 Archived-At: I don't know how bison works, but I would assume that bison parses basic C code (thus replacing $1 with some other piece of code.) In the same way, it would need to be taught about Emacs Lisp, Scheme, or any other language someone might want. Bison parses grammar definition files, which can contain segments of code. Normally the syntax for a segment of code is {...}. Bison generates tables for a parser, and puts the segments of code into a function to do the parsing. Normally that function is written in C. However, using a different language and different syntax is just a superficial change. The end result, however, would involve rather extreme changes to bison, and possibly flex if flex is also used. Oh no. The complex parts of Bison would not be changed at all. Only some of the parser and the output code. These are the parts that are easy to understand, without even minimal knowledge of parsing.