GNU bug report logs - #18646
procedure-name fails for inner procedures with primitive-eval

Previous Next

Package: guile;

Reported by: Marko Rauhamaa <marko <at> pacujo.net>

Date: Mon, 6 Oct 2014 19:08:01 UTC

Severity: normal

Done: Andy Wingo <wingo <at> pobox.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 18646 in the body.
You can then email your comments to 18646 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guile <at> gnu.org:
bug#18646; Package guile. (Mon, 06 Oct 2014 19:08:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Marko Rauhamaa <marko <at> pacujo.net>:
New bug report received and forwarded. Copy sent to bug-guile <at> gnu.org. (Mon, 06 Oct 2014 19:08:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Marko Rauhamaa <marko <at> pacujo.net>
To: bug-guile <at> gnu.org
Subject: procedure-name bug
Date: Mon, 06 Oct 2014 22:04:41 +0300
Consider this program (guile-2.0.11 under Fedora 20):

===begin test.scm=======================================================
(define (hello) #f)
(format #t "~S\n" (procedure-name hello))

(define (xyz)
  (define (hello) #f)
  (format #t "~S\n" (procedure-name hello)))

(xyz)
===end test.scm=========================================================

If I run:

   $ guile --no-auto-compile test.scm
   hello
   #f
   $ guile --no-auto-compile test.scm
   hello
   #f
   $ guile test.scm
   ;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
   ;;;       or pass the --no-auto-compile argument to disable.
   [...]
   hello
   hello
   $ guile test.scm
   hello
   hello
   $ guile --no-auto-compile test.scm
   hello
   hello


Marko




Changed bug title to 'procedure-name fails for inner procedures with primitive-eval' from 'procedure-name bug' Request was from Mark H Weaver <mhw <at> netris.org> to control <at> debbugs.gnu.org. (Tue, 07 Oct 2014 03:58:01 GMT) Full text and rfc822 format available.

Reply sent to Andy Wingo <wingo <at> pobox.com>:
You have taken responsibility. (Wed, 22 Jun 2016 08:20:01 GMT) Full text and rfc822 format available.

Notification sent to Marko Rauhamaa <marko <at> pacujo.net>:
bug acknowledged by developer. (Wed, 22 Jun 2016 08:20:01 GMT) Full text and rfc822 format available.

Message #12 received at 18646-done <at> debbugs.gnu.org (full text, mbox):

From: Andy Wingo <wingo <at> pobox.com>
To: Marko Rauhamaa <marko <at> pacujo.net>
Cc: 18646-done <at> debbugs.gnu.org
Subject: Re: bug#18646: procedure-name bug
Date: Wed, 22 Jun 2016 10:19:47 +0200
Hi,

Thanks for the report.

For what it's worth this is fixed in Guile master (2.1.x, will be 2.2,
Real Soon Now).

It's a little hard to fix in 2.0 though.  We would have to rewrite some
pieces of the evaluator and the "memoizer", a part of Guile's
interpreter.  (Guile 2.2 already has these rewrites but it can't be
ported back.)  I don't think I will have time to do this, sadly.

I am closing this one based on the guess that I don't think we will get
to this in 2.0, though I would be happy to accept a fix if someone found
a way to do it :)  Please re-open or file a new bug if you or someone
you know will be able to work on a fix for 2.0.

Andy

On Mon 06 Oct 2014 21:04, Marko Rauhamaa <marko <at> pacujo.net> writes:

> Consider this program (guile-2.0.11 under Fedora 20):
>
> ===begin test.scm=======================================================
> (define (hello) #f)
> (format #t "~S\n" (procedure-name hello))
>
> (define (xyz)
>   (define (hello) #f)
>   (format #t "~S\n" (procedure-name hello)))
>
> (xyz)
> ===end test.scm=========================================================
>
> If I run:
>
>    $ guile --no-auto-compile test.scm
>    hello
>    #f
>    $ guile --no-auto-compile test.scm
>    hello
>    #f
>    $ guile test.scm
>    ;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
>    ;;;       or pass the --no-auto-compile argument to disable.
>    [...]
>    hello
>    hello
>    $ guile test.scm
>    hello
>    hello
>    $ guile --no-auto-compile test.scm
>    hello
>    hello
>
>
> Marko




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 20 Jul 2016 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 9 years and 29 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.