This is the page for discussing the design of native macros in Clojurescript.

 

Clojurescript already has a non-native macro system in the form of Clojure macros.  However, this system has some downsides, the most prominent being that they require the programmer to define them in a different file and namespace, and that they must be written in what is a slightly different dialect of the language.  Also, if the Clojurescript compiler is ever to be a Clojure-in-Clojure compiler, then it must have its own macro system.

 

Design

Implementation

 

Details