Email list hosting service & mailing list manager


Re: propositions, oppositions, and some minor details Felix Winkelmann 13 Sep 2004 08:33 UTC

xxxxxx@autodrip.bloodandcoffee.net wrote:
>
> I am also *vehemently* opposed to the completely unrestricted operator
> of reflection RECORD->SEXP.  Reflection should either be completely
> expurgated -- as I'd prefer --, or, if you intend to include any at all
> in this SRFI, highly controlled by whomever defined the record type.

I think `record->sexp' is actually pretty handy (for example for debugging purposes).
I vehemently suggest to leave it in.

>
> A smaller issue that I brought up on c.l.s seemed to have been left
> unnoticed: record type equivalence seems to be based on name, not on
> identity of the record type.  I believe this could be fixed by defining
> an extra variable when invoking DEFINE-RECORD for a token identifying
> the newly defined record type, and comparing against this, instead of
> symbolic names, in BUILD-MAKER.

That leads me to another issue: What about separate compilation?
The problem is here that I might have two source-files, using the
same record type, compiled separately in two different instances of
the compiler. How can I make sure that

; a.scm

(define-record foo ...)

; b.scm

(define-record foo ...)

Refer to the same type?

cheers,
felix