ClojureScript チュートリアルメモ
ClojureScriptを触ってみたのでメモ。
Quick Start
私は Windows7 環境で MinGW(Git Bash) 利用なので、下記手順そのままで Quick Start。
導入
git clone git://github.com/clojure/clojurescript.git cd clojurescript ./script/bootstrap
Clojure REPL の起動
export CLOJURESCRIPT_HOME=$PWD ./script/repl
ClojureScript REPL (Rhino) の起動
Clojure REPL から ClojureScript REPL (Rhino) を起動する場合
(require '[cljs.repl :as repl]) (require '[cljs.repl.rhino :as rhino]) (def env (rhino/repl-env)) (repl/repl env)
上記のClojureコードを実行するスクリプトで起動する場合
./script/repljs
ClojureScript を JavaScript へコンパイル
./bin/cljsc ソース オプション
あるいは、ClojureScript REPL (Rhino)上で以下
(require '[cljs.closure :as cljsc]) (cljsc/build ソース オプション)
Tutorial
下記に沿ってやってみた。
Tutorial の基礎となるコードを取得して動かしてみる
コードを取得して、サーバ起動
git clone https://github.com/magomimmo/modern-cljs.git cd modern-cljs lein ring server-headless
別窓を立ち上げて、ClojureScriptのコンパイル、ClojureScript REPL (ブラウザ内) 接続
lein cljsbuild once lein trampoline cljsbuild repl-listen
ブラウザで以下を開く
Tutorial 1 - The basic
1. ソースコードの作成
- modern-cljs/src/cljs/modern_cljs/modern.cljs
(ns modern-cljs.modern) (.write js/document "Hello, ClojureScript!")
- modern-cljs/resources/public/simple.html
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>Simple CLJS</title> <!--[if lt IE 9]> <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> </head> <body> <!-- pointing to cljsbuild generated js file --> <script src="js/modern.js"></script> </body> </html>
2. コンパイル
lein cljsbuild once
(補足)以下のコマンドで、ファイルが更新されるたびに自動コンパイル可能。
lein cljsbuild auto
3. 動作確認
simple.htmlをブラウザで開き、「Hello, ClojureScript!」と表示されることを確認する。