Hi Sorry in advance, if this has been discussed already.
DEFINE-RECORD-TYPE as in the small language does not support inheritance. I assume inheritable records will be part of the larger language. The question is how this will be implemented: - Will DEFINE-RECORD-TYPE be extended in the large language? (If so, how?) - Will there be a new syntax, ie DEFINE-SUPER-RECORD-TYPE that accepts the base record type as a parameter? - Will the record types be compatible (or rather should it be) with each other? Secondly is the name part of the record. The draft says: <name> is bound to a representation of the record type itself, possibly as a syntactic form. I think this needs to be completely unambiguous as it will break portability. For example: (define-record-type lambda make-lambda lambda? body parameters) may or may not work depending on the syntax binding of the record name (certainly does NOT work on R6RS). IMO, for non-inheritable records, the name is never needed except when the macro is expanded, and should not litter the namespace. Depending on the the way inheritable records (along with introspection/reflection of the record types) are defined, the name should be bound to syntax (or something else) (as in R6RS). Another option is to export record type name bindings to it's own namespace, but I have no idea what the implications are for this approach. Cheers leppie -- http://codeplex.com/IronScheme http://xacc.wordpress.com _______________________________________________ Scheme-reports mailing list [email protected] http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports
