Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!mailrus!ncar!husc6!XAIT!g-rh From: g-rh@XAIT.XEROX.COM (Richard Harter) Newsgroups: comp.lang.c Subject: Re: using standard interfaces Message-ID: <33549@XAIT.XEROX.COM> Date: 20 Sep 88 18:07:05 GMT References: <485.231DAAC3@stjhmc.fidonet.org> <725@proxftl.UUCP> <7076@bloom-beacon.MIT.EDU> <33391@cca.CCA.COM> <1988Sep17.211053.8712@utzoo.uucp> <33442@cca.CCA.COM> <1988Sep19.213508.13314@utzoo.uucp> Reply-To: g-rh@XAIT.Xerox.COM (Richard Harter) Organization: Xerox Corporation, Cambridge, Massachusetts Lines: 28 In article <1988Sep19.213508.13314@utzoo.uucp> henry@utzoo.uucp (Henry Spencer) writes: >In article <33442@cca.CCA.COM> g-rh@XAIT.Xerox.COM (Richard Harter) writes: >>... I don't need surprises like finding that my version >>of a routine breaks the system because there is a system routine with the >>same name (and nominal effect) that has side effects that the system relies >>on... >If you read the fine print in the X3J11 drafts, this is explicitly forbidden >unless the name is one of those reserved by the standard. Yes, this will >require revisions to libraries in many implementations. X3J11 thought it >well worth the trouble, given the increasingly severe problems with name- >space pollution in C. I seem to recall this, yes. Would you care to hazard a guess as to the date on which I can rely on this being true in all major implementations? Today? 1992? 1995? 2001? 2061? :-) This question is not entirely facetious. In practice you have to deal with operating systems and languages as they are today, and you have to plan for the future. Perhaps today I avoid potential library routine name conflicts because of the aforementioned problems. Perhaps tomorrow I rely on being able to pick up a superior implementation from the system. But today and tomorrow my software has to run on a suite of architectures. And so it goes. -- In the fields of Hell where the grass grows high Are the graves of dreams allowed to die. Richard Harter, SMDS Inc.