On Feb 4, 12:01 am, Mark Volkmann <r.mark.volkm...@gmail.com> wrote:
> Are the following statements true? They aren't discussed 
> athttp://clojure.org/macros, but I think they are true.
>
> Macros cannot call other macros during their evaluation, but they can
> expand to code that calls macros.

I don't know, but I'll bravely guess that this is false, simply
because I don't see any reason for it to be true.

After all, many things we take for granted are in fact macros (e.g.
"for").  I bet you can use "for" during the execution of a macro.

> Macros cannot use syntactic sugar such as '(items) to create a list
> and instead must use non-sugared forms like (list items).

This is false.  Macros use ', `, ~ and ~@ all the time.

This leads me to a question I've always had.  Is there a variant of ~@
that can be used outside of macros?

e.g.

   (+ @(1 2 3))       ; -> 6

(I realise you can use apply here, but that's not always the case.)

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