Using Wolfram Alpha from Clojure
I have been blown away in the last year by Wolfram Alpha but I haven't done much with the developer's APIs . To make it easier to experiment with Wolfram Alpha, I wrote a simple Clojure wrapper for the Java APIs. You can get a copy at github . In case you don't want to grab the github repo, here is most of the code: (ns wolfram) (def appid (System/getenv "WOLFRAM_APP_ID")) (def engine (com.wolfram.alpha.WAEngine.)) (.setAppID engine appid) (.addFormat engine "plaintext") (defn query [input] (let [query (.createQuery engine)] (.setInput query input) (let [result (.performQuery engine query)] {:pods (for [pod (.getPods result)] {:title (.getTitle pod) :sub-pods (for [sub-pod (.getSubpods pod)] (for [contents (.getContents sub-pod)] (.getText contents)))})}))) Notice that you need to set the API key for your application in an environment variable. You get 2000 free API calls a ...