The example in the guide works fine:

#lang racket
 
(provide main)
 
(define (any-double? l)
  (for/or ([i (in-list l)])
    (for/or ([i2 (in-list l)])
      (= i2 (* 2 i)))))
 
(define (main)
  (define p
    (place ch
      (define l (place-channel-get ch))
      (define l-double? (any-double? l))
      (place-channel-put ch l-double?)))
 
  (place-channel-put p (list 1 2 4 8))
  (begin0
   (place-channel-get p))
   (place-wait p))

... which is strange, because 'p' is not a place-channel, and yet the call to 
(place-channel-put p (list 1 2 4 8)) succeeds.  I'm guessing that calling 
place-channel-put with a descriptor pulls out the associated channel... should 
the docs indicate this?

Also, my tiny experiments suggest that place-channel-put is blocking, is that 
right?

John

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_________________________________________________
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Reply via email to