Clojure:
Lese kommandolinjeargumenter
Hvordan:
Bruk *command-line-args*
i Clojure for å snappe opp argumenter. Her er et enkelt eksempel:
;; Hovedfunksjonen som printer alle kommandolinjeargumenter
(defn -main [& args]
(doseq [arg args]
(println arg)))
Når du kjører programmet:
$ clojure mitt_program.clj Hei Verden
Hei
Verden
Du kan også prosessere dem for spesifikk logikk:
(defn -main [& args]
(let [greeting (first args)
name (second args)]
(println (str greeting ", " name "!"))))
Med dette programmet:
$ clojure mitt_program.clj Hei Clojure
Hei, Clojure!
Deep Dive
Clojure, et moderne Lisp-dialekt, behandler command-line-argumenter som en liste. Dette kom fra dens Lisp-arv, hvor listehåndtering er kjernefunksjonaliteten.
Alternativer? Biblioteker som tools.cli
tilbyr robust parsing for mer komplekse behov. Disse kan håndtere flagg, valg og validere argumenter.
Implementasjonsdetaljer? Clojure ligger på JVM (Java Virtual Machine) og setter *command-line-args*
til en sekvens basert på Java sitt String[] args
.
Se Også
- Clojure’s
tools.cli
: https://github.com/clojure/tools.cli - Offisiell Clojure Dokumentasjon om script: https://clojure.org/guides/deps_and_cli
- Inngående guide til Clojure: https://clojure.org/guides/getting_started