Clojure勉強日記(その1 Clojure(REPL)実行環境
最近Stormのコードを読んでいるのですが、Clojureの基本文法が曖昧なために
結局深いところは読み解けないという状態に陥っている今日この頃です。
というわけで、プログラミングClojureを使って
実際にClojureのコードを書いて、理解を深めることにします・・・
かつ、理解した結果を形として残すために日記として付けます。
なんですが、単に本の写経を行ったところで理解は深まりません。
そのため、本に書かれている用語を自分が理解できる単語に変換して噛み砕いた上で残します。
結果、Clojureで一般的に使用される用語とは多少ずれるかもしれませんが、まぁその辺は気にしない。
後はこれまでJavaとC#がメインだった関係上、どうしてもオブジェクト指向+静的型付という考えがベースとなっているため、
そこから気になる点を試していく形にもなります。
なのでJava使いの人は意外に親近感がわく思考パターンになっているかもしれません。
1.プログラミングClojureの章構成
とりあえず、プログラミングClojureの章構成は下記のようになっています。
- 第1章 Getting Started
- 第2章 Clojureひとめぐり
- 第3章 ClojureからJavaを使う
- 第4章 シーケンスを使ったデータの統合
- 第5章 関数型プログラミング
- 第6章 並行プログラム
- 第7章 マクロ
- 第8章 マルチメソッド
- 第9章 現場のClojure
1章は「Clojureの紹介と環境の整備」のため、実際にコードを書くのは2章からのようです。
なので、初めは1章の環境構築を確認し、
次の日記からきちんとコードを書いて理解を深めていくことにします。
2.Clojureの実行環境構築(REPL)
ではClojureの実行環境を構築します。
はじめにある通り、REPLでの環境を構築します。
leiningen使うと一発だという突っ込みはありますが、あくまで今回は勉強用の環境構築。
なので、出来る限りシンプルに。かつ自分が全て理解できる内容で。
尚、前提としてJava6以降がインストールされており、javaコマンドのパスが通っていることが必要です。
※Javaのインストールについては他にたくさんサイトがあるので、そちらをご覧ください。
REPLである限りOSの問題は発生しないのでとりあえずはWindows前提で、バッチファイルで構築する方針で。
まずは下記のようにディレクトリを構築します。
ファイル自体は「https://github.com/kimutansk/clojurestudy/」を使ってバックアップも。
clojurestudy // ベースディレクトリ ├─lib // ライブラリ配置ディレクトリ └─src // ソースファイル配置ディレクトリ
まずはClojureのページ(http://clojure.org/)からclojure-1.5.1.zipをダウンロードし、展開します。
その中からclojure-1.5.1.jarをlibディレクトリ配下に配置します。
後はclojurestudyディレクトリ配下に「startRepl.bat」を作成し、下記の内容にします。
@echo off set CLOJURE_HOME=%~dp0 set LIB_PATH=%CLOJURE_HOME%\lib set SRC_PATH=%CLOJURE_HOME%\src java ^ -cp ^ %SRC_PATH%;^ %LIB_PATH%\clojure-1.5.1.jar ^ clojure.main pause
内容としては非常に単純ですね。
ホームディレクトリを設定し、clojure-1.5.1.jarとソースをライブラリとして読み込んで、
「clojure.main」を起動するのみです。
作成後、実際にバッチファイルを実行すると下記のようにREPLの実行ウィンドウが開きます。
これでClojure(REPL)実行環境の構築は完了です。
次回以降、2章で解説された内容を自分なりに噛み砕いてまとめていくことにします。