[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: propositions, oppositions, and some minor details
campbell@xxxxxxxxxxxxxxxxxxxxxxxxxxx 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