> writeup here: http://www.prodevtips.com/2010/05/30/clojure-with-a-picolisp-=
Concerning your worries about using 'eval' in:
(println (eval (list 'get (qReq 'link) (qReq 'direction) (qReq 'attr))))
Perhaps I don't fully understand the problem, but wouldn't simply
(any (req 'link))
(any (req 'direction))
(any (req 'attr)) ) )
do it, and 'apply' or 'eval' are not necessary at all?