all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* what happened to 'case' in emacs 28 ?
@ 2022-06-19 15:28 Jason Vas Dias
  2022-06-19 15:40 ` Jason Vas Dias
  0 siblings, 1 reply; 10+ messages in thread
From: Jason Vas Dias @ 2022-06-19 15:28 UTC (permalink / raw)
  To: emacs-devel

Good day -

I just started using emacs v28.1 today, having been
stuck with v27.2 for a long time, and now my
emacs-lisp scripts that used '(case V (va x) (vb y)...)'
now fail with the error message:
 "Symbol's function definition is void: case"
 - why this ABI breaking change ?

What was wrong with 'case' ?

Now I have to write my own 'case' macro, I guess?

All the best,
Jason



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: what happened to 'case' in emacs 28 ?
  2022-06-19 15:28 what happened to 'case' in emacs 28 ? Jason Vas Dias
@ 2022-06-19 15:40 ` Jason Vas Dias
  2022-06-19 15:40   ` Jason Vas Dias
  0 siblings, 1 reply; 10+ messages in thread
From: Jason Vas Dias @ 2022-06-19 15:40 UTC (permalink / raw)
  To: emacs-devel

Ah, I see, now it is called 'cl-case' -
what what the rationale behing this change ?

On 19/06/2022, Jason Vas Dias <jason.vas.dias@gmail.com> wrote:
> Good day -
>
> I just started using emacs v28.1 today, having been
> stuck with v27.2 for a long time, and now my
> emacs-lisp scripts that used '(case V (va x) (vb y)...)'
> now fail with the error message:
>  "Symbol's function definition is void: case"
>  - why this ABI breaking change ?
>
> What was wrong with 'case' ?
>
> Now I have to write my own 'case' macro, I guess?
>
> All the best,
> Jason
>



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: what happened to 'case' in emacs 28 ?
  2022-06-19 15:40 ` Jason Vas Dias
@ 2022-06-19 15:40   ` Jason Vas Dias
  2022-06-19 16:01     ` Andreas Schwab
  0 siblings, 1 reply; 10+ messages in thread
From: Jason Vas Dias @ 2022-06-19 15:40 UTC (permalink / raw)
  To: emacs-devel

Oops, in last comment I meant to write:

Ah, I see, now it is called 'cl-case' -
what what the rationale behind this change ?


On 19/06/2022, Jason Vas Dias <jason.vas.dias@gmail.com> wrote:
> Ah, I see, now it is called 'cl-case' -
> what what the rationale behing this change ?
>
> On 19/06/2022, Jason Vas Dias <jason.vas.dias@gmail.com> wrote:
>> Good day -
>>
>> I just started using emacs v28.1 today, having been
>> stuck with v27.2 for a long time, and now my
>> emacs-lisp scripts that used '(case V (va x) (vb y)...)'
>> now fail with the error message:
>>  "Symbol's function definition is void: case"
>>  - why this ABI breaking change ?
>>
>> What was wrong with 'case' ?
>>
>> Now I have to write my own 'case' macro, I guess?
>>
>> All the best,
>> Jason
>>
>



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: what happened to 'case' in emacs 28 ?
  2022-06-19 15:40   ` Jason Vas Dias
@ 2022-06-19 16:01     ` Andreas Schwab
  2022-06-19 17:11       ` Bruno Barbier
       [not found]       ` <CALyZvKwb576uHkYTAPPCpwHo3y80zMhZgHqq_yb3e=ORNVCqBA@mail.gmail.com>
  0 siblings, 2 replies; 10+ messages in thread
From: Andreas Schwab @ 2022-06-19 16:01 UTC (permalink / raw)
  To: Jason Vas Dias; +Cc: emacs-devel

