all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Drew Adams <drew.adams@oracle.com>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: "'Help-Gnu-Emacs (help-gnu-emacs@gnu.org)'" <help-gnu-emacs@gnu.org>
Subject: RE: [External] : Re: Emacs 30.0 warning from `cl-pushnew' and `memql'
Date: Fri, 30 Dec 2022 22:55:07 +0000	[thread overview]
Message-ID: <SJ0PR10MB548897D714E2A3DB330ACE7AF3F09@SJ0PR10MB5488.namprd10.prod.outlook.com> (raw)
In-Reply-To: <jwv5ydsracp.fsf-monnier+emacs@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 1756 bytes --]

> > But "very frequent", really?  Any evidence that
> > that's been the case for the many users of CL
                                               ^^
                                        Common Lisp
> > `case' since the mid-80s?
> 
> The only "evidence" I have the number of such errors
> I've fixed over the years in other people's ELisp code.

Which isn't an indication of such for _CL_ `case',
i.e., in the code of _Common Lisp_ users.

Beyond being perhaps an indication that the Emacs
_doc_ for `cl-case' should be improved, it sounds
like no Elisp problem with `case' has been found.

(Well, I did mention a bug I noticed, of `cl-case'
not raising an error when CL specifies it should.)

And I guess you don't have an example of using
`pcase' to do what `case' does but somehow "simpler".

I doubt that Elisp coders are dumber than CL coders,
in general.  If the former are misunderstanding the
no-quoting thing then my guess is that's due to the
lack of doc saying that keylists and their entries
aren't evaluated.

The use case of `case' is simple, yet common.  We
should add it to Elisp (with no `cl-' prefix).
___

Note BTW that Common Lisp even adopted _exactly_
the same thing for `typecase' as for `case'.  That
wasn't something inherited from other Lisps AFAIK.
They could have done something different, but they
chose the `case' approach, including `otherwise',
`t', and _no evaluation_ of keys:

 "The TYPE that appears in each clause is a type
  specifier; it is _not evaluated but is a literal_
  type specifier."

Clearly they didn't see a problem with not evaling
keys, and opted for a simple syntax for a simple
use case.

https://www.cs.cmu.edu/Groups/AI/html/cltl/clm/node84.html

[-- Attachment #2: winmail.dat --]
[-- Type: application/ms-tnef, Size: 15662 bytes --]

  reply	other threads:[~2022-12-30 22:55 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-26 20:38 Emacs 30.0 warning from `cl-pushnew' and `memql' Emanuel Berg
2022-12-27  6:56 ` Jean Louis
2022-12-27 10:28 ` Michael Heerdegen
2022-12-27 11:33   ` Emanuel Berg
2022-12-27 11:39   ` Emanuel Berg
2022-12-28  3:23     ` [External] : " Drew Adams
2022-12-28  4:23       ` Emanuel Berg
2022-12-29 22:27         ` Drew Adams
2022-12-30 22:27           ` Emanuel Berg
2022-12-30  6:30         ` tomas
2022-12-28  6:25     ` tomas
2022-12-28 11:59       ` Michael Heerdegen
2022-12-28 12:41         ` tomas
2022-12-28 12:45           ` Emanuel Berg
2022-12-28 13:19           ` Emanuel Berg
2022-12-28 14:54           ` Emanuel Berg
2022-12-29 22:31             ` Stefan Monnier via Users list for the GNU Emacs text editor
2023-01-08  4:18               ` Emanuel Berg
2023-01-08 18:54                 ` Andreas Eder
2022-12-28 17:57           ` [External] : " Drew Adams
2022-12-28 18:10             ` Stefan Monnier via Users list for the GNU Emacs text editor
2022-12-28 19:29               ` Emanuel Berg
2022-12-28 19:35               ` Drew Adams
2022-12-28 19:36               ` tomas
2022-12-28 19:24             ` Emanuel Berg
2022-12-28 17:54         ` Drew Adams
2022-12-28 18:05           ` Stefan Monnier via Users list for the GNU Emacs text editor
2022-12-28 19:35             ` Drew Adams
2022-12-29  3:34               ` Stefan Monnier via Users list for the GNU Emacs text editor
2022-12-29 19:06                 ` Drew Adams
2022-12-29 19:45                   ` Stefan Monnier via Users list for the GNU Emacs text editor
2022-12-29 22:00                     ` Drew Adams
2022-12-29 22:25                       ` Stefan Monnier via Users list for the GNU Emacs text editor
2022-12-30  7:29                         ` Drew Adams
2022-12-30 18:55                           ` Stefan Monnier via Users list for the GNU Emacs text editor
2022-12-30 22:55                             ` Drew Adams [this message]
2022-12-31  0:08                               ` Stefan Monnier via Users list for the GNU Emacs text editor
2022-12-31  2:45                                 ` Drew Adams
2022-12-31  4:53                                   ` Stefan Monnier via Users list for the GNU Emacs text editor
2022-12-28 19:21           ` Emanuel Berg
2022-12-28 20:24         ` Jean Louis
2022-12-28 20:56           ` Emanuel Berg
2022-12-28 21:24           ` [External] : " Drew Adams
2022-12-28 22:47             ` Jean Louis
2022-12-28 23:48               ` Emanuel Berg
2022-12-29  6:03               ` tomas
2022-12-29  6:59                 ` Emanuel Berg
2022-12-29  7:08                 ` Emanuel Berg
2022-12-29  7:19                 ` Emanuel Berg
2022-12-29 22:41                   ` Drew Adams
2022-12-30 23:03                     ` Emanuel Berg
2022-12-30  6:35                   ` tomas
2022-12-29  9:18                 ` Jean Louis
2022-12-29 10:04                   ` Emanuel Berg
2022-12-29 10:12                   ` tomas
2022-12-29 10:20                     ` Emanuel Berg
2022-12-29 10:26                     ` Emanuel Berg
2022-12-29 10:36                   ` Michael Heerdegen
2022-12-29 14:47                 ` Stefan Monnier via Users list for the GNU Emacs text editor
2022-12-29 10:39           ` Michael Heerdegen
2022-12-28 12:44       ` Emanuel Berg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=SJ0PR10MB548897D714E2A3DB330ACE7AF3F09@SJ0PR10MB5488.namprd10.prod.outlook.com \
    --to=drew.adams@oracle.com \
    --cc=help-gnu-emacs@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.