Hi all,
I'm a novice to Clojure (but not to programming).
I'm looking for an implementation of an eval function to eval expression
like Mathematica does.
For instance, in Mathematica the expression:
8 + a + 9 (2 + b) + 2
if a and b are not bound, translates to
Plus[10, a, Times[9, Plus[2, b]]]
if a and b become bounded later (let say to 1 and 2) and the expression
is evaluated again, it returns 47.
I would like to be able to run:
(eval-partial '(+ (+ 8 2) a (* 9 (+ 2 b))))
and get, if a and b are unbound:
(fn [x y] (+ 10 x (* 9 (+ 2 y))))
or (better still)
['(a b) (fn [x y] (+ 10 x (* 9 (+ 2 y))))]
Notice that, whenever possible, the eval takes place and parts of the
expression are evaluated (in the example above, the expression (+ 8 2) is
evaluated to 10).
If you know of any implementation or have any ideas on the subject,
please let me know.
Cheers,
Dilvan.
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
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 [email protected].
For more options, visit https://groups.google.com/d/optout.