(>! port val)
puts a val into port. nil values are not allowed. Must be called inside a (go ...) block. Will park if no buffer space is available. Returns true unless port is already closed.
user=> (let [c (chan 1)]
#_=> (go (>! c 1)
#_=> (println "Got => " (<! c))))
Got => 1
#<ManyToManyChannel clojure.core.async.impl.channels.ManyToManyChannel@4a061708>