[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [External] : Re: Appending lists
From: |
Emanuel Berg |
Subject: |
Re: [External] : Re: Appending lists |
Date: |
Sun, 20 Jun 2021 22:49:46 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
> Actually `append' can also be trouble because the last list
> isn't copied, the new list just has a cdr somewhere to it -
> yes, to the actual list [...]
>
> I don't know why append does this, either to speed things up
> or it has something to do with the car/cdr dynamic, maybe it
> is considered safe enough to move the car out of action with
> an actual copy ...
(setq list-head '(1)) ; (1)
(setq list-tail '(2 3 4)) ; (2 3 4)
(setq whole-list (append list-head list-tail)) ; (1 2 3 4)
(setcdr list-tail '(3.5 4)) ; (3.5 4)
whole-list ; (1 2 3.5 4) <-- the tail has changed
(setcar list-head 1.5)
whole-list ; <-- but here, the head is still unaffected, (1 2 3.5 4)
(setcar whole-list 1.33) ; well, of course that will work...
whole-list ; (1.33 2 3.5 4)
list-head ; still (1.5)
--
underground experts united
https://dataswamp.org/~incal
- Re: Appending lists, (continued)
- Re: Appending lists, tomas, 2021/06/19
- Re: Appending lists, Emanuel Berg, 2021/06/19
- RE: [External] : Re: Appending lists, Drew Adams, 2021/06/19
- Re: [External] : Re: Appending lists, Emanuel Berg, 2021/06/20
- Re: [External] : Re: Appending lists, Emanuel Berg, 2021/06/20
- Re: [External] : Re: Appending lists, Jean Louis, 2021/06/20
- Re: [External] : Re: Appending lists, Emanuel Berg, 2021/06/20
- Re: [External] : Re: Appending lists, Jean Louis, 2021/06/20
- Re: [External] : Re: Appending lists, Emanuel Berg, 2021/06/20
- Re: [External] : Re: Appending lists, Emanuel Berg, 2021/06/20
- Re: [External] : Re: Appending lists,
Emanuel Berg <=
- Re: [External] : Re: Appending lists, Jean Louis, 2021/06/20
- Re: [External] : Re: Appending lists, Emanuel Berg, 2021/06/20
- Re: [External] : Re: Appending lists, Jean Louis, 2021/06/20
- Re: [External] : Re: Appending lists, Emanuel Berg, 2021/06/20
- Re: [External] : Re: Appending lists, Jean Louis, 2021/06/20
- Re: [External] : Re: Appending lists, Stefan Monnier, 2021/06/20
- Re: [External] : Re: Appending lists, Emanuel Berg, 2021/06/20
- Re: [External] : Re: Appending lists, Emanuel Berg, 2021/06/20