[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Opaque syntax objects



On Mon, 15 Aug 2005, [ISO-8859-1] Jens Axel Søgaard wrote:

If it is neccessary to wrap atoms, vectors, the empty list etc. then
the only data structure left, that isn't represented by a special
type is lists. Wouldn't it be simpler to demand all syntax to
be represented as a separate type?

I would not wrap vectors either. Still, you can think of syntax vectors and syntax pairs as belonging to a special type, which happens to be a subtype of vectors or pairs. At the end of the day, you have an extra field - does it matter whether this field is kept with the object or separately in a hashtable? Logically it is part of the object:

   The hashtable entry /is/ the wrap.

Genericity is certainly more complicated theoretically, and part of me is drawn to the purity of requiring all conversions to be written explicitly. However, I do not think this would be necessarily simpler for users, make programs concise and readable, or aid in the reuse of existing libraries.

Andre