This page is part of the web mail archives of SRFI 72 from before July 7th, 2015. The new archives for SRFI 72 contain all messages, not just those from before July 7th, 2015.
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.