Path: utzoo!utgpu!news-server.csri.toronto.edu!rutgers!cs.utexas.edu!sun-barr!olivea!orc!inews!iwarp.intel.com!gargoyle!igloo!nevin From: nevin@igloo.scum.com (Nevin Liber) Newsgroups: comp.lang.misc Subject: Re: C's sins of commission Message-ID: <2958@igloo.scum.com> Date: 18 Oct 90 06:18:48 GMT References: <387@shum.huji.ac.il> <65664@lanl.gov> <393@shum.huji.ac.il> Reply-To: nevin@igloo.UUCP (Nevin Liber) Organization: Igloo public access unix, Northbrook IL Lines: 43 [ I moved this thread over to comp.lang.misc about a week and a half ago; then our machine (igloo) took a few power hits. I missed most of the real details and find myself left with a flame war. Just my luck.] In article <393@shum.huji.ac.il> shum!gadi@lilac.berkeley.edu (Gad Aharoni) writes: >In article <65664@lanl.gov> jlg@lanl.gov (Jim Giles) writes: > >>... Graphs are easy >>to implement as recursive data structures without any user-visible >>variable whose value is an address - that is to say: without explicit >>pointers. >Ok. Show me how you would implement a graph data structure without using >pointers, and when I say pointers I also mean array indices. All that are needed are the stack operations push and pop, and the queue operations put and get, and it should be fairly easy to implement a graph data structure. If this isn't true, then it would be impossible to implement graphs in Icon and LISP. I am not looking for "C without pointers". What I feel is that, sometime in the future, our computer languages (if that is how we program computers at all :-)) will have enough higher-level constructs (such as stack and queue operations on arbituary complex objects), that pointers will be superfluous. Pointers will, of course, always remain on the implementation level. But on the programming level, it tends to get messy. I would _much_ rather deal with references than pointers. Once you have references and high-level data structures and operations, what do you still need pointers for (other than hardware manipulation, of course)? A related question: why _don't_ languages such as LISP and Icon (and probably Smalltalk; I haven't used it enough to be able to comment on it) have pointers on the programming level? What classes of problems can't be solved in these languages that can in say, a strictly conforming ANSI C program involving pointers (other than OS specific and hardware-specific stuff, of course)? -- NEVIN ":-)" LIBER nevin@igloo.Scum.com or ..!gargoyle!igloo!nevin (708) 831-FLYS California, here I come! Q: Who killed Laura Palmer? A: Waldo did it.