help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Why aren't `find`, `find-if`, `remove-if` part of Emacs Lisp?


From: Christoph Wedler
Subject: Re: Why aren't `find`, `find-if`, `remove-if` part of Emacs Lisp?
Date: Tue, 24 Jun 2014 15:51:49 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (windows-nt)

Damien Cassou <damien.cassou@gmail.com> writes:

> On Wed, Jun 18, 2014 at 4:43 PM, Barry Margolin <barmar@alum.mit.edu> wrote:
>
>> Why? Just to avoid having to do (require 'cl)? Or are you suggesting
>> that they should be rewritten in C and made primitive subrs?
>
> I think Nicolas' problem is not the language in which the functions are
> implemented. In my opinion, the problems are:
>
> - that a (large) library must be loaded to have these 2 core functions
> (select a subset of elements, select one element). And this library is not
> required for similar functions like mapcar
>
> - that the name of the cl-lib functions are all prefixed by 'cl-' which
> makes them look weird for core functions
>
> I don't think Nicolas cares about the exact same features as cl-remove-if
> and cl-find-if. A very simple alternative (i.e., without the &rest cl-keys)
> would do the job.

Indeed, the "cl-" prefix is very weird.  I would consider almost all CL
functions core, with the exception of (cl-)loop.

Btw, in Emacs-24.3, syntax highlighting does not work for cl-defstruct,
but defstruct.


To be honest, I do not fully understand why Emacs has such an anti-CL
policy.

Sometimes, you hear the "namespace argument" ("polution"): Well, to put
that into perspective, you might want to check the EMACS/etc/NEWS*
files.  There, you see quite a few "new function" announcements without
extra namespace, quite a few are actually the CL functions... (repeated
"namespace polutions" are IMHO worse than one bigger one).

Regards,
Christoph


reply via email to

[Prev in Thread] Current Thread [Next in Thread]