This is the mail archive of the
guile@sourceware.cygnus.com
mailing list for the Guile project.
arbiters and smobs in general
- To: Guile Mailing List <guile at sourceware dot cygnus dot com>
- Subject: arbiters and smobs in general
- From: Dirk Herrmann <dirk at ida dot ing dot tu-bs dot de>
- Date: Wed, 22 Mar 2000 12:10:11 +0100 (MET)
Hi!
Currently, arbiters are implemented as a smob, where the 16th type bit is
used to determine whether the arbiter is in locked state. The cdr of the
smob, however, holds a name for the arbiter, which is never used but for
printing.
I don't know if anybody uses arbiters, but since there is no way to access
the name part of the smob (at least the interface in arbiters.h is very
small, fortunately!) I suggest to get rid of that name part and store the
state of the arbiter in the cdr.
The name parameter to the constructor make-arbiter could either be
completely removed, or accepted and ignored.
Further, the SCM_VALIDATE_SMOB macro assumes that the variable holding the
smob type is prefixed with scm_tc16_. I would suggest to change this such
that either no prefix is assumed or that a more general prefix be used,
which does not already imply an implementation of the smob type space.
Best regards
Dirk Herrmann