emacs-devel
[Top][All Lists]
Advanced

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

RE: [Emacs-diffs] emacs-25 a9c48d5: Additional fixes for file notificati


From: Drew Adams
Subject: RE: [Emacs-diffs] emacs-25 a9c48d5: Additional fixes for file notification
Date: Mon, 29 Feb 2016 10:11:10 -0800 (PST)

> >  Finally, to make things even more muddy, we have recently piled
> >  additional, non-Common Lisp stuff into the `cl-' namespace.
> >  What's that about?  That just confuses people.
> [...]
> > This particular problem was reported as bug #20056, which was
> > just closed today as "wont-fix".
> 
> You make it sound like we have many such additions, but I've only
> heard of one such so far (namely (cl-)letf).  In the specific case
> of cl-letf,

Sorry if I did.  I don't know how many there are.  If there is
only one, so much the better - easy to fix.

And again, it is more important for the future than for the past.
No exceptions and a clear policy will help keep the CL libraries
for Common Lisp emulation.

Put differently, I see no good reason why something like `cl-letf'
would be defined in a Common-Lisp emulation library.  `letf' is
simply not Common Lisp.

Oh, but wait -

Browsing through just `cl-macs.el', which is where `cl-letf' is
defined, and searching for just `defmacro', I come across these
non Common-Lisp macros (which are not just implementation building
blocks):

`cl-callf'
`cl-callf2'
`cl-iter-defun'
`cl-flet*'
`cl-letf*'

Moving to `cl-extra' and searching for `defun', I see these:

`cl-prettyprint'   (called a "debugging aid")
`cl-prettyexpand'  (called a "debugging aid")
`cl-describe-type'

Moving to `cl-preloaded.el':

`cl-struct-define'

And there are other `cl*.el' libraries which could be checked.

And it seems that there are internal functions and macros,
which are used only for implementing CL things, which use
prefix `cl-' instead of `cl--'.  For example, `cl-struct-define'.
Should they not be renamed?

So it seems that there at least a few more than just `cl-letf'.

> I'm not sure where else you'd want to put it [`cl-letf']

Doesn't matter to me.  Typically, something as general as that
would go in a library such as `subr.el' or `simple.el', I would
think.  But I'm no expert on the collection of Lisp libraries
we have.

> (I don't want it as just unprefixed `letf').

Why not?

But if there is a good reason for that, fine.  I don't have a
problem with putting it in a library that uses a prefix for
everything - as long as the prefix is not `cl-'.  I really
don't see why `cl-' would not be reserved for emulation of
Common Lisp constructs (and their implementations).



reply via email to

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