From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= 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 15:57:49 +0100 Message-ID: References: <16338bdc2497fc51c6fb6d54ab370bfb@webmail.orcon.net.nz> <874ka5gsqa.fsf@gnus.org> <25d8d72022b571db5291@heytings.org> <87h7e2xsl5.fsf@gmail.com> <25d8d72022e1ea7ed022@heytings.org> <87h7e2jjzy.fsf@logand.com> <87bl4ajg0c.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="19508"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel To: Tomas Hlavaty Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Sep 30 16:59:39 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 1mVxX8-0004io-Gx for ged-emacs-devel@m.gmane-mx.org; Thu, 30 Sep 2021 16:59:38 +0200 Original-Received: from localhost ([::1]:33512 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mVxX7-0003JV-GI for ged-emacs-devel@m.gmane-mx.org; Thu, 30 Sep 2021 10:59:37 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:57438) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mVxVa-0000Vj-V6 for emacs-devel@gnu.org; Thu, 30 Sep 2021 10:58:03 -0400 Original-Received: from mail-pj1-x1036.google.com ([2607:f8b0:4864:20::1036]:37531) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mVxVY-00012I-Qz for emacs-devel@gnu.org; Thu, 30 Sep 2021 10:58:02 -0400 Original-Received: by mail-pj1-x1036.google.com with SMTP id me5-20020a17090b17c500b0019af76b7bb4so6957729pjb.2 for ; Thu, 30 Sep 2021 07:58:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=LLdQcC9oU2zN8ZH9zwbT5pGEMreF9lKM6W8zISZtUqI=; b=IL2f2QU52KMZgtHDaXUtpc/fy+IuAKep02IyGc9ELXfg6oCsR7ToU09kpPcXIwhrWL oRR+nZEDoF7dzqxevfKWI3SjXH2f1OXhd5ycnmjvT5i6e4PVgocZDnWwFb6xrTxQSsEJ mR2MfXYegp491nrL78/GQHy4PXjy9J6wuXcCWSdrVwmnskmZhuvX/q2lEgAAeDAXdBX2 qXPZU3aWLidHaPsa8X0/UY7y4FbmzEcf4YzgYAfast6LRbYWpIoGiYP+FCacV5wcAyEo ePT2ukQ5qxX4feQ+YP/h+bXLsz8AAMqKBij8mfKTmBXENkSvCtdVnQBeuAPMComMGPXJ yn5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=LLdQcC9oU2zN8ZH9zwbT5pGEMreF9lKM6W8zISZtUqI=; b=t6GVBefwU1h6tx/QRs/+LXF919wZcx32Hz0rlyGkNb+UlgUsUxg7t0DYSOQ36MAsIP /QvrAWEBNZCn61yte4z2zmVt49C8M23fiJbiIJcOPxZWB3iKpAC5rIYwAoGsWv/GGoYT HZAD6ETJCewPnD33yixi+JEK0R5i4QNMc0Pp5OCwmCX7aCispQX3Pe+4XlPws8FZf6qC kGol0uS95ob3OsZ2vCMHWkuIM20telew9fhuy9XBNdnrtrhjVX91rGu+78CQyHcXRQFs e0yXFNY7WP+b0QIe+AITJ5UKnWsCt91WUBVpbB8WDKUxTANupF+kdXpgg4yvofbP2eqo K8iA== X-Gm-Message-State: AOAM532OblJ3US6P2jcG1QeM/g7io/hDRr6dY2X9FIJqv7UQxKZC/WQZ vH8TB8RFToQzghgJszLLnLzZU+Uy85tIK6iiFJui/r98 X-Google-Smtp-Source: ABdhPJyqIPGdMaJqpzKkf4AL016xCkNjn1atA1oSMSkAN3WRtvvYCNCl9PLPhoajmTb2EkxHnU7epT5WSkYV+AqWprQ= X-Received: by 2002:a17:90a:5a86:: with SMTP id n6mr6988161pji.3.1633013878974; Thu, 30 Sep 2021 07:57:58 -0700 (PDT) In-Reply-To: <87bl4ajg0c.fsf@logand.com> Received-SPF: pass client-ip=2607:f8b0:4864:20::1036; envelope-from=joaotavora@gmail.com; helo=mail-pj1-x1036.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=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:275907 Archived-At: On Thu, Sep 30, 2021 at 3:27 PM Tomas Hlavaty wrote: > 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. Those non-trivial things are quite rare, and good reader etiquette makes th= e code that is CL:READ with a non-full reader at least make a good deal of sense. Unless you're programming basic stuff like `(` and stuff, in which case you've already lost. But you're right, almost. The standard reader needs to know packages just t= o be able to intern the symbols it reads. UNLESS you use a non-interning rea= der ;-) Which is precisely what you should use for a lisp-specific grep-like. And anyhoo, the point is moot for Elisp. The reader is not programmable (y= et!) and shorthand definitions are file-local. So building that grep-like is no= t impeded by that question at all. > > 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 don't know if it's a restriction. It's what I and many consider the most useful way to work with Lisp. To have symbolic information at our fingertips. You like to have line-based literal-text information, sure go ahead! But you'll be missing a lot of free structure. It's free symbolic real-estate! > > 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. We're talkinga bout iterative development, which is where development tools of the sort of grep come about. I'm not stating that in CL I don't recompile whole stuff from scratch Oh boy, I _wish_ I could state that. Last CL job I worked it took at least 20 minutes. So I and everyone else developed a bit incrementally, then compiled the whole thing to test. > > 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. So when you program CL you repeat the package qualifier in the symbol name? I've seen that, yuck. And you never use `:USE` (not even` :USE :CL`) and yo= u always refer to the same symbol by the very same name every time? And all your colleagues and the code you use in Common Lisp does that? > Lots of Common Lisp code is awful because people play clever tricks with > names and packages, symbol import, export, shadowing. "With great power comes great responsibility", some beardy sysadmin probably wrote. Jo=C3=A3o