Subject: Re: bug#411: 23.0.60; flet and byte-compilation

From: Stefan Monnier <[email-masked]>
Date: Wed, 31 Oct 2012 12:06:39 -0400

>> Indeed, because `cl-flet' is a different beast, much more
>> like `labels' than like CL's `flet' (it is lexically scoped).
> Just out of curiosity (and I haven't followed this thread), why?

Because:
- CL's `flet' is completely unlike Common-Lisp's `flet'.
- CL's `flet' is more like defadvice, except (dynamically) scoped and
  without adjusting the docstring to at least mention that something
  fishy is going on.
IOW because CL's `flet' does something we generally want to discourage.
Or rather, because CL's `flet' was a mistake, hence its being
marked obsolete.
  
> Or call this `foobar' or whatever.  Calling it `cl-flet' seems the more
> misleading the farther the behavior gets from CL's `flet' - no?

`cl-flet' is a (hopefully) faithful implementation of Common-Lisp's
`flet', so I think it deserves its name.

        Stefan