Command Line Time!
Download a Clojurescript REPL
A Basic ClojureScript File
(ns main) (defn derp [] (println "derping...") "derp")
Requiring Your File
(require main) ;; => Arguments to require must be quoted.
(require 'main) ;; => nil
(main/derp) ;; => derping... ;; "derp"
Require Files In Other Folders
(ns some-folder.some-file) (defn something [] (println "hey") 42)
(require 'some-folder.some-file) ;; => nil
(something) ;; => WARNING: Use of undeclared Var cljs.user/something at line 1 ;; Cannot read property 'call' of undefined
(some-folder.some-file/something) ;; => hey ;; 42
(require '[some-folder.some-file :as file]) ;; => nil
(file/something) ;; => hey ;; 42
Files Requiring Files
(ns other-folder.other-file) (defn sayHey [] (println "Hey there 'errbody!"))
(ns some-folder.nested-folder.nested-folder-file) (defn sayHey [] (println "Hey, I'm the nested file."))
(ns some-folder.some-file (:require [other-folder.other-file :as other] [some-folder.nested-folder.nested-folder-file :as nested])) (defn sayHeyOther [] (other/sayHey)) (defn sayHeyNested [] (nested/sayHey))
(in-ns 'some-folder.some-file) ;; => nil
(sayHeyOther) ;; => Hey there 'errbody!
(sayHeyNested) ;; => Hey, I'm the nested file.