Xref: utzoo comp.lang.scheme:1149 comp.lang.lisp:2892 Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!wuarchive!swbatl!texbell!texsun!smunews!ti-csl!m2!gateley From: gateley@m2.csc.ti.com (John Gateley) Newsgroups: comp.lang.scheme,comp.lang.lisp Subject: Re: in defense of C Message-ID: <113917@ti-csl.csc.ti.com> Date: 8 Mar 90 23:41:23 GMT References: <1903@skye.ed.ac.uk> <14112@cbnewsc.ATT.COM> <1942@skye.ed.ac.uk> <542@fsu.scri.fsu.edu> Sender: news@ti-csl.csc.ti.com Followup-To: comp.lang.scheme Organization: TI Computer Science Center, Dallas Lines: 21 In article <542@fsu.scri.fsu.edu> pepke@gw.scri.fsu.edu (Eric Pepke) writes: |In the one I am now writing for the 680x0, one can have |safe CARs and CDRs without loss of speed. |So, one just makes that a test for |(1) a valid list, or (2) anything else. In my system, that's testing a |single bit. In case 1, do the job. In case 2, return NIL. |Eric Pepke INTERNET: pepke@gw.scri.fsu.edu But this is NOT safe: consider the following code: (defun foo () (if (car 3) (tear-down-the-berlin-wall) (bomb-the-soviets))) Your implementation will bomb the soviets! I understand that your implementation will not crash due to garbage pointers, but I don't think "safe" is a good term to apply here. John gateley@m2.csc.ti.com