What on this page would solve your problem? I just see Generators/Iterators, Array Comprehensions, lexical let and destructuring assignment.
On Wed, Apr 9, 2014 at 9:39 AM, t x <txrev...@gmail.com> wrote: > I believe > https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/1.7 > suffices. > > However, it's currently Firefox only and no Chrome. > > On Tue, Apr 8, 2014 at 8:51 PM, Timothy Baldridge <tbaldri...@gmail.com> > wrote: >> What is going to fulfill a promise? How will you know when a promise is >> fulfilled. In a single threaded VM like JS you're stuck with callbacks. >> Nothing short of full program transformation will give you any better >> experience than core.async. >> >> A good way to look at it is this...if you do this in ClojureScript what >> javascript is this supposed to execute? >> >> (deref (promise)) >> >> The only way this can work is with a code transform like go. Perhaps someday >> a new version of JS will arise that presents a different solution, but until >> then core.async is the best you're going to get. >> >> Timothy >> >> >> On Tue, Apr 8, 2014 at 3:11 PM, t x <txrev...@gmail.com> wrote: >>> >>> I'm guilty of the X-Y problem. >>> >>> >>> I'm trying to, inside of CLJS, write a simple WebOS. >>> >>> >>> So I want to simultaneously be able to run things like: >>> * a notepad app >>> * an IRC app >>> * a webRTC video chat app >>> >>> >>> I have built each of these individual pieces in CLJS, -- but combining >>> them / having them work well together in a clean, non-spaghetti way is >>> harder than I thought. >>> >>> >>> >>> ### The main problems here I have are: >>> >>> * multi-threading (run all three apps at once) and >>> * have is inter-"process" (in this case app) communication >>> >>> >>> I'd also prefer to do this in a way where I write each app as if it's >>> the only app running (i.e. no callback hell.) >>> >>> >>> One possible approach is to make each app a "go-thread", but then I >>> run into the issue of: >>> >>> (go ... (>! ... ) (<! ... )) all forced into the same lexical function. >>> >>> >>> >>> I'm looking for alternatives to this. By using: >>> >>> settimeout(func, 0); I should be able to fire off 3 threads >>> >>> now, if I had something like promises, I can do inter-process >>> communication >>> >>> >>> >>> I'm still working this through -- so if my thinking is sloppy / >>> unclear, please point it out so I can make it clearer. >>> >>> >>> Thanks! >>> >>> On Tue, Apr 8, 2014 at 2:05 PM, James Reeves <ja...@booleanknot.com> >>> wrote: >>> > What exactly are you trying to do? Could you describe the problem you're >>> > trying to solve in more detail? >>> > >>> > - James >>> > >>> > >>> > On 8 April 2014 22:02, t x <txrev...@gmail.com> wrote: >>> >> >>> >> I'd really like to avoid callbacks. :-) >>> >> >>> >> If cljs had promises, it would suffice. :-) >>> >> >>> >> On Tue, Apr 8, 2014 at 2:00 PM, Gary Trakhman <gary.trakh...@gmail.com> >>> >> wrote: >>> >> > I think you might be able to use put! with a callback, or (go (>! >>> >> > ..)) >>> >> > within foo for a transient go process. Not sure if there's any ill >>> >> > effects. >>> >> > >>> >> > >>> >> > On Tue, Apr 8, 2014 at 4:51 PM, t x <txrev...@gmail.com> wrote: >>> >> >> >>> >> >> Hi, >>> >> >> >>> >> >> >>> >> >> * I am aware of core.async. However, I don't like the fact that >>> >> >> (go >>> >> >> ... ) is a macro, thus forcing the >! and <! to appear "in the >>> >> >> body", >>> >> >> and I can't do nested things like: >>> >> >> >>> >> >> (defn foo [chan] >>> >> >> (let [x (<! chan)] ... )) >>> >> >> >>> >> >> (go ... (foo ... )) >>> >> >> >>> >> >> >>> >> >> * For the following, I only need it to work in ClojureScript. I >>> >> >> don't need it to work in Clojure. Furthermore, we can assume browser >>> >> >> = >>> >> >> latest Firefox, or browser = latest Chrome. >>> >> >> >>> >> >> >>> >> >> Now, my question: is there a library which provides "true" >>> >> >> lightweight Clojurescript threads? >>> >> >> >>> >> >> >>> >> >> Thanks! >>> >> >> >>> >> >> -- >>> >> >> 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/d/optout. >>> >> > >>> >> > >>> >> > -- >>> >> > 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/d/optout. >>> >> >>> >> -- >>> >> 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/d/optout. >>> > >>> > >>> > -- >>> > 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/d/optout. >>> >>> -- >>> 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/d/optout. >> >> >> >> >> -- >> "One of the main causes of the fall of the Roman Empire was that-lacking >> zero-they had no way to indicate successful termination of their C >> programs." >> (Robert Firth) >> >> -- >> 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/d/optout. > > -- > 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/d/optout. -- 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/d/optout.