From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: =?utf-8?Q?=C3=93scar_Fuentes?= Newsgroups: gmane.emacs.devel Subject: Re: IDE Date: Tue, 27 Oct 2015 00:06:56 +0100 Message-ID: <87y4epmdpr.fsf@wanadoo.es> References: <83bnc7tavr.fsf@gnu.org> <5618C92A.3040207@yandex.ru> <83a8rrt9ag.fsf@gnu.org> <5618D376.1080700@yandex.ru> <831td3t62e.fsf@gnu.org> <561A6199.1020901@cumego.com> <561B9D87.70504@yandex.ru> <87vb9wcpw9.fsf@esperi.org.uk> <83eggkwdgh.fsf@gnu.org> <83611ww5uc.fsf@gnu.org> <83si4xbi2m.fsf@gnu.org> <878u6pcs74.fsf@igel.home> <83io5tbcye.fsf@gnu.org> <87bnblnzn7.fsf@wanadoo.es> <562E8E51.40006@yandex.ru> <877fm9nuxv.fsf@wanadoo.es> <562EACD9.1030807@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Trace: ger.gmane.org 1445900858 10106 80.91.229.3 (26 Oct 2015 23:07:38 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 26 Oct 2015 23:07:38 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Oct 27 00:07:29 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 1ZqqrP-00039J-74 for ged-emacs-devel@m.gmane.org; Tue, 27 Oct 2015 00:07:27 +0100 Original-Received: from localhost ([::1]:55794 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZqqrO-0001Fc-No for ged-emacs-devel@m.gmane.org; Mon, 26 Oct 2015 19:07:26 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:49737) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZqqrL-0001FW-16 for emacs-devel@gnu.org; Mon, 26 Oct 2015 19:07:24 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZqqrH-0001nE-Ln for emacs-devel@gnu.org; Mon, 26 Oct 2015 19:07:22 -0400 Original-Received: from plane.gmane.org ([80.91.229.3]:32854) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZqqrH-0001mg-Ee for emacs-devel@gnu.org; Mon, 26 Oct 2015 19:07:19 -0400 Original-Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1ZqqrE-0002xw-NN for emacs-devel@gnu.org; Tue, 27 Oct 2015 00:07:16 +0100 Original-Received: from 157.red-81-44-103.dynamicip.rima-tde.net ([81.44.103.157]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 27 Oct 2015 00:07:16 +0100 Original-Received: from ofv by 157.red-81-44-103.dynamicip.rima-tde.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 27 Oct 2015 00:07:16 +0100 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 55 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 157.red-81-44-103.dynamicip.rima-tde.net User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) Cancel-Lock: sha1:mZAT9mOHEwpi9obqvN/1/lart4g= X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 80.91.229.3 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:192695 Archived-At: Dmitry Gutov writes: > On 10/27/2015 12:09 AM, Óscar Fuentes wrote: > >>> And the subject of this thread is "IDE". Modern IDEs do know stuff. >> >> I was addressing the specific sub-topic about TAGS. > > That subtopic started exactly with complaint that TAGS only allow for > "jump to definition". Then someone argued that no, you can store > anything what you like in them, we discussed that a bit, and here > you've come to repeat the beginning: "For references, TAGS is of > little help". Sorry, I jumped into the middle of the thread. >> For knowing stuff you need tools which are as sophisticated as the >> language they are working with, and there is no medium term solution for >> that requirement as far as Emacs core is concerned on the C++ realm, >> probably Java as well. > > There can be some middle ground. If by "middle ground" you refer to something that gives the right result 90% of the time when there are external packages that gives the right result 100% of the time, that middle ground is a waste of time by the Emacs core hackers. > From what I've seen of GNU Global > (admittedly not too much), it's better for both "find definitions" and > "find references" than TAGS. > > Even in C++ and Java it's not too hard to implement a reasonably > accurate parser that will index definitions. Recognizing references > accurately is more of a problem (for now we indeed use Grep or similar > tools). Definitions can be tricky in C++, if you wish to distinguish the case where multiple namespaces or classes defines the same keyword and you expect from Emacs to jump to the correct definition, deduces from the context. In that case you need a parser that is good enough to act as a compiler front-end. >> There are external Emacs packages that are on >> track for solving this problem, and an increasing number of features are >> being implemented around those external packages. > > What Emacs can do is provide a common interface those external > packages to hook into. Like progmodes/xref.el, for example. Trying to find a common ground on current use cases is difficult enough. Anticipating future requirements is almost impossible. Good luck with that. [snip]