Clojure その2
今回は実際に触るところまで
環境は mac です。
調べた限り leiningen(・・・レインいんげん?)
というものを利用すると良いらしい
とのことなので
brew install leningen
と打ってインストール
lein new hello
と打つと以下の様な感じでプロジェクトが作成されました。
Retrieving org/clojure/tools.nrepl/0.2.3/tools.nrepl-0.2.3.pom from central Retrieving org/clojure/pom.contrib/0.1.2/pom.contrib-0.1.2.pom from central Retrieving org/sonatype/oss/oss-parent/7/oss-parent-7.pom from central Retrieving clojure-complete/clojure-complete/0.2.3/clojure-complete-0.2.3.pom from clojars Retrieving org/clojure/tools.nrepl/0.2.3/tools.nrepl-0.2.3.jar from central Retrieving clojure-complete/clojure-complete/0.2.3/clojure-complete-0.2.3.jar from clojars Generating a project called hello based on the 'default' template. To see other templates (app, lein plugin, etc), try `lein help new`.
某氏はLight Tableが良いとおっしゃっていたので、そちらも利用してみる
http://www.lighttable.com/http://www.lighttable.com/
からLight Tableをダウンロード
さっそく先ほど作成したプロジェクトを見てみると
こんな感じですね。
どうやって実行すんの?って調べたら
lein run
で動かすようです。
$ lein run No :main namespace specified in project.clj.
えっ?
んーどうやら project.clj に main の記述を加えなくてはならないそうな
再度実行
$ lein run Exception in thread "main" java.lang.Exception: Cannot find anything to run for: hello.core at user$eval5.invoke(form-init1878445778805308006.clj:1) at clojure.lang.Compiler.eval(Compiler.java:6619) at clojure.lang.Compiler.eval(Compiler.java:6609) at clojure.lang.Compiler.load(Compiler.java:7064) at clojure.lang.Compiler.loadFile(Compiler.java:7020) at clojure.main$load_script.invoke(main.clj:294) at clojure.main$init_opt.invoke(main.clj:299) at clojure.main$initialize.invoke(main.clj:327) at clojure.main$null_opt.invoke(main.clj:362) at clojure.main$main.doInvoke(main.clj:440) at clojure.lang.RestFn.invoke(RestFn.java:421) at clojure.lang.Var.invoke(Var.java:419) at clojure.lang.AFn.applyToHelper(AFn.java:163) at clojure.lang.Var.applyTo(Var.java:532) at clojure.main.main(main.java:37)
えっ?
・・・あっ。あぁ hello.core に main 書かれてないから?
foo を main に書き換えて
(ns hello.core) (defn main "I don't do a whole lot." [x] (println x "Hello, World!"))
そいやっ!
$ lein run Exception in thread "main" java.lang.Exception: Cannot find anything to run for: hello.core at user$eval5.invoke(form-init8244820555555158320.clj:1) at clojure.lang.Compiler.eval(Compiler.java:6619) at clojure.lang.Compiler.eval(Compiler.java:6609) at clojure.lang.Compiler.load(Compiler.java:7064) at clojure.lang.Compiler.loadFile(Compiler.java:7020) at clojure.main$load_script.invoke(main.clj:294) at clojure.main$init_opt.invoke(main.clj:299) at clojure.main$initialize.invoke(main.clj:327) at clojure.main$null_opt.invoke(main.clj:362) at clojure.main$main.doInvoke(main.clj:440) at clojure.lang.RestFn.invoke(RestFn.java:421) at clojure.lang.Var.invoke(Var.java:419) at clojure.lang.AFn.applyToHelper(AFn.java:163) at clojure.lang.Var.applyTo(Var.java:532) at clojure.main.main(main.java:37)
動かないんですけどおおおおおおおおおおお!!!
おいしいClojure入門 (Software Design plus)
- 作者: ニコラ・モドリック,安部重成
- 出版社/メーカー: 技術評論社
- 発売日: 2013/09/26
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る