Scripting with Clojure
Asked Answered
A

2

6

I was trying to do some simple scripting work with Clojure. For example, I would load a json which contains a map from a file, remove a given key, and save it back to the file. With leiningen, seems I would have to create an app, add data.json or whatever into the dependencies, then I could start a lein repl to do the real work. Think about doing the same thing with Python. It should be done with 3 lines of code in Python. Is there an easy way to do it with leiningen?

Alacrity answered 27/5, 2013 at 21:56 Comment(3)
You don't have to use lein, but t helps with setting up application structure. I've used lein for so long, I don't know how to hand compile Clojure and run it, but there are probably examples out there.Styria
The jvm makes using clojure for things like this very inconvenient, because of the startup time (and ram usage if you work around the startup time with a pool of waiting jvms).Pharaoh
You can run a single JVM instance using Nailgun (github.com/martylamb/nailgun), load Clojure to it, and serve requests in a client-server manner (over localhost).Greerson
S
12

You can try out the lein-oneoff plugin which was made for situations like these (I'm the author). It lets you declare dependencies and write code in a single file, avoiding the need to generate a proper leiningen project.

Stupe answered 27/5, 2013 at 22:19 Comment(0)
F
7

You can use lein-exec.

To add a bit more info, I wrote up some notes on standalone scripts with Clojure.

Foliole answered 28/5, 2013 at 5:30 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.