[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Move ambitus print callback to scheme
From: |
David Kastrup |
Subject: |
Re: [PATCH] Move ambitus print callback to scheme |
Date: |
Sat, 29 Aug 2009 06:56:05 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux) |
Carl Sorensen <address@hidden> writes:
> On Aug 28, 2009, at 1:16 PM, "Nicolas Sceaux" <address@hidden>
> wrote:
>
>>
>> According to R5RS, it is an error to modify a literal list.
>> If a function returns '(), the caller won't be allowed to
>> apply a modifying function on the result (eg. append!)
>>
>
> IIUC, '() is not a literal list, but a constant that represents the
> empty list.
It is a literal list in my opinion, but one that happens to have no
unique and/or modifiable conses. Append will work just fine on it.
>> However, guile does not report modifying a literal list as an error,
>> and actually modifies it, so this is somewhat rhetorical.
It is not rhetorical since a modified literal list will actually stay
modified when you call the function the next time. Can't happen with
'() though.
guile> (define (weird) (append! '(4) '(5)))
guile> (weird)
(4 5)
guile> (weird)
(4 5 . #1#)
guile> (weird)
Backtrace:
In standard input:
7: 0* [weird]
4: 1 [append! (4 5 . #1#) (5 . #0#)]
standard input:4:17: In procedure last-pair in expression (append! (quote #)
(quote #)):
standard input:4:17: Circular structure in position 1: (4 5 . #1#)
ABORT: (misc-error)
guile>
--
David Kastrup
- [PATCH] Move ambitus print callback to scheme, Neil Puttock, 2009/08/19
- Re: [PATCH] Move ambitus print callback to scheme, Neil Puttock, 2009/08/25
- Re: [PATCH] Move ambitus print callback to scheme, Carl Sorensen, 2009/08/26
- Re: [PATCH] Move ambitus print callback to scheme, Han-Wen Nienhuys, 2009/08/27
- Re: [PATCH] Move ambitus print callback to scheme, Neil Puttock, 2009/08/27
- Re: [PATCH] Move ambitus print callback to scheme, Nicolas Sceaux, 2009/08/28
- Re: [PATCH] Move ambitus print callback to scheme, Carl Sorensen, 2009/08/28
- Re: [PATCH] Move ambitus print callback to scheme,
David Kastrup <=
- Re: [PATCH] Move ambitus print callback to scheme, Nicolas Sceaux, 2009/08/29
- Re: [PATCH] Move ambitus print callback to scheme, Carl Sorensen, 2009/08/29
- Re: [PATCH] Move ambitus print callback to scheme, David Kastrup, 2009/08/30