Clojure is one of the weakest lisps when it comes to macros, but you can still define and use them at run-time, and it has no image-based development.