The case macro has always been defined by the cl library, and that has
not changed.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: what happened to 'case' in emacs 28 ?
  2022-06-19 16:01     ` Andreas Schwab
@ 2022-06-19 17:11       ` Bruno Barbier
  2022-06-19 17:20         ` [External] : " Drew Adams
  2022-06-19 17:25         ` John Covici
       [not found]       ` <CALyZvKwb576uHkYTAPPCpwHo3y80zMhZgHqq_yb3e=ORNVCqBA@mail.gmail.com>
  1 sibling, 2 replies; 10+ messages in thread
From: Bruno Barbier @ 2022-06-19 17:11 UTC (permalink / raw)
  To: Andreas Schwab, Jason Vas Dias; +Cc: emacs-devel



Andreas Schwab <schwab@linux-m68k.org> writes:

> The case macro has always been defined by the cl library, and that has
> not changed.
>


And the 'cl' package has been deprecated in emacs 27 (see etc/NEWS.27).

If you didn't change anything, something was probably loading the 'cl'
package before, and the new version has been fixed to use the 'cl-lib'
package instead, with the clean "cl-" prefix.

The 'cl-lib' has been introduced in emacs 24 (see etc/NEWS.24):

       *** CL's main entry is now (require 'cl-lib).
       `cl-lib' is like the old `cl' except that it uses the namespace cleanly;
       i.e., all its definitions have the "cl-" prefix (and internal definitions
       use the "cl--" prefix).





> -- 
> Andreas Schwab, schwab@linux-m68k.org
> GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
> "And now for something completely different."



^ permalink raw reply	[flat|nested] 10+ messages in thread

* RE: [External] : Re: what happened to 'case' in emacs 28 ?
  2022-06-19 17:11       ` Bruno Barbier
@ 2022-06-19 17:20         ` Drew Adams
  2022-06-25 12:27           ` Jean Louis
  2022-06-19 17:25         ` John Covici
  1 sibling, 1 reply; 10+ messages in thread
From: Drew Adams @ 2022-06-19 17:20 UTC (permalink / raw)
  To: Bruno Barbier, Andreas Schwab, Jason Vas Dias; +Cc: emacs-devel@gnu.org

> > The case macro has always been defined by the
> > cl library, and that has not changed.
> 
> And the 'cl' package has been deprecated in emacs
> 27 (see etc/NEWS.27).
> 
> ... the new version has been fixed to use the 'cl-lib'
> package instead, with the clean "cl-" prefix.

Ah.  "the clean 'cl-' prefix"...

No more filthy `case'.  Cleanliness is next
to Godotliness.  And all it takes is adding
a prefix!

Maybe we should change `when' to `cl-when',
`progn' to `cl-progn', `setq' to `cl-setq',
`car' to `cl-car',...?

;-)

New, improved, spick-and-span Emacs.



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: what happened to 'case' in emacs 28 ?
  2022-06-19 17:11       ` Bruno Barbier
  2022-06-19 17:20         ` [External] : " Drew Adams
@ 2022-06-19 17:25         ` John Covici
  2022-06-19 17:40           ` Bruno Barbier
  1 sibling, 1 reply; 10+ messages in thread
From: John Covici @ 2022-06-19 17:25 UTC (permalink / raw)
  To: Bruno Barbier; +Cc: Andreas Schwab, Jason Vas Dias, emacs-devel

hmmm, using emacs 28 and probably 27, I do get cl is depricated, but I
have no idea which package is using it or do I need to change
anything?

On Sun, 19 Jun 2022 13:11:00 -0400,
Bruno Barbier wrote:
> 
> 
> 
> Andreas Schwab <schwab@linux-m68k.org> writes:
> 
> > The case macro has always been defined by the cl library, and that has
> > not changed.
> >
> 
> 
> And the 'cl' package has been deprecated in emacs 27 (see etc/NEWS.27).
> 
> If you didn't change anything, something was probably loading the 'cl'
> package before, and the new version has been fixed to use the 'cl-lib'
> package instead, with the clean "cl-" prefix.
> 
> The 'cl-lib' has been introduced in emacs 24 (see etc/NEWS.24):
> 
>        *** CL's main entry is now (require 'cl-lib).
>        `cl-lib' is like the old `cl' except that it uses the namespace cleanly;
>        i.e., all its definitions have the "cl-" prefix (and internal definitions
>        use the "cl--" prefix).
> 
> 
> 
> 
> 
> > -- 
> > Andreas Schwab, schwab@linux-m68k.org
> > GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
> > "And now for something completely different."
> 

-- 
Your life is like a penny.  You're going to lose it.  The question is:
How do
you spend it?

         John Covici wb2una
         covici@ccs.covici.com



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: what happened to 'case' in emacs 28 ?
  2022-06-19 17:25         ` John Covici
@ 2022-06-19 17:40           ` Bruno Barbier
  0 siblings, 0 replies; 10+ messages in thread
