From: Andreas Davour
Subject: How to create a object which contains other objects
Date: 
Message-ID: <cs9zluyq1du.fsf@Psilocybe.Update.UU.SE>
I've tried to do like this:

(DEFCLASS BAR ()
 ((TESTING :INITARG NIL)))

(DEFCLASS FOO ()
 ((STUFF :INITFORM (LIST 'APA 'BEPA 'CEPA))))

(SETF APA (MAKE-INSTANCE 'BAR))
(SETF BEPA (MAKE-INSTANCE 'BAR))
(SETF CEPA (MAKE-INSTANCE 'BAR))

(SETF TEST-FOO (MAKE-INSTANCE 'FOO))

#|| NOTE 
Let's toy with the idea that I don't use SETF at the top-level, right? 
||# END NOTE

Now. I'd hoped that when I DESCRIBE'd my TEST-FOO the slot STUFF would
show up like (APA BEPA CEPA) which then could be further investigated
and found to be to be a list with objects of the class BAR.

What I do get get, though, is a slot STUFF with 
(#<BAR {5367211}> #<BAR {7236213}> #<BAR {7382133}>) instead. I.e. not
the symbols but instances of BAR.

I must have misunderstood something, even though I've read all my
available books and other documentation. I guess I'm staring at the
obvious solution and not seeing it. CLOS is kind of new to me yet and
symbols is a big subject (see KMP talking about Scheme and symbols in
another thread).

/andreas

-- 
A: Because it fouls the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?

From: Pascal Costanza
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <5vkl9fF1mf3n3U1@mid.individual.net>
Andreas Davour wrote:
> I've tried to do like this:
> 
> (DEFCLASS BAR ()
>  ((TESTING :INITARG NIL)))
> 
> (DEFCLASS FOO ()
>  ((STUFF :INITFORM (LIST 'APA 'BEPA 'CEPA))))
> 
> (SETF APA (MAKE-INSTANCE 'BAR))
> (SETF BEPA (MAKE-INSTANCE 'BAR))
> (SETF CEPA (MAKE-INSTANCE 'BAR))
> 
> (SETF TEST-FOO (MAKE-INSTANCE 'FOO))
> 
> #|| NOTE 
> Let's toy with the idea that I don't use SETF at the top-level, right? 
> ||# END NOTE
> 
> Now. I'd hoped that when I DESCRIBE'd my TEST-FOO the slot STUFF would
> show up like (APA BEPA CEPA) which then could be further investigated
> and found to be to be a list with objects of the class BAR.
> 
> What I do get get, though, is a slot STUFF with 
> (#<BAR {5367211}> #<BAR {7236213}> #<BAR {7382133}>) instead. I.e. not
> the symbols but instances of BAR.

That's very weird. Either you're not showing us the code you have 
actually written and have made some mistake when typing it into the 
newsnet posting, or there is something terribly wrong in your Common 
Lisp implementation.

Which implementation are you using here?


Pascal


-- 
1st European Lisp Symposium (ELS'08)
http://prog.vub.ac.be/~pcostanza/els08/

My website: http://p-cos.net
Common Lisp Document Repository: http://cdr.eurolisp.org
Closer to MOP & ContextL: http://common-lisp.net/project/closer/
From: Andreas Davour
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <cs9ve5mptp1.fsf@Psilocybe.Update.UU.SE>
Pascal Costanza <··@p-cos.net> writes:

> Andreas Davour wrote:
>> I've tried to do like this:
[snip]
>> Now. I'd hoped that when I DESCRIBE'd my TEST-FOO the slot STUFF would
>> show up like (APA BEPA CEPA) which then could be further investigated
>> and found to be to be a list with objects of the class BAR.
>>
>> What I do get get, though, is a slot STUFF with (#<BAR {5367211}>
>> #<BAR {7236213}> #<BAR {7382133}>) instead. I.e. not
>> the symbols but instances of BAR.
>
> That's very weird. Either you're not showing us the code you have
> actually written and have made some mistake when typing it into the
> newsnet posting, or there is something terribly wrong in your Common
> Lisp implementation.
>
> Which implementation are you using here?

Since KDE, X and Emacs all have their own idea of what a clipboard area
is (one of my biggest annoyances with emacs, not that it isn't written
in CL) I have no way of killing/yanking and cut/paste things and must
have mistyped something.

Apparently I *had* it all figured out then. I'll see if I can save those
two examples somehow (since I can't just cut/paste) and see if 'diff'
tells me more. Thanks for the reality check!

/Andreas

-- 
A: Because it fouls the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?
From: ···@telent.net
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <47954c00$0$8424$db0fefd9@news.zen.co.uk>
Andreas Davour wrote:
> Since KDE, X and Emacs all have their own idea of what a clipboard area
> is (one of my biggest annoyances with emacs, not that it isn't written
> in CL) I have no way of killing/yanking and cut/paste things and must
> have mistyped something.

Pasting into a third window (e.g. an xterm running "cat >/dev/null") and 
then copying again often helps.


-dan
From: Andreas Davour
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <cs9bq7eppac.fsf@Psilocybe.Update.UU.SE>
···@telent.net writes:

> Andreas Davour wrote:
>> Since KDE, X and Emacs all have their own idea of what a clipboard area
>> is (one of my biggest annoyances with emacs, not that it isn't written
>> in CL) I have no way of killing/yanking and cut/paste things and must
>> have mistyped something.
>
> Pasting into a third window (e.g. an xterm running "cat >/dev/null")
> and then copying again often helps.

I have done a few awkward maneuvers like that now, and with 'diff'
confirmed that I had introduced an "error" that made my example work. 

It would be simpler if emacs knew about X, though... :-(

/Andreas

-- 
A: Because it fouls the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?
From: vtail
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <ca1ef321-71fb-48a7-a3fb-d4d286a594fb@l32g2000hse.googlegroups.com>
On Jan 21, 8:28 pm, Andreas Davour <·······@updateLIKE.uu.HELLse>
wrote:
> ····@telent.net writes:
> > Andreas Davour wrote:
> >> Since KDE, X and Emacs all have their own idea of what a clipboard area
> >> is (one of my biggest annoyances with emacs, not that it isn't written
> >> in CL) I have no way of killing/yanking and cut/paste things and must
> >> have mistyped something.
>
> > Pasting into a third window (e.g. an xterm running "cat >/dev/null")
> > and then copying again often helps.
>
> I have done a few awkward maneuvers like that now, and with 'diff'
> confirmed that I had introduced an "error" that made my example work.
>
> It would be simpler if emacs knew about X, though... :-(

OMG! Why don't you guys use this new thing called Google which Dr.
Weitz is advertising?

Adding (setq x-select-enable-clipboard t) to your .emacs will solve
this problem. I have no problems copy-pasting to and from Emacs 22.1
under both Mac and Linux.

Regards,
Victor.
From: vtail
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <fea07bdf-25fe-48dd-a7e7-0b644523f534@d4g2000prg.googlegroups.com>
On Jan 21, 8:40 pm, vtail <··············@gmail.com> wrote:
> On Jan 21, 8:28 pm, Andreas Davour <·······@updateLIKE.uu.HELLse>
> wrote:
>
> > ····@telent.net writes:
> > > Andreas Davour wrote:
> > >> Since KDE, X and Emacs all have their own idea of what a clipboard area
> > >> is (one of my biggest annoyances with emacs, not that it isn't written
> > >> in CL) I have no way of killing/yanking and cut/paste things and must
> > >> have mistyped something.
>
> > > Pasting into a third window (e.g. an xterm running "cat >/dev/null")
> > > and then copying again often helps.
>
> > I have done a few awkward maneuvers like that now, and with 'diff'
> > confirmed that I had introduced an "error" that made my example work.
>
> > It would be simpler if emacs knew about X, though... :-(
>
> OMG! Why don't you guys use this new thing called Google which Dr.
> Weitz is advertising?
>
> Adding (setq x-select-enable-clipboard t) to your .emacs will solve
> this problem. I have no problems copy-pasting to and from Emacs 22.1
> under both Mac and Linux.
>
> Regards,
> Victor.

In fact, http://www.emacswiki.org/cgi-bin/wiki/CopyAndPaste is the
first result for google search on "emacs 22.1 clipboard".
From: Andreas Davour
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <cs93asqpngo.fsf@Psilocybe.Update.UU.SE>
vtail <··············@gmail.com> writes:

> On Jan 21, 8:40�pm, vtail <··············@gmail.com> wrote:
>> On Jan 21, 8:28�pm, Andreas Davour <·······@updateLIKE.uu.HELLse>
>> wrote:
>>
>> > ····@telent.net writes:
>> > > Andreas Davour wrote:
>> > >> Since KDE, X and Emacs all have their own idea of what a clipboard area
>> > >> is (one of my biggest annoyances with emacs, not that it isn't written
>> > >> in CL) I have no way of killing/yanking and cut/paste things and must
>> > >> have mistyped something.
>>
>> > > Pasting into a third window (e.g. an xterm running "cat >/dev/null")
>> > > and then copying again often helps.
>>
>> > I have done a few awkward maneuvers like that now, and with 'diff'
>> > confirmed that I had introduced an "error" that made my example work.
>>
>> > It would be simpler if emacs knew about X, though... :-(
>>
>> OMG! Why don't you guys use this new thing called Google which Dr.
>> Weitz is advertising?
>>
>> Adding (setq x-select-enable-clipboard t) to your .emacs will solve
>> this problem. I have no problems copy-pasting to and from Emacs 22.1
>> under both Mac and Linux.
>>
>
> In fact, http://www.emacswiki.org/cgi-bin/wiki/CopyAndPaste is the
> first result for google search on "emacs 22.1 clipboard".

If that works for you, be happy. For me it alleviate the pain, but
doesn't make it all go away. Sometimes I not only listen to the Doctor,
I'm ahead of him. ;)

/Andreas

-- 
A: Because it fouls the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?
From: Alex Mizrahi
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <4795ae45$0$90264$14726298@news.sunsite.dk>
 AD> It would be simpler if emacs knew about X, though... :-(

use XEmacs, it's pre-configured with sane defaults, and clipboard "just 
works" 
From: Robert Uhl
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <m33aspu8p3.fsf@latakia.dyndns.org>
Andreas Davour <·······@updateLIKE.uu.HELLse> writes:
>
> Since KDE, X and Emacs all have their own idea of what a clipboard area
> is (one of my biggest annoyances with emacs, not that it isn't written
> in CL) I have no way of killing/yanking and cut/paste things and must
> have mistyped something.

Emacs 22 fixes pretty much all of the old clipboard issues; it also adds
a lot of libraries as standard and is generally a Good Idea.  I strongly
encourage you to upgrade to it.

Also, if you post news using Gnus (which comes with and runs within
emacs...) then obviously emacs yank works as you'd expect.

-- 
Robert Uhl <http://public.xdi.org/=ruhl>
A layman knows he has to kick it; An amateur knows where to kick it; A
professional knows how hard.                            --Mike Andrews
From: Andreas Davour
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <cs9tzl5oek8.fsf@Psilocybe.Update.UU.SE>
Robert Uhl <·········@NOSPAMgmail.com> writes:

> Andreas Davour <·······@updateLIKE.uu.HELLse> writes:
>>
>> Since KDE, X and Emacs all have their own idea of what a clipboard area
>> is (one of my biggest annoyances with emacs, not that it isn't written
>> in CL) I have no way of killing/yanking and cut/paste things and must
>> have mistyped something.
>
> Emacs 22 fixes pretty much all of the old clipboard issues; it also adds
> a lot of libraries as standard and is generally a Good Idea.  I strongly
> encourage you to upgrade to it.

I'll see if I can convince my sysadmin to do that.

> Also, if you post news using Gnus (which comes with and runs within
> emacs...) then obviously emacs yank works as you'd expect.

I'm in the middle of migrating to a new way of handling bother news and
e-mail and will hopefully get everything to work as expected. Until
then, still some pain. 

/andreas

-- 
A: Because it fouls the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?
From: Rainer Joswig
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <joswig-ED2DDD.00140022012008@news-europe.giganews.com>
In article <···············@Psilocybe.Update.UU.SE>,
 Andreas Davour <·······@updateLIKE.uu.HELLse> wrote:

> I've tried to do like this:
> 
> (DEFCLASS BAR ()
>  ((TESTING :INITARG NIL)))
> 
> (DEFCLASS FOO ()
>  ((STUFF :INITFORM (LIST 'APA 'BEPA 'CEPA))))
> 
> (SETF APA (MAKE-INSTANCE 'BAR))
> (SETF BEPA (MAKE-INSTANCE 'BAR))
> (SETF CEPA (MAKE-INSTANCE 'BAR))
> 
> (SETF TEST-FOO (MAKE-INSTANCE 'FOO))
> 

Welcome to Clozure Common Lisp Version 1.1-r8157 (DarwinX8664)!
? (DEFCLASS BAR ()
 ((TESTING :INITARG NIL)))

(DEFCLASS FOO ()
 ((STUFF :INITFORM (LIST 'APA 'BEPA 'CEPA))))

(SETF APA (MAKE-INSTANCE 'BAR))
(SETF BEPA (MAKE-INSTANCE 'BAR))
(SETF CEPA (MAKE-INSTANCE 'BAR))

(SETF TEST-FOO (MAKE-INSTANCE 'FOO))

? ? ? ? ? #<FOO #x300041A7527D>

? (describe test-foo)
#<FOO #x30004194413D>
Class: #<STANDARD-CLASS FOO>
Wrapper: #<CLASS-WRAPPER  #x300041944D2D>
Instance slots
STUFF: (APA BEPA CEPA)
? 


> #|| NOTE 
> Let's toy with the idea that I don't use SETF at the top-level, right? 
> ||# END NOTE
> 
> Now. I'd hoped that when I DESCRIBE'd my TEST-FOO the slot STUFF would
> show up like (APA BEPA CEPA) which then could be further investigated
> and found to be to be a list with objects of the class BAR.

'Investigated'. Huh? (APA BEPA CEPA) are symbols. This does
not change when you 'investigate' them. What you can
to is MAP SYMBOL-VALUE over the list:

? (mapcar #'symbol-value (slot-value test-foo 'stuff))
(#<BAR #x3000419444DD> #<BAR #x30004194430D> #<BAR #x30004194425D>)


> 
> What I do get get, though, is a slot STUFF with 
> (#<BAR {5367211}> #<BAR {7236213}> #<BAR {7382133}>) instead. I.e. not
> the symbols but instances of BAR.

STRANGE! Did you leave your computer 'alone' for some minutes?

> 
> I must have misunderstood something, even though I've read all my
> available books and other documentation. I guess I'm staring at the
> obvious solution and not seeing it. CLOS is kind of new to me yet and
> symbols is a big subject (see KMP talking about Scheme and symbols in
> another thread).
> 
> /andreas
From: Andreas Davour
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <cs9odbepth1.fsf@Psilocybe.Update.UU.SE>
Rainer Joswig <······@lisp.de> writes:

> In article <···············@Psilocybe.Update.UU.SE>,
>  Andreas Davour <·······@updateLIKE.uu.HELLse> wrote:
>
>> I've tried to do like this:
[snip] 
>
> Welcome to Clozure Common Lisp Version 1.1-r8157 (DarwinX8664)!
> ? (DEFCLASS BAR ()
>  ((TESTING :INITARG NIL)))
>
> (DEFCLASS FOO ()
>  ((STUFF :INITFORM (LIST 'APA 'BEPA 'CEPA))))
>
> (SETF APA (MAKE-INSTANCE 'BAR))
> (SETF BEPA (MAKE-INSTANCE 'BAR))
> (SETF CEPA (MAKE-INSTANCE 'BAR))
>
> (SETF TEST-FOO (MAKE-INSTANCE 'FOO))
>
> ? ? ? ? ? #<FOO #x300041A7527D>
>
> ? (describe test-foo)
> #<FOO #x30004194413D>
> Class: #<STANDARD-CLASS FOO>
> Wrapper: #<CLASS-WRAPPER  #x300041944D2D>
> Instance slots
> STUFF: (APA BEPA CEPA)
> ? 

Interesting.

>> #|| NOTE 
>> Let's toy with the idea that I don't use SETF at the top-level, right? 
>> ||# END NOTE
>> 
>> Now. I'd hoped that when I DESCRIBE'd my TEST-FOO the slot STUFF would
>> show up like (APA BEPA CEPA) which then could be further investigated
>> and found to be to be a list with objects of the class BAR.
>
> 'Investigated'. Huh? (APA BEPA CEPA) are symbols. This does
> not change when you 'investigate' them. What you can
> to is MAP SYMBOL-VALUE over the list:
>
> ? (mapcar #'symbol-value (slot-value test-foo 'stuff))
> (#<BAR #x3000419444DD> #<BAR #x30004194430D> #<BAR #x30004194425D>)
  
That was the kind of investigating I was considering, yes.

>> What I do get get, though, is a slot STUFF with 
>> (#<BAR {5367211}> #<BAR {7236213}> #<BAR {7382133}>) instead. I.e. not
>> the symbols but instances of BAR.
>
> STRANGE! Did you leave your computer 'alone' for some minutes?

I think, like Pascal suggested, that I mistyped something when looking
at the window with the code (and once again thought about how it should
work) and it introduced an "error" that made it work. Damn those
clipboard buffers!

Thanks for the feedback.

/Andreas

-- 
A: Because it fouls the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?
From: Thomas A. Russ
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <ymiejc9qt47.fsf@blackcat.isi.edu>
Andreas Davour <·······@updateLIKE.uu.HELLse> writes:

> I've tried to do like this:
> 
> (DEFCLASS BAR ()
>  ((TESTING :INITARG NIL)))
> 
> (DEFCLASS FOO ()
>  ((STUFF :INITFORM (LIST 'APA 'BEPA 'CEPA))))
> 
> (SETF APA (MAKE-INSTANCE 'BAR))
> (SETF BEPA (MAKE-INSTANCE 'BAR))
> (SETF CEPA (MAKE-INSTANCE 'BAR))
> 
> (SETF TEST-FOO (MAKE-INSTANCE 'FOO))
> 
> #|| NOTE 
> Let's toy with the idea that I don't use SETF at the top-level, right? 
> ||# END NOTE
> 
> Now. I'd hoped that when I DESCRIBE'd my TEST-FOO the slot STUFF would
> show up like (APA BEPA CEPA) which then could be further investigated
> and found to be to be a list with objects of the class BAR.
> 
> What I do get get, though, is a slot STUFF with 
> (#<BAR {5367211}> #<BAR {7236213}> #<BAR {7382133}>) instead. I.e. not
> the symbols but instances of BAR.

Well, that is truly bizarre and surprising.

With the code given above, the slot STUFF on TEST-FOO really should
contain a list of symbols.

Either the :INITFORM argument has the symbols without quoting them, in
which case one would expect them to evaluate to their values, or else
you have a strange bug in your Common Lisp implementation.



-- 
Thomas A. Russ,  USC/Information Sciences Institute
From: Pascal J. Bourguignon
Subject: Re: How to create a object which contains other objects
Date: 
Message-ID: <7c4pd4x617.fsf@pbourguignon.anevia.com>
···@sevak.isi.edu (Thomas A. Russ) writes:

> Andreas Davour <·······@updateLIKE.uu.HELLse> writes:
>
>> I've tried to do like this:
>> 
>> (DEFCLASS BAR ()
>>  ((TESTING :INITARG NIL)))
>> 
>> (DEFCLASS FOO ()
>>  ((STUFF :INITFORM (LIST 'APA 'BEPA 'CEPA))))
>> 
>> (SETF APA (MAKE-INSTANCE 'BAR))
>> (SETF BEPA (MAKE-INSTANCE 'BAR))
>> (SETF CEPA (MAKE-INSTANCE 'BAR))
>> 
>> (SETF TEST-FOO (MAKE-INSTANCE 'FOO))
>> 
>> #|| NOTE 
>> Let's toy with the idea that I don't use SETF at the top-level, right? 
>> ||# END NOTE
>> 
>> Now. I'd hoped that when I DESCRIBE'd my TEST-FOO the slot STUFF would
>> show up like (APA BEPA CEPA) which then could be further investigated
>> and found to be to be a list with objects of the class BAR.
>> 
>> What I do get get, though, is a slot STUFF with 
>> (#<BAR {5367211}> #<BAR {7236213}> #<BAR {7382133}>) instead. I.e. not
>> the symbols but instances of BAR.
>
> Well, that is truly bizarre and surprising.
>
> With the code given above, the slot STUFF on TEST-FOO really should
> contain a list of symbols.

Indeed.  I bet the OP added some quotes and mixed results:


CL-USER[5]> (mkupack)
#<PACKAGE USER1>
C/USER1[6]> 
(DEFCLASS BAR ()
 ((TESTING :INITARG NIL)))

(DEFCLASS FOO ()
 ((STUFF :INITFORM (LIST 'APA 'BEPA 'CEPA))))                        ; <-- QUOTES HERE.

(SETF APA (MAKE-INSTANCE 'BAR))
(SETF BEPA (MAKE-INSTANCE 'BAR))
(SETF CEPA (MAKE-INSTANCE 'BAR))

(SETF TEST-FOO (MAKE-INSTANCE 'FOO))

#1=#<STANDARD-CLASS BAR>
C/USER1[7]> #1=#<STANDARD-CLASS FOO>
C/USER1[8]> #<BAR #x208F075E>
C/USER1[9]> #<BAR #x2091D046>
C/USER1[10]> #<BAR #x20949696>
C/USER1[11]> #<FOO #x20975D8E>
C/USER1[12]> (inspect test-foo)
#<USER1::FOO #x20975D8E>:  standard object
 type: USER1::FOO
0 [STUFF]:  (USER1::APA USER1::BEPA USER1::CEPA)                     ; ==> WE GET SYMBOLS
INSPECT-- type :h for help; :q to return to the REPL ---> :q

C/USER1[13]> (mkupack)
#<PACKAGE USER2>
C/USER2[14]> 
(DEFCLASS BAR ()
 ((TESTING :INITARG NIL)))

(DEFCLASS FOO ()
 ((STUFF :INITFORM (LIST APA BEPA CEPA))))                           ; <-- NO QUOTES HERE

(SETF APA (MAKE-INSTANCE 'BAR))
(SETF BEPA (MAKE-INSTANCE 'BAR))
(SETF CEPA (MAKE-INSTANCE 'BAR))

(SETF TEST-FOO (MAKE-INSTANCE 'FOO))

#1=#<STANDARD-CLASS BAR>
C/USER2[15]> #1=#<STANDARD-CLASS FOO>
C/USER2[16]> #<BAR #x20A104E6>
C/USER2[17]> #<BAR #x20A3CD2E>
C/USER2[18]> #<BAR #x20A6940E>
C/USER2[19]> #<FOO #x2088B676>
C/USER2[20]> (inspect test-foo)
#<USER2::FOO #x2088B676>:  standard object
 type: USER2::FOO
0 [STUFF]:  (#<USER2::BAR #x2088B51E> #<USER2::BAR #x2088B5D6> 
             #<USER2::BAR #x2088B5E6>)                               ; ==> WE GET THE OBJECTS
INSPECT-- type :h for help; :q to return to the REPL ---> :q

C/USER2[21]> 


-- 
__Pascal Bourguignon__