From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Yuri Khan Newsgroups: gmane.emacs.devel Subject: Re: Generalizing find-definition Date: Fri, 7 Nov 2014 09:57:22 +0700 Message-ID: References: <20141102151524.0d9c665c@forcix> <20141102172944.0f7944e3@forcix> <20141103084433.12117c03@forcix> <20141103192853.2702fe7a@forcix> <20141103215526.28edeb27@forcix> <86bnokgx8g.fsf@yandex.ru> <85mw845d91.fsf@stephe-leake.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1415329067 18625 80.91.229.3 (7 Nov 2014 02:57:47 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 7 Nov 2014 02:57:47 +0000 (UTC) Cc: Emacs developers To: Stephen Leake Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Nov 07 03:57:40 2014 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 1XmZk3-0003rA-R4 for ged-emacs-devel@m.gmane.org; Fri, 07 Nov 2014 03:57:39 +0100 Original-Received: from localhost ([::1]:57818 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XmZk3-0002tU-Bj for ged-emacs-devel@m.gmane.org; Thu, 06 Nov 2014 21:57:39 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:34390) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XmZjo-0002t1-Tq for emacs-devel@gnu.org; Thu, 06 Nov 2014 21:57:26 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XmZjn-0006iL-Vy for emacs-devel@gnu.org; Thu, 06 Nov 2014 21:57:24 -0500 Original-Received: from mail-ig0-x231.google.com ([2607:f8b0:4001:c05::231]:45989) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XmZjn-0006iE-Qe for emacs-devel@gnu.org; Thu, 06 Nov 2014 21:57:23 -0500 Original-Received: by mail-ig0-f177.google.com with SMTP id hl2so4635184igb.10 for ; Thu, 06 Nov 2014 18:57:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=S9pSPNziphcB1KS42YM3TYiyZiI6l52N9gwIfBBpE+w=; b=x2kfpWrxOkJsdjME7EvqqqnQ/7U1NWB1eJclWG6fUoXK/gclv2Ya4Wvl9BFQOLeyXU u4yBVVtJe3ZmEsVxJp1femf/44DSAvoIqFzoltulvYUyZ0R76+D7o63koBQf/yFQKzh9 yl9JQUqqOFpAwgFqdZjLg3rCh/9jPQLsbiOky+vZLSbKJ+GG1JhgZPGDk6q8HOPAUMdn 5hMJeoHozLL/mQUDrypNUBfXSdEHcG4sCale7KOCDad9i60zzSTjJoeIWHG7EpYzCXMH OJ4z9yJqz6B4d+s3ucQ7CTiBvs4jjhSjlrEodGY5oVgh3pMyEOcYrNPwyCk/ykTJBvK4 HcrQ== X-Received: by 10.107.165.19 with SMTP id o19mr9500073ioe.1.1415329042663; Thu, 06 Nov 2014 18:57:22 -0800 (PST) Original-Received: by 10.107.48.3 with HTTP; Thu, 6 Nov 2014 18:57:22 -0800 (PST) In-Reply-To: <85mw845d91.fsf@stephe-leake.org> X-Google-Sender-Auth: zumAOMFM9Ha7vMSgyctKvxjLUQA X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2607:f8b0:4001:c05::231 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:176500 Archived-At: On Fri, Nov 7, 2014 at 1:40 AM, Stephen Leake wrote: >> I think it should return "baz" here, if we want to go this way at all. >> And then that value could be passed to a "search-definition-function", >> which will perform a full non-precise scan. > > When would that be useful? When function names are unique enough between interfaces and the parser is not good enough to precisely identify which subset of classes the current invocation may involve. The search-definition engine may then say =E2=80=9Coh screw it, I got confused, here are all definitions of baz in all of your bazillion classes, figure it out yourself, you=E2=80=99re human after all=E2=80=9D. >> It apparent that we won't be able to do precise searches for identifiers >> in most cases, > > It requires support from the compiler/backend, but that should always be > available (presumably you have the compiler if you are editing the > code). So why do you think we can't do precise searches in most cases? Some compilers don=E2=80=99t expose the necessary information in a machine-readable form, or are not sufficiently fast to produce a result within the interval the user is prepared to wait.