Thanks very much for your suggestion.  I now have the following (but
haven't tested yet):

;; set of links
(define-class <linkset> (<sinew-object>)
  ;;  hash key is on other endpoint
  (link-hash #:accessor link-hash
             #:init-thunk (lambda () (make-hash-table 61)))
  (my-node #:accessor my-node #:init-keyword my-node))

(define-class <node> (<sinew-object>)
  [other stuff]

  ;; links is a set of links, findable by the other endpoint
  (links-ip #:accessor links-ip)
  (links-udaan #:accessor links-udaan))

;; override initialize in order to pass this to linkset constructor
(define-method (initialize (this <node>) initargs)
   (next-method)
   (slot-set this 'links-ip (make <linkset> #:my-node this))
   (slot-set this 'links-udaan (make <linkset> #:my-node this))

-- 
        Greg Troxel <[EMAIL PROTECTED]>


_______________________________________________
Guile-user mailing list
Guile-user@gnu.org
http://lists.gnu.org/mailman/listinfo/guile-user

Reply via email to