GNU bug report logs - #41353
'thunk?' documentation is misleading

Previous Next

Package: guile;

Reported by: Jan Synacek <jsynacek <at> redhat.com>

Date: Sun, 17 May 2020 10:42:01 UTC

Severity: normal

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Jan Synacek <jsynacek <at> redhat.com>
To: 41353 <at> debbugs.gnu.org
Subject: bug#41353: (thunk? (const 1))
Date: Sun, 17 May 2020 16:46:40 +0200
On Sun, May 17, 2020 at 4:09 PM David Kastrup <dak <at> gnu.org> wrote:
> I think this is more a matter of the documentation being not quite right:
>
>  -- Scheme Procedure: thunk? obj
>  -- C Function: scm_thunk_p (obj)
>      Return ‘#t’ if OBJ is a thunk—a procedure that does not accept
>      arguments.
>
> "if OBJ can serve as a thunk—a procedure called without arguments."
>
> Note that (thunk? (lambda x x)) also returns #t and that ((const 1))
> returns 1.

But both (lambda x ...) and (const whatever) are still a procedure that accepts
an argument, aren't they? My understanding of thunk is (lambda () ...),
because that's a procedure that takes zero arguments.





This bug report was last modified 5 years and 74 days ago.

Previous Next


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