Clojure - sicp/ikoma-sicp GitHub Wiki

Clojure

  • 近年現れた Lisp 方言の一つ。Lisp-1。 Java で書かれており、 JVM 上で動く。

主要サイト

リンク

  • Clojure - cheatsheet

  • htmlやpdf版などがあるので、自分の好きなものをダウンロードしておくと便利です

  • Clojure - lisps

  • scheme、common lispなど他のlispとの仕様の違いがまとまっています。Lisp: Common Lisp, Scheme, Clojure, Emacs Lisp - Hyperpolyglotにも詳しく載っていました

  • Leiningen

  • Javaで言うMavenに相当。依存ライブラリのダウンロードから、スタンドアローンのjar生成まで一気にやってくれて非常に便利

  • Clojure Box

  • WindowsでのClojureの実行環境(もしかしてみんなMac?)

  • ClojureCLR

  • Incanter

  • "Incanter is a Clojure-based, R-like platform for statistical computing and graphics."

インストール

参考書

以下の3冊は全て電子書籍でも入手可能です(もちろん書籍でも)。

  • プログラミングClojure

  • 日本語で読める。Clojureの概要は掴めるが、詳細が知りたい場合はThe Joy of Clojureのほうがお勧めできる

  • が、SICPをやる分にはこちらで十分だと思われる

  • The Joy of Clojure: Thinking the Clojure Way

  • Clojure in Action

  • 少しアプリケーション寄り。SICPの内容とは離れてしまうが、Clojureを実アプリケーションなどに使いたい人にはお勧め

Tips

Emacs使いなら抑えておくと便利なキーバインド

Emacs全般ではなくClojureに特化したものを書きます。

  • C-u C-x C-e: 評価した結果を挿入

  • C-c C-d C-d: 関数のdocumentが見れる

  • C-c tab: 補完

  • M-.

  • 関数や変数の定義にジャンプ

  • M-,で前の場所に戻れます

  • C-M-f, C-M-b: S式単位で移動

  • C-M-@: 対応するS式をregionで囲む

  • Paredit Preso

  • 括弧の対応関係で困っている方にオススメ

ToDo : vim