From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Mark H Weaver Newsgroups: gmane.lisp.guile.user Subject: Re: A value for "nothing" Date: Tue, 28 Aug 2018 11:59:40 -0400 Message-ID: <87y3cqh47n.fsf@netris.org> References: <21036238.c6yQEfjfIL@aleksandar-ixtreme-m5740> <87sh30vqmm.fsf@netris.org> <20180827080415.GB10407@tuxteam.de> <87wosbsh5m.fsf@netris.org> <87sh2zsfle.fsf@netris.org> <31c7a870-aaf2-3f0e-2ef4-be4dc783a842@gmail.com> <87va7vyo2q.fsf@netris.org> <87h8jeijr2.fsf@netris.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1535472237 5665 195.159.176.226 (28 Aug 2018 16:03:57 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 28 Aug 2018 16:03:57 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) Cc: guile-user@gnu.org, Matt Wette To: John Cowan Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Tue Aug 28 18:03:53 2018 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fugTB-0001Mi-9n for guile-user@m.gmane.org; Tue, 28 Aug 2018 18:03:53 +0200 Original-Received: from localhost ([::1]:38928 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fugVH-00034e-Gg for guile-user@m.gmane.org; Tue, 28 Aug 2018 12:06:03 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:55594) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fugQi-0008F5-Qa for guile-user@gnu.org; Tue, 28 Aug 2018 12:01:26 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fugQe-0007GZ-RM for guile-user@gnu.org; Tue, 28 Aug 2018 12:01:20 -0400 Original-Received: from world.peace.net ([64.112.178.59]:52260) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fugQe-0007Fr-Lc for guile-user@gnu.org; Tue, 28 Aug 2018 12:01:16 -0400 Original-Received: from mhw by world.peace.net with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1fugQc-0004A0-Ob; Tue, 28 Aug 2018 12:01:14 -0400 In-Reply-To: <87h8jeijr2.fsf@netris.org> (Mark H. Weaver's message of "Tue, 28 Aug 2018 11:38:41 -0400") X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 64.112.178.59 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.org gmane.lisp.guile.user:14805 Archived-At: Mark H Weaver writes: > John Cowan writes: > >> On Tue, Aug 28, 2018 at 3:01 AM Mark H Weaver wrote: >> >> In RnRS, (define a (if #f #f)) is allowed and guaranteed to assign >> *some* object to 'a' without signalling an error. >> >> Actually, the phrase used is "the result is unspecified", which unfortunately >> is not defined in any RnRS. > > That's the phrase used in R7RS-small, which fails to define it, as you > noted, but that shortcoming is limited to R7RS. Actually, the behavior _is_ clearly defined, in the formal denotational semantics in both R5RS and R7RS. If you learn how to read those, you'll see that there's no question that (if #f #f) is guaranteed to return exactly one unspecified value. Mark