Hello.

I read about native clojurescript macros in this page(
http://dev.clojure.org/display/design/Macros).

It seems that Chris suggested his idea and 
implementation<https://github.com/chrismgray/clojurescript/tree/defmacro>about 
native macro about 8 months ago.

So I'm curious if the adoption of native macros into Clojurescript is in 
progress by contributors.

If not, is it on the plan at least? Or is it rejected after some discussion?


I have another question. I had a chance to demonstrate the advantage of 
Clojurescript(or Lisp which is translated to Javascript) in front of some 
people in my company.

I presented an example which shows how to escape from callback hell by 
using macros like domonad(or CPS trasnformer):


// You can't escape callback hell in this case although you use libraries 
like Promise, Deferred, Async.js and Q.
var promise = Q.fcall(function (){
    async1();
}
promise.then(function (a) {
    return async2(a).then (function (b) {
return async3(b).then (function(c) {
    return async4(c).then (function(d) {
process(a, b, c, d);
    });
});
    });
});

;; Continuation passing style code can be generated from more readable code 
by macros
(domonad identity
  [a (async1)
   b (async2 a)
   c (async3 b)
   d (async4 c)]
  (process a b c d))


This example did not satisfy my audience. 

They required more significant examples to advocate the use of 
Clojurescript or Lisp dialect transleted to Javascript, so I agreed to find 
more.

Can you suggest any good examples?

Thanks,
Chanwoo




-- 
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

Reply via email to