I have some clojure functions that I would like pre-loaded when I start the clojure REPL. The functions aren't much use unless you are using them within the context of a REPL.
If it helps, I generally use leiningen to start a clojure REPL for me.
How can I tell clojure (or leiningen, if it's not available through flat clojure) to pre-load a clojure file containing these definitions for me?
To start a REPL session in Eclipse, click the Menu option, go to Run As → Clojure Application. This will start a new REPL session in a separate window along with the console output.
A Clojure REPL (standing for Read-Eval-Print Loop) is a programming environment which enables the programmer to interact with a running Clojure program and modify it, by evaluating one code expression at a time.
You can exit the REPL by typing Ctrl+D (pressing the Ctrl and D keys at the same time).
There are several ways to do this described in the leiningen sample project one of my favorite methods is so put the code you want in the default repl namespace into
/path/to/project/dev/user.clj:
(ns user)
(def foo 42)
and add a line like this into the project.clj file:
(defproject hello "0.1.0-SNAPSHOT"
:description "FIXME: write description"
:url "http://example.com/FIXME"
:license {:name "Eclipse Public License"
:url "http://www.eclipse.org/legal/epl-v10.html"}
:dependencies [[org.clojure/clojure "1.5.1"]]
:source-paths ["dev"])
This makes it clear that this is for dev while still getting it loaded into the default namespace.
When you run nrepl-jack-in
form emacs or "lein repl" form the shell, you should be greeted with a user>
namespace with your code loaded:
; nREPL 0.1.6
user> foo
42
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With