What’s the “big idea” behind compojure routes?

Compojure explained (to some degree) NB. I am working with Compojure 0.4.1 (here’s the 0.4.1 release commit on GitHub). Why? At the very top of compojure/core.clj, there’s this helpful summary of Compojure’s purpose: A concise syntax for generating Ring handlers. On a superficial level, that’s all there is to the “why” question. To go a … Read more

What is Clojure useful for? [closed]

I’ve used Clojure for: Scraping web pages Shell scripts Building websites Playing around with OpenGL Writing async webservers HTML Templating Running parallel tasks (fetching multiple URLs and process in parallel) Playing around with real time audio Simulations That’s the practical / fun stuff. But Clojure has plenty of theoretical depth as well. Ideas that will … Read more

How to bundle a native library and a JNI library inside a JAR?

It is possible to create a single JAR file with all dependencies including the native JNI libraries for one or more platforms. The basic mechanism is to use System.load(File) to load the library instead of the typical System.loadLibrary(String) which searches the java.library.path system property. This method makes installation much simpler as the user does not … Read more

leiningen – how to add dependencies for local jars?

Just use :resource-paths in your project.clj file. I use it, e.g. to connect to Siebel servers. Just created a resources directory in my project directory and copied the jar files in there. But of course you could use a more generic directory: (defproject test-project “0.1.0-SNAPSHOT” :description “Blah blah blah” … :resource-paths [“resources/Siebel.jar” “resources/SiebelJI_enu.jar”]) Then from … Read more