Clojure
ClojureScript
開発環境
lisp
入門

Clojure/ClojureScript関連リンク集

Clojure/ClojureScript入門者の方の学習の参考に(もしくは布教のために)、開発環境からコミュニティまでの基本的な情報をまとめてみました。

「参考」として挙げているのは個人的にオススメのブログ記事/スライドなどです。

コメントや編集リクエスト、Twitterなどで良さそうな情報源を教えていただければ適宜/随時更新するかもしれません😅

Clojure公式

開発環境

ビルドツール

エディタプラグイン

Clojure開発全般

Lisp編集支援

Common Lisp, Scheme, Clojure, Emacs LispなどLisp共通で利用可能なLisp (S式)編集支援ツール。

Emacsを使う大多数のLisperは以下のどれかのプラグインを利用していると思われる。

ParEdit

括弧とインデントを半自動で調整する、最も有名なプラグイン。

キーバインドを覚えるまで操作が難しいため初期の学習コストは高めだが、慣れると非常に効率良くS式を編集できる。

Emacs以外の主要なエディタでもプラグインが提供されていることがある。

Parinfer

インデント編集時(Indent mode)には括弧を、括弧編集時(Paren mode)にはインデントを自動調整する、比較的新しいプラグイン。

インデントがズレると対応する括弧の数も変わってしまうため独特の操作感に慣れる必要はあるが、操作自体は非常にシンプルなので学習コストは低い。

Emacs以外の主要なエディタでもプラグインが提供されていることが多い。

Smartparens

ParEditに代わる最近の括弧編集支援プラグイン?

その他のプラグイン

rainbow-delimiters

ネストした括弧を対応するもの同士同じ色で順に色を変えて虹のように表示してくれるプラグイン。

稀に括弧の対応関係を目視する必要がある場合(※普段は上述のLisp編集支援プラグインに任せておけばそれほど困らない)に視覚的なヒントになるため便利。

Emacs以外の主要なエディタでも同種のプラグインが提供されていることがある。

aggressive-indent-mode

Emacsで利用可能な、インデントの自動調整機能を強化するプラグイン。

REPL駆動開発

Clojure/Lispの力を最大限に引き出すために、Clojurian/LisperはエディタとREPLをシームレスに連携させて高速にフィードバックを得ながら開発を進める「REPL駆動開発」(REPL-driven development)という開発スタイルを実践している。

学習案内

書籍

入門者向け

中級者向け

チュートリアル

スタイルガイド

ライブラリ

検索

リポジトリ

標準ライブラリ

準標準ライブラリ

Clojure本体には組み込まれていない標準ライブラリ。

状態/ライフサイクル管理ライブラリ

状態を持つもののライフサイクルを管理し、リロード可能なREPL開発環境(cf. My Clojure Workflow, Reloaded)を実現するためのライブラリ(一種のDI機構ともいえる)。

静的解析ツール

(マイクロ)フレームワーク

正確にはフレームワークというよりもライブラリ(Clojureのエコシステムにおいてフルスタックフレームワークのようなものはほとんど存在しない)。

Webサーバサイド (Clojure)

Webフロントエンド (ClojureScript)

React Native (ClojureScript)

Node.js (ClojureScript)

コミュニティ

Twitter

#clojure, #clojurescript などを付けてtweetすると、仕事や趣味でClojure/ClojureScriptを利用しているClojurianたちが素早く疑問や質問にも答えてくれる(はず)。

勉強会

カンファレンス/イベント

Slack

  • clojurians: 国内コミュニティでは最近ほとんど利用されていなさそう(英語で質問するならこちらかも?)

メーリングリスト

ポッドキャスト

その他の情報源

ファンド

ドキュメント翻訳

利用企業