Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!snorkelwacker!bloom-beacon!ATT-IN.ATT.COM!postmaster From: postmaster@ATT-IN.ATT.COM Newsgroups: comp.lang.scheme Subject: (none) Message-ID: <9001212253.aa13936@mintaka.lcs.mit.edu> Date: 22 Jan 90 03:43:21 GMT Sender: root@athena.mit.edu (Wizard A. Root) Organization: The Internet Lines: 138 Mail to `att.att.com!attmail!mhs!envoy!ics.test/pn=_test_group' alias `att!attmail!mhs!envoy!ics.test/pn=_test_group' from 'CUNYVM.CUNY.EDU!Scheme%lcs.mit.edu' failed. The error message was: destination unknown or forwarding disallowed The message began: Received: from SCF.FUNDP.AC.BE by CUNYVM.CUNY.EDU (IBM VM SMTP R1.2.2MX) with BSMTP id 8628; Sun, 21 Jan 90 22:51:48 EST Received: by BNANDP11 (Mailer R2.02A) id 2563; Mon, 22 Jan 90 04:50:44 +0100 Date: Wed, 17 Jan 90 02:32:34 EST Reply-To: Scheme%lcs.mit.edu@CUNYVM.CUNY.EDU Sender: Scheme Programming Language From: Automatic Scheme Digestifier Subject: Scheme Digest #276 Comments: To: Scheme@lcs.mit.edu To: ICSUG TEST GROUP Scheme Digest #276 17 Jan 90 02:32:34 EST Today's Topics: (none) () as an expression (3 messages) Administrivia: The Scheme Digest is now being produced by a new automatic digestifier. If you notice any problems caused by this change, please report them to us. (Note that this change is unrelated to the recent problems where an errant mailer is sending entire digests back to us as submissions.) Scheme-Request@LCS.MIT.EDU ---------------------------------------------------------------------- Message-ID: <502@qusunitb.queensu.CA> Date: 15 Jan 90 16:11:36 GMT From: Prakash Panangaden To: scheme@mc.lcs.mit.edu Subject: Re: (none) Is there anyone who knows where to get PC schemes in Canada? Thanks ------------------------------ Message-ID: <1990Jan16.193134.10491@sun.soe.clarkson.edu> Date: 16 Jan 90 19:31:34 GMT From: Jason Coughlin To: scheme@mc.lcs.mit.edu Subject: () as an expression The Revised^3 Report says that () is an illegal expression. It must be quoted. However, MIT-Scheme and PC-Scheme both allow it, ie: MIT-SCHEME => () () MIT-SCHEME => Why is () an invalid expression? It seems to me that it is a constant. (eq? #t #t) => #t (eq? #f #f) => #t (eq? '() '()) => #t now why isn't () considered a constant, when it really IS a constant? -- Jason Coughlin ( jk0@sun.soe.clarkson.edu , jk0@clutx ) "Every jumbled pile of person has a thinking part that wonders what the part that isn't thinking isn't thinking of." - They Might Be Giants ------------------------------ Message-ID: <5413@tekcrl.LABS.TEK.COM> Date: 16 Jan 90 20:55:13 GMT From: Ken Dickey To: scheme@MC.lcs.mit.edu Subject: Re: () as an expression In article <1990Jan16.193134.10491@sun.soe.clarkson.edu> jk0@sun.soe.clarkson.edu (Jason Coughlin) writes: >The Revised^3 Report says that () is an illegal expression. It must >be quoted. However, MIT-Scheme and PC-Scheme both allow it, ie: .. >Why is () an invalid expression? It seems to me that it is a constant. > >(eq? #t #t) => #t >(eq? #f #f) => #t >(eq? '() '()) => #t > >now why isn't () considered a constant, when it really IS a constant? The syntax () is considered a combination (a.k.a. procedure call) and as such must have at lease one subexpression. So, the empty list is valid, but the empty combination is an error. Note also that #f and '() may be distinct in newer Scheme implementations [the value of (eq? '() #f) is currently unspecified]. There are other non-R^3RS behaviors allowed by various versions of Scheme implementations, particularly those implementations done before R^3RS was issued. -Ken Dickey ------------------------------ Message-ID: <1990Jan16.231311.18316@sun.soe.clarkson.edu> Date: 16 Jan 90 23:13:11 GMT From: Jason Coughlin To: scheme@mc.lcs.mit.edu Subject: Re: () as an expression From article <5413@tekcrl.LABS.TEK.COM>, by kend@tekchips.LABS.TEK.COM (Ken Dickey): > Note also that #f and '() may be distinct in newer Scheme > implementations [the value of (eq? '() #f) is currently unspecified]. This leads to another point: I think we need a definitive answer on whether #f == (). In my Scheme, #f and () are two different entities. I like this because in my mind, #f != (). #f is boolean, () is an empty list. So what say you about: (BOOLEAN? '()) (NULL? '()) (EQ? '() #f) -- Jason Coughlin ( jk0@sun.soe.clarkson.edu , jk0@clutx ) "Every jumbled pile of person has a thinking part that wonders what the part that isn't thinking isn't thinking of." - They Might Be Giants ------------------------------ End of Scheme Digest ********************