Path: utzoo!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!mcsun!ukc!edcastle!aiai!jeff From: jeff@aiai.ed.ac.uk (Jeff Dalton) Newsgroups: comp.lang.scheme Subject: Re: in defense of C Message-ID: <1903@skye.ed.ac.uk> Date: 2 Mar 90 14:59:35 GMT References: <9003012059.AA11786@schizo.samsung.com> Reply-To: jeff@aiai.UUCP (Jeff Dalton) Organization: AIAI, University of Edinburgh, Scotland Lines: 23 In article <9003012059.AA11786@schizo.samsung.com> gjc@mitech.com writes: >The key here is the phrase "equivalent program in Pascal" coupled >with the extremely important suggestion I made, which is that C >could be used like you use lisp. Not only that, who says C can't have array bounds checking. As far as I can tell, the lack of them is just an implementation tradition. Pointers would have to be more complex, but fi you want bounds checking enough you'd presumably be willing to pay. Besides, since when does Lisp make such checks. Sure, most Lisps probably check array bounds, but most do not check whether CAR and CDR are really being applied to conses (just for example). As GJC notes, Lisp programmers have developed ways to deal with this, as have C programmers. >You say C has no array bounds checking. (In a way, big deal, >certainly the Lispmachines had extremely good low-level checking >of that nature, but it didn't keep the software or user from >being able to "... let machines crash or behave strangely" as Steele puts it). That too.