Comment made by: mfikes
An alternative to consider: Imitate the existing facility in ClojureScript, which has a * }:
`
cljs.user=> (doc main-cli-fn)
cljs.core/main-cli-fn
When compiled for a command-line target, whatever function
main-cli-fn is set to will be called with the command-line
argv as arguments
`
As an example use, with {{foo.cljs}}:
`
(defn greet [name]
(println (str "Hello " name "!")))
(set! main-cli-fn greet)
`
Then
$ planck foo.cljs Friend
Hello Friend!
One place where this can really be advantageous over {{-m}} or even a {{-f}} approach is if you make a shebang script and you want to have command-line arguments passed, it would be nice to start that script simply with
`
!/usr/bin/env clojure
`
and then let the } mechanism ensure } is routed to that function, without having to put {{-f some-qualified/function}} in the shebang line where on Linux not possible to specify interpreter arguments in the shebang line.