Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!brutus.cs.uiuc.edu!ux1.cso.uiuc.edu!ux1.cso.uiuc.edu!m.cs.uiuc.edu!robison From: robison@m.cs.uiuc.edu Newsgroups: comp.lang.misc Subject: Re: Relationship between C and C++ Message-ID: <5200048@m.cs.uiuc.edu> Date: 20 Mar 90 01:39:37 GMT References: <8432@hubcap.clemson.edu> Lines: 20 Nf-ID: #R:hubcap.clemson.edu:8432:m.cs.uiuc.edu:5200048:000:817 Nf-From: m.cs.uiuc.edu!robison Mar 19 14:56:00 1990 > I strongly disagree with this approach if the goal is to obtain software > quality. Take pointer arithmetic, for example. I would contend that you can > have quality software, or you can have pointer arithmetic; but you cannot > have both... This is not the first attack on pointer arithmetic that I have seen. Why is pointer arithmetic denigrated so much? The C-style pointer arithmetic seems to me to implement a fairly simple abstraction, roughly equivalent to ``a tape and a read/write head.'' Most C implementations do not do bounds checking on pointers, but I fail to see why pointer arithmetic is inherently evil. Can anyone clue me as to the basis for pointer paranoia? Arch D. Robison University of Illinois at Urbana-Champaign UUCP: {pur-ee,convex}!uiucdcs!robison Internet: robison@CS.UIUC.EDU