Subject: Re: On conditionals From: Erik Naggum <erik@naggum.net> Date: Wed, 21 Nov 2001 21:02:29 GMT Newsgroups: comp.lang.lisp Message-ID: <3215365347672515@naggum.net> * Erik Naggum > Well, unlike what a Perl hacker will expect, > > (setq foo (when bar zot)) > > actually does modify foo when bar is false. * Joe Schaefer | Huh? That's exactly what a perl hacker would expect; in fact, s/he'd | also expect foo = zot whenever bar is true, and foo = bar otherwise. | *That* might be surprising to a lisp programmer, though :) Heh, not at all, because if bar is false, foo will equal bar in Common Lisp, too, although it is a slightly unusual way to look at it. Since there is but one false value in Common Lisp, and Perl has a whole range of them, I suppose there is Perlish sense in your version of this. What I had in mind, however, was that Espen Vestre's example using a postfix if would cause the statement preceding it _not_ to be evaluated if the condition was false. /// -- Norway is now run by a priest from the fundamentalist Christian People's Party, the fifth largest party representing one eighth of the electorate. -- Carrying a Swiss Army pocket knife in Oslo, Norway, is a criminal offense.