From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Tomas Hlavaty Newsgroups: gmane.emacs.devel Subject: Re: Do shorthands break basic tooling (tags, grep, etc)? (was Re: Shorthands have landed on master) Date: Thu, 30 Sep 2021 16:26:59 +0200 Message-ID: <87bl4ajg0c.fsf@logand.com> References: <16338bdc2497fc51c6fb6d54ab370bfb@webmail.orcon.net.nz> <874ka5gsqa.fsf@gnus.org> <25d8d72022b571db5291@heytings.org> <87h7e2xsl5.fsf@gmail.com> <25d8d72022e1ea7ed022@heytings.org> <87h7e2jjzy.fsf@logand.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="10142"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel To: =?utf-8?B?Sm/Do28gVMOhdm9yYQ==?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Sep 30 16:27:48 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mVx2K-0002Q8-Mw for ged-emacs-devel@m.gmane-mx.org; Thu, 30 Sep 2021 16:27:48 +0200 Original-Received: from localhost ([::1]:32816 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mVx2J-0006Sn-Dv for ged-emacs-devel@m.gmane-mx.org; Thu, 30 Sep 2021 10:27:47 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:49854) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mVx1c-0005ki-To for emacs-devel@gnu.org; Thu, 30 Sep 2021 10:27:04 -0400 Original-Received: from logand.com ([37.48.87.44]:36268) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mVx1b-0000Ke-2y for emacs-devel@gnu.org; Thu, 30 Sep 2021 10:27:04 -0400 Original-Received: by logand.com (Postfix, from userid 1001) id E59C219EB31; Thu, 30 Sep 2021 16:27:00 +0200 (CEST) X-Mailer: emacs 27.2 (via feedmail 11-beta-1 I) In-Reply-To: Received-SPF: pass client-ip=37.48.87.44; envelope-from=tom@logand.com; helo=logand.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:275905 Archived-At: On Thu 30 Sep 2021 at 14:26, Jo=C3=A3o T=C3=A1vora w= rote: > On Thu, Sep 30, 2021 at 2:00 PM Tomas Hlavaty wrote: >> On Thu 30 Sep 2021 at 13:41, Jo=C3=A3o T=C3=A1vora wrote: >> > On Thu, Sep 30, 2021, 12:46 Gregory Heytings wr= ote: >> >> > but it's the wrong tool. >> >> And what is/what are the "right" tool(s) for the above use case? >> > In contrast, in some common lisp IDEs you have such tools and expose t= his >> > database. Xref in Emacs was originally derived from work of a Common L= isp >> > programmer, which created the amazing SLIME, which you may have heard = of. >> > SLIME (and my fork of it Sly) are indeed able to use these databases. >> > >> > Andr=C3=A9's comment is very accurate. In SLIME, one eats Lisp with a = spoon, not >> > a fork. >> >> Except it does not remove the need for grep. >> It misses a lot of things, you cannot rely on it completely. >> It needs the lisp code loaded and compiled sucessfully. > > No, you're able to build such a tool that merely needs to Lisp code to be > CL:READ. That does not work. Common Lisp reader is programable. If you do not compile and load everything needed sucessfully, the reader will fail for anything non-trivial. > You're supposed to have it loaded in your image while you develop it. You can restrict yourself like that but why do you think that it is a reasonable restriction for everybody? I likely search for things not loaded in my image more often than for things already loaded in my image. Which image btw? The one with or without threads, the one with or without unicode, the normal one or the one with more debuging support turned on, the one with sbcl or ccl or ecl or clisp...? > It's not like C where you do something and have to recompile the whole > thing. It really depends on what you change. Sometimes it is necessary to recompile the whole thing even in Common Lisp. For example: If you change a macro, you need to recompile all places where it is used. If you change an inlined function, you need to recompile all places where it is used. > And grep fails very horribly in Common Lisp as you well know, if > you include the package qualifier. That's why good programmers make effort to choose good names independent of language. Lots of Common Lisp code is awful because people play clever tricks with names and packages, symbol import, export, shadowing.