Hi,

On 13 Okt., 07:55, Sunil S Nandihalli <sunil.nandiha...@gmail.com>
wrote:

> I know if is a function and will not be evaluated before the macro expands..
> may be there is a way to wrap it in a macro (since f is already defined
> which I would like to use) and have the macro Variables apply on the result
> of evaluation of f

This is not possible. Macros cannot use information which is not
available at compile time. You should investigate whether it is
possible to split the Variables macro in two parts. A function doing
the work and a convenience macro.

(defn Variables*
  [form]
  ...)

(defmacro Variables
  [form]
  `(Variables* (quote ~form)))

Then you can call (Variables (+ x (* 2 y))) without quoting and
(Variables* (f)) at runtime with your function result.

Sincerely
Meikel

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