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

Re: Opaque syntax objects



Andre van Tonder <andre@xxxxxxxxxxxxxxxxx> writes:

> On Sat, 13 Aug 2005, [ISO-8859-1] Jens Axel Søgaard wrote:
>
>> Representing syntax-objects using normal lists does breaks the
>> abstraction, and I too prefer the extra layer of abstraction.
>
> This is often said, but I've never understood why people would think this. 
> Normally subtyping (see my earlier message) or genericity are regarded as 
> abstraction mechanisms, not abstraction-breaking mechanisms.  After all, people 
> don't normally say that generic + and * break the "integer" abstraction.  Why 
> should generic car/cdr be different here?

I guess I didn't catch the drift of your earlier message:  Are you
implying that syntax objects can be opaque, and that CAR and CDR
should be extended to work on them?  Does this mean, by transitivity,
any R5RS procedure that works on lists or pairs should also work on
syntax objects?  That's a tall order, and one not every implementor
might feel comfortable about.

The problem with genericity is that it's often confusing---if what I
wrote is what you intended, I got confused about your intentions.

-- 
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla