Path: utzoo!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac,mp.cs.niu.edu!ux1.cso.uiuc.edu!midway!news From: mcdougal@cs.uchicago.edu Newsgroups: comp.lang.scheme Subject: member returns #f ? Message-ID: <1991Mar18.170433.27678@midway.uchicago.edu> Date: 18 Mar 91 17:04:33 GMT Sender: news@midway.uchicago.edu (News Administrator) Distribution: na Organization: U. of Chicago AI Lab Lines: 16 In general, memq, memv, member return a list. Can someone tell me the thinking behind having them return #f instead of the empty list if the obj. is not in the list? Does this mean that the standard paradigm for using these functions is (let ((result (memq x L))) (if result ....)) as opposed to (let ((result (memq x L))) (if (not (null? result)) ...)) ? I was under the impression that the former was frowned upon by Scheme pros. -Tom