On Mon, Jul 1, 2013 at 7:46 AM, Brandon Bloom <brandon.d.bl...@gmail.com>wrote:
> Two bits of core.async feedback: > > 1) The (let [c chan] (go ...) c) pattern is *extremely-common*. Might be > nice to have something like (go-as c ...) that expands to that pattern. > > 2) It's somewhat annoying to always have to consider boolean false all the > time. Since nil signifies a closed channel, if, when, if-let, and when-let > are extremely convenient. Unfortunately, they are subtly bugged! You need > nil? checks everywhere, cluttering up relatively nice code. > It'd be really nice to have a "closed" token that one could construct a channel with so the token could be at the app level... although I guess this wouldn't deal with the if-let/when-let issue. > > > On Sun, Jun 30, 2013 at 5:27 PM, Brandon Bloom > <brandon.d.bl...@gmail.com>wrote: > >> Hi all, >> >> Today, primarily for my own edification, I've been implementing as many >> Microsoft Reactive Extensions operators as I can using core.async. The >> results have been *spectacular*. core.async is an absolute pleasure to work >> with. I'm so happy with how they have turned out, that I really want to >> share. >> >> You can find my work-in-progress here: >> https://github.com/brandonbloom/asyncx >> >> The primary file of interest is: >> https://github.com/brandonbloom/asyncx/blob/master/src/asyncx/core.clj >> >> At the time of this message, I've implemented the bulk of the relevant >> operators described here: >> http://msdn.microsoft.com/en-us/library/hh242961(v=vs.103).aspx >> >> All of my implementations utilize parking operations, so this library >> should be fully portable to ClojureScript. >> >> My notes describe any difference from Rx, notable omissions, and known >> issues: >> https://github.com/brandonbloom/asyncx/blob/master/notes >> I'll probably work more on this tonight and will update my notes as I go. >> >> Rich & team: I understand that you guys will probably take a run at >> implementing this sort of library in the not too distant future. Please let >> me know if and how I can contribute to that effort. >> >> Cheers, >> Brandon >> >> -- >> -- >> 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 a topic in the >> Google Groups "Clojure" group. >> To unsubscribe from this topic, visit >> https://groups.google.com/d/topic/clojure/L4nEVho555k/unsubscribe. >> To unsubscribe from this group and all its topics, send an email to >> clojure+unsubscr...@googlegroups.com. >> >> For more options, visit https://groups.google.com/groups/opt_out. >> >> >> > > -- > -- > 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. > > > -- -- 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.