bug-guile
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: procedure-source inconsistency


From: Neil Jerram
Subject: Re: procedure-source inconsistency
Date: Mon, 13 Aug 2007 19:34:14 +0100
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux)

Eric Eisner <address@hidden> writes:

> Hello,
>
> The built-in 'procedure-source' changes its output in procedures calling 
> 'let' after the procedure in is applied. For example "(define (f) (let ((x 
> 3)) x)) (procedure-source f)" returns '(lambda () (let ((x 3)) x))
> But "(begin (f) (procedure-source f))" returns '(lambda () (let* ((x 3)) x))
> When we were using procedure-source to store a procedure to file, it was not 
> correctly compared to a newly created identical procedure because a let had 
> been transformed to a let*. In summary, the problem here is that 
> procedure-source is not consistent for the same function when called at 
> different times.
>
> I'm running guile 1.8.1 on Debian Etch, linux 2.6.18.

Does it help if you do

  (read-enable 'copy)

before loading the code that you are concerned about?


Regards,
        Neil





reply via email to

[Prev in Thread] Current Thread [Next in Thread]