[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: records all have same internal-name
Andre van Tonder wrote:
On Sun, 19 Dec 2004, Per Bothner wrote:
I'm trying to get the srfi-57 implementation through the
Kawa implementation. One issue is the invocation of
srfi-9:define-record-type always creates a primitive
record type named "internal-name".
It looks that way in the code, but if srfi-9:define-record-type binds
internal-name to something using define as in the srfi-9 reference
implementation, and if define is treated as a binding form by
syntax-rules, internal-name will be a new hygienically generated
SFI-9 only defines define-record-type at top-level. The SRFI-9
reference implementation is not "declarative" - it maps a
compile-time-visible define-record-type to calls to a run-time
functions. That does not how I want my implementation to be,
so instead of the referece implmentation I some simple macros
that translate define-record-type to the Kawa special form
I am also getting a *lot* of srfi-9:define-record-types
created - 389 classes generated (at run-time rather than
compile-time) for the trivial 'point' example.
I'm hoping these are due to bugs in Kawa's macro
This does sound like a bug. Only one should be created.
I kind of assumed that, and hope that fixing this bug may improve
the performance situation as well.