From: Bruno Barbier @ 2022-06-19 17:40 UTC (permalink / raw)
  To: covici; +Cc: Andreas Schwab, Jason Vas Dias, emacs-devel


John Covici <covici@ccs.covici.com> writes:

> hmmm, using emacs 28 and probably 27, I do get cl is depricated, but I
> have no idea which package is using it or do I need to change
> anything?


I don't know what the experts would say.

My guess: just stop using it in the code you write yourself.

In other words, if you don't know where it's used, you probably
shouldn't care about it.






^ permalink raw reply	[flat|nested] 10+ messages in thread

* RE: what happened to 'case' in emacs 28 ?
       [not found]       ` <CALyZvKwb576uHkYTAPPCpwHo3y80zMhZgHqq_yb3e=ORNVCqBA@mail.gmail.com>
@ 2022-06-19 20:10         ` Jason Vas Dias
  0 siblings, 0 replies; 10+ messages in thread
From: Jason Vas Dias @ 2022-06-19 20:10 UTC (permalink / raw)
  To: emacs-devel

RE: > Andreas Schwb wrote
>The case macro has always been defined by the cl library, and that has
> not changed.

Aha, yes, and since I wrote those scripts & began using case I have
always had :
 '(setq inferior-lisp-program "/usr/bin/sbcl")
  (add-to-list 'load-path "/usr/share/common-lisp/source/slime" t)
  (load (expand-file-name "/usr/share/common-lisp/quicklisp/slime-helper.el")
 '
and that loads 'cl' - now I have changed to using
Slime v2.27, a newer version is being used that insists on the 'cl-'
prefix being used.

Thanks to all who responded!

On 19/06/2022, Andreas Schwab <schwab@linux-m68k.org> wrote:
> The case macro has always been defined by the cl library, and that has
> not changed.
>
> --
> Andreas Schwab, schwab@linux-m68k.org
> GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
> "And now for something completely different."
>



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [External] : Re: what happened to 'case' in emacs 28 ?
  2022-06-19 17:20         ` [External] : " Drew Adams
@ 2022-06-25 12:27           ` Jean Louis
  0 siblings, 0 replies; 10+ messages in thread
From: Jean Louis @ 2022-06-25 12:27 UTC (permalink / raw)
  To: Drew Adams; +Cc: emacs-tangents

* Drew Adams <drew.adams@oracle.com> [2022-06-20 15:09]:
> > > The case macro has always been defined by the
> > > cl library, and that has not changed.
> > 
> > And the 'cl' package has been deprecated in emacs
> > 27 (see etc/NEWS.27).
> > 
> > ... the new version has been fixed to use the 'cl-lib'
> > package instead, with the clean "cl-" prefix.
> 
> Ah.  "the clean 'cl-' prefix"...
> 
> No more filthy `case'.  Cleanliness is next
> to Godotliness.  And all it takes is adding
> a prefix!
> 
> Maybe we should change `when' to `cl-when',
> `progn' to `cl-progn', `setq' to `cl-setq',
> `car' to `cl-car',...?
> 
> ;-)
> 
> New, improved, spick-and-span Emacs.

 _              _              _           
| |            | |            | |          
| |     __,    | |     __,    | |     __,  
|/ \   /  |    |/ \   /  |    |/ \   /  |  
|   |_/\_/|_/  |   |_/\_/|_/  |   |_/\_/|_/
                                           
                                           

-- 
Jean

Take action in Free Software Foundation campaigns:
https://www.fsf.org/campaigns

In support of Richard M. Stallman
https://stallmansupport.org/



^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2022-06-25 12:27 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-06-19 15:28 what happened to 'case' in emacs 28 ? Jason Vas Dias
2022-06-19 15:40 ` Jason Vas Dias
2022-06-19 15:40   ` Jason Vas Dias
2022-06-19 16:01     ` Andreas Schwab
2022-06-19 17:11       ` Bruno Barbier
2022-06-19 17:20         ` [External] : " Drew Adams
2022-06-25 12:27           ` Jean Louis
2022-06-19 17:25         ` John Covici
2022-06-19 17:40           ` Bruno Barbier
     [not found]       ` <CALyZvKwb576uHkYTAPPCpwHo3y80zMhZgHqq_yb3e=ORNVCqBA@mail.gmail.com>
2022-06-19 20:10         ` Jason Vas Dias

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.