From: "Dido Sevilla" <dido.sevilla / gmail.com>
> >
> On 12/5/05, petermichaux / yahoo.com <petermichaux / yahoo.com> wrote:
> > I'm still trying to grasp exactly what symbols are. I am getting a
> > feeling that they are related to my old friends the C pointers. Am I
> > getting closer?
> 
> Not at all. The truth can hardly be further from your understanding.

Except that, when testing for equality, comparing two symbols
essentially reduces to a pointer comparison.

So in that sense, symbols are indeed like pointers to strings, with
the added stipulation that lexically identical strings are KNOWN to
reside at the same memory address.

So, pseudocode:

  const char *a = SYMBOL("foo");
  const char *b = SYMBOL("foo");
  assert( a == b );  // symbols "foo" and "foo" KNOWN to be at same address


Hope this helps rather than further confuses... :)

Regards,

Bill