[comp.lang.misc] The role of pointers

steven@cwi.nl (Steven Pemberton) (10/12/90)

I find it alarming to read some of the defences of pointers in this
group, especially coming from some of the people I consider Clear
Thinkers :-)

When you program, you want to attain a certain result. To do that you
program using certain data-structures. If you are lucky, the
data-structures are supplied as standard in the language and if not,
you have to build them with the tools supplied. If the language is C,
(or Algol 68) and you want to build a graph, you will almost certainly
need pointers, because that's all you've got. But that is not to say
that pointers are the Best Solution.

As the Hermes people point out, there are better abstractions (if
pointers can be called an abstraction at all) for implementing new
data-structures. You may end up doing things that look like pointer
manipulation, but there are distinct advantages. Check out "The ABC
Programmer's Handbook" [plug] by Leo Geurts et.al, Prentice Hall, and
the section on Common Data-Structures. There you will see examples of
data-structures normally implemented with pointers (like trees and
graphs) without a single pointer in sight.

As they say, if your only tool is a hammer, all your problems look
like nails.

Steven Pemberton, CWI, Amsterdam; steven@cwi.nl
"Let us go then you and I/while the night is laid out against the sky/like a
					smear of mustard on an old pork pie"
Nice poem Tom. I have ideas for changes though, why not come over? - Ezra