```clojure
(ns clojush.ns) ;; provides a macro that uses all clojush namespaces except for examples/* and experimental/*
  
(defmacro use-clojush
  []
  '(do 
     (use '(clojush core evaluate globals individual interpreter pushstate random simplification util))
     (use '(clojush.instructions boolean code common numbers random-instructions return string tag zip))
     (use '(clojush.pushgp breed genetic-operators parent-selection pushgp report))))
```

Exclude -main when doing use-clojush.
user
```clojure
(ns clojush.ns) ;; provides a macro that uses all clojush namespaces except for examples/* and experimental/*
  
(defmacro use-clojush
  []
  '(do
     (use '(clojush.core :exclude (-main)))
     (use '(clojush evaluate globals individual interpreter pushstate random simplification util))
     (use '(clojush.instructions boolean code common numbers random-instructions return string tag zip))
     (use '(clojush.pushgp breed genetic-operators parent-selection pushgp report))))
```
assistant