From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eric Ludlam Newsgroups: gmane.emacs.devel Subject: Re: Emacs contributions, C and Lisp Date: Sat, 10 Jan 2015 18:40:00 -0500 Message-ID: <54B1B850.6020100@siege-engine.com> References: <83bnxuzyl4.fsf@gnu.org> <87vbkovhh7.fsf@engster.org> <87387rvobr.fsf@engster.org> <83ppat84hk.fsf@gnu.org> <20150106143933.0090bc83@jabberwock.cb.piermont.com> <83r3v77ij6.fsf@gnu.org> <20150106154539.3d0752c4@jabberwock.cb.piermont.com> <87wq4ype3z.fsf@fencepost.gnu.org> <878uherlf3.fsf@wanadoo.es> <20150108194342.1bd83ed1@jabberwock.cb.piermont.com> <871tn3furs .fsf@red-bean.com> <54B18497.8080806@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1420933686 5864 80.91.229.3 (10 Jan 2015 23:48:06 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 10 Jan 2015 23:48:06 +0000 (UTC) Cc: ofv@wanadoo.es, perry@piermont.com, emacs-devel@gnu.org To: Dmitry Gutov , rms@gnu.org, Karl Fogel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Jan 11 00:47:56 2015 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1YA5l5-0003qK-5A for ged-emacs-devel@m.gmane.org; Sun, 11 Jan 2015 00:47:55 +0100 Original-Received: from localhost ([::1]:56495 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YA5l4-00048C-Gf for ged-emacs-devel@m.gmane.org; Sat, 10 Jan 2015 18:47:54 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:40964) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YA5l0-00047F-Jj for emacs-devel@gnu.org; Sat, 10 Jan 2015 18:47:51 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YA5kw-0004hW-2E for emacs-devel@gnu.org; Sat, 10 Jan 2015 18:47:50 -0500 Original-Received: from mail-qg0-f50.google.com ([209.85.192.50]:64587) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YA5kv-0004hI-UU; Sat, 10 Jan 2015 18:47:45 -0500 Original-Received: by mail-qg0-f50.google.com with SMTP id z60so13699447qgd.9; Sat, 10 Jan 2015 15:47:45 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=s2QywaDgO+RsfUn+b9HFUMboCEqi9GVliGkJxZ4y7pw=; b=O7PPRzhIw243vkXoujxMGUpDgZvomo7mq+lApwwjxzHhlHVhRWoq4hL82HA/ww6nfl LW4KvV9rb/aNX0n7MBkM4G8oaZbc347LvEI4RTBklmNgf9oLSQTvqTVZLDYUgAi062uH u/yOXgOkoOPn1EHPji91Y3sY3PfSjnbaRdZKTUvIkkQmZ1vCTsk8CWIyjoWQJ99UzeIa g5jRU9HmOcKnDwCJsEbP+qIsu+ig4rWx3aVTFwwXzkLIHGEa0S4zcOQBtNG8RyQ5hbkt 9DJQB+k+tZLFFDYjFq/poX0wjrWY2peHF92Sm+82yVDx2YlxuI68LzpS72gRP1V4IF5k GwNA== X-Received: by 10.229.48.132 with SMTP id r4mr38484249qcf.5.1420933202753; Sat, 10 Jan 2015 15:40:02 -0800 (PST) Original-Received: from [192.168.1.202] (pool-108-20-224-24.bstnma.fios.verizon.net. [108.20.224.24]) by mx.google.com with ESMTPSA id x38sm10868874qgx.23.2015.01.10.15.40.01 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 10 Jan 2015 15:40:01 -0800 (PST) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 In-Reply-To: <54B18497.8080806@yandex.ru> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.85.192.50 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:181135 Archived-At: On 01/10/2015 02:59 PM, Dmitry Gutov wrote: > On 01/10/2015 10:29 PM, Richard Stallman wrote: > >> Getting back to completion, some tried to dismiss the idea that >> completion can be done with less than the full AST. The discussion >> convinces me that it can be done with somewhat less > > Like Eric said, it *can* be done with a lot less, the question is > whether we really do want to do it this way. > > If the plugin implements the "meat" of the completion logic (probably in > C), Emacs could serve as a "dumb client", only forwarding completion > queries to the plugin, and interpreting the responses. > > The downsides: > > 1. Any new feature, significant change, or a bugfix would probably have > to touch the plugin code, which exludes contributions from a significant > portion of the user base who would rather contribute Emacs Lisp code. I agree with this, but > 2. CEDET integration would basically be out of the question, while it's > the blessed Emacs code assistance suite, which we would want to see > developed. I think there are fine ways to integrate tools at many different levels into CEDET. Some examples include GNU Global (an external tagger), or javap for extracting symbol info from .jar files a source file may reference. It can use exuberent ctags as a C++ parser in place of the built in one too (though substandard). GCC could substitute in at any of those levels emitting tags in the form CEDET understands. It could replace the local context parser (which is regexp based). CEDET has a way to swap in alternate implementations at many different levels on a per language basis for this purpose. The difference is that each custom use of gcc would be some new plugin implementation instead of new Emacs Lisp code interpreting some single output. Eric