インストールについて下記参照
>> http://y-takagi.blogspot.com/2011/09/clojure.html
1. lein newコマンドでプロジェクトのひな形を作成
$ lein new helloworld
2. プロジェクトの設定ファイル(project.clj)を以下のように記述する
:descriptionはプロジェクトの概要
:dependenciesはライブラリの依存関係を解決。ライブラリを取得してきてくれる。
:dev-dependenciesはプラグインの依存関係を解決。
:handlerにはエントリポイントとなる関数名を指定
ring : pythonのwsgiみたいなもの https://github.com/mmcgrana/ring
compojure : webフレームワーク https://github.com/weavejester/compojure
ring + compojureはclojureでwebアプリ開発をする際の定番の組み合わせらしいです。
3. 依存ライブラリのダウンロード
$ lein deps
4. webアプリケーションの作成(src/helloworld/core.clj)
5. ローカル環境で試す
$ lein ring server
を実行するとデフォルトで3000番ポートでJettyが起動します。
http://localhost:3000にアクセスすると「HelloWorld」が表示されるはず。
ポートを指定したい場合は「lein ring server ポート番号」
あとで思ったんだけど、実はdependenciesにclojureとclojure-contribを入れておけば
そもそもインストールする必要ないのでは!?
つまり最低Liningenが入ってればrepl起動できるし、アプリ開発も出来ると。
2011年9月8日木曜日
2011年9月7日水曜日
ELPA (Emacs Lisp Package Archive)
Emacsにパッケージマネージャーがあったなんて!
インストール方法は公式サイトにのってます。
ELPA
=> http://tromey.com/elpa/
あとはemacs上で
M-x package-list-packages [ret]
してインストールしたいパーケージを"i"で選択する。
最後に"x"を押してインストール実行。
インストール方法は公式サイトにのってます。
ELPA
=> http://tromey.com/elpa/
あとはemacs上で
M-x package-list-packages [ret]
してインストールしたいパーケージを"i"で選択する。
最後に"x"を押してインストール実行。
Clojureのインストール
プログラミング言語Clojureのインストールをしたのでメモ。
といっても全部homebrewで入るので特に問題なし。
環境
$ brew install clojure
$ brew install clojure-contrib
$ brew install leiningen
clojure-contribはclojureのライブラリでleiningenはビルドツールです。
replの起動は
$ clj
でも出来るのですが、ヒストリーやemacsキーバインドを使うと
^Pや^N、^Hと出てしまうので(こういう現象なんていうんだろう?)
$ lein repl
で起動するといいと思います。
またスクリプトを実行する場合は、
$ clj /path/to/script.clj
で実行できます。
script.clj
-----------------------------------
(println "hello, world")
$ clj script.clj
hello, world
といっても全部homebrewで入るので特に問題なし。
環境
- MacOSX 10.7.1(Lion)
$ brew install clojure
$ brew install clojure-contrib
$ brew install leiningen
clojure-contribはclojureのライブラリでleiningenはビルドツールです。
replの起動は
$ clj
でも出来るのですが、ヒストリーやemacsキーバインドを使うと
^Pや^N、^Hと出てしまうので(こういう現象なんていうんだろう?)
$ lein repl
で起動するといいと思います。
またスクリプトを実行する場合は、
$ clj /path/to/script.clj
で実行できます。
script.clj
-----------------------------------
(println "hello, world")
$ clj script.clj
hello, world
登録:
投稿 (Atom)