This is the mail archive of the guile@cygnus.com mailing list for the Guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: records


Michael Livshin <mike@olan.com> writes:

> ttn writes:
> now, I don't think you should be afraid about the future of the above
> procedures.  even though SRFI-9 describes only the declarative syntax
> for record type definitions, I'm sure that any real-world
> implementation would provide the procedural interface as well.

I would not make that assumption.  Note the procedural interface was
proposed well in time for R5RS, but *rejected*, because some people
did not like it, or it did not map well into their model (mental or
implementation) of how Scheme should work.

Consider an implementation of Scheme that works by translating into C++.
A declarative record syntax is easy to implement by translating Scheme
record types into C++ classes (at least if define-record-type is
restricted to top-level).  The procedural syntax is much more
difficult.  (However, if you provide eval, you can presumably implement
the procedural interface using the declarative interface + eval.  But
that is conceptually *changing* the program, rather than running it.)
-- 
	--Per Bothner
bothner@pacbell.net  per@bothner.com   http://home.pacbell.net/bothner/

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]