[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Exposing monomorphic predicates/accessors

This page is part of the web mail archives of SRFI 57 from before July 7th, 2015. The new archives for SRFI 57 contain all messages, not just those from before July 7th, 2015.



Andre van Tonder <andre@xxxxxxxxxxxxxxxxx> writes:

> To overcome these objections, I propose the following:
>
>      - Essentially keep the SRFI-9 semantics for define-record-type
>        (with a small modification below).  All types introduced
>        this way are disjoint and there is *no* subtyping.
>      - Farm off the polymorphism to a new form, define-record-class
>        (or perhaps define-record-interface, according to taste).

Are you aware of Scheme48's generic dispatch system? I'm not sure
whether it's exactly what you want, but it gets close:

 -- Macro: define-simple-type typename (supertype ...) predicate

Here, you probably want to use SRFI-9 type names instead of the
predicate.

Then, Scheme48 allows to define methods based on a generic
procedure:

 -- Macro: define-generic proc-name method-table-name
 -- Macro: define-method method-table prototype body

Again, probably not _exactly_ what you want, but close.

I thought I'd make you aware of these. The source for these are in
scheme48/scheme/rts/method.scm

Greetings,
        -- Jorgen

-- 
((email . "forcer@xxxxxxxxx") (www . "http://www.forcix.cx/";)
 (gpg   . "1024D/028AF63C")   (irc . "nick forcer on IRCnet"))