I just tried this test case (from Anderkent on IRC):

(def pingc (chan))

(def ^:dynamic *text* "OUPS BAD ASYNC")

(binding [*text* "good boy"]
  (go (while true
        (<! pingc)
        (js/alert *text*))))

(defn ping []
  (put! pingc :ping))

(ping)

and I get "OUPS BAD ASYNC".

So, is this bug in cljs core.async?

Cheers, Mathias

Am Donnerstag, 5. September 2013 13:18:39 UTC+2 schrieb Mathias Picker:
>
> Hi all,
>
> I'm fighting with shoreleave-remote-ring running on a non default context 
> (immutant), and me not being able to rebind 
> shoreleave.remotes.http-rpc/*remote-uri* inside a go block.
>
> If you look at https://gist.github.com/mathiasp/6448753, you will find a 
> code snippet in the init function which works as expected:
>
>  (binding [srh/*remote-uri* "/opnenablement/_shoreleave"]
>     ;;; this works as expected, goes to /opnenablement/_shoreleave
>     (srm/rpc (save-config "myConfig") [result]
>              :on-success (js/alert (str "Success: " result))
>              :on-error (js/alert (str "Error: " result))))
>
> but the same code does not work inside the go block.
>
> Binding anything inside the go block gives me an error ("nth not supported 
> on this type: Symbol"), and putting the binding anywhere outside it does 
> not have any effect, the rpc call goes to /_shoreleave, ignoring the 
> binding of *remote-uri* to /opnenablement/_shoreleave. If I look in the 
> compiled javascript, the binding seems to get redefined just fine...???
>
> I'm banging my head on the for two hours allready, maybe you  can give me 
> some help.
>
> I'm new to clojure and core.async, so maybe, hopefully, I'm missing 
> something obvious?
>
> Thanks, Mathias
>

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to