「Clojure」の版間の差分
ナビゲーションに移動
検索に移動
Kusanaginoturugi (トーク | 投稿記録) |
Kusanaginoturugi (トーク | 投稿記録) (序文を差し替え(英語版より)) |
||
(同じ利用者による、間の1版が非表示) | |||
1行目: | 1行目: | ||
[[Category:Lisp 方言]] |
[[Category:Lisp 方言]] |
||
[[en:Clojure]] |
[[en:Clojure]] |
||
+ | [[zh-hans:Clojure]] |
||
− | [http://clojure.org/ Clojure] は Java 仮想マシン (や CLR と JavaScript) で動作する動的プログラミング言語です。汎用言語として設計されており、スクリプト言語のような親しみやすい開発手法とマルチスレッドプログラミングの効率性と強固なインフラストラクチャが組み合わされています。Clojure はコンパイルされる言語です。JVM バイトコードに直接コンパイルされますが、完全に動的です。Clojure によってサポートされている機能は全て実行時にもサポートされています。Clojure では Java フレームワークを簡単に扱うことができ、型ヒントや型推論を使うことができるためリフレクションを使う必要はありません。 |
||
+ | [https://clojure.org/ Clojure] は LISP の方言であり、[[Java]] 仮想マシン、[https://clojure.org/about/clojureclr CLR]、[https://clojurescript.org/ JavaScript] をターゲットとした動的で関数型の汎用プログラミング言語です。 |
||
− | |||
− | Clojure は Lisp 方言です。データとしてのコードの哲学や強力なマクロシステムは Lisp と共通しています。Clojure は有力な関数型プログラミング言語であり、豊富な永続データ構造が特徴です。ミュータブルな状態が必要な場合、Clojure にはソフトウェアトランザクショナルメモリシステムがありリアクティブな Agent システムによってクリーンで正しいマルチスレッド設計をすることができます。 |
||
== インストール == |
== インストール == |
||
10行目: | 9行目: | ||
== REPL == |
== REPL == |
||
REPL を実行するには [[AUR]] の {{Pkg|leiningen}} パッケージから [http://leiningen.org/ leiningen] をインストールしてください。そしてターミナルに以下のコマンドを入力: |
REPL を実行するには [[AUR]] の {{Pkg|leiningen}} パッケージから [http://leiningen.org/ leiningen] をインストールしてください。そしてターミナルに以下のコマンドを入力: |
||
+ | |||
− | $ lein repl |
||
+ | $ lein repl |
||
− | |
||
=== m2 repo location === |
=== m2 repo location === |
||
|
|
||
19行目: | 18行目: | ||
:releases {:checksum :ignore}}} |
:releases {:checksum :ignore}}} |
||
}} |
}} |
||
+ | == 参照 == |
||
− | |
||
+ | * [[Wikipedia:ja:Clojure]] |
||
− | == See also == |
||
− | |
||
− | * [[Wikipedia:Clojure]] |
2021年7月28日 (水) 10:37時点における最新版
Clojure は LISP の方言であり、Java 仮想マシン、CLR、JavaScript をターゲットとした動的で関数型の汎用プログラミング言語です。
インストール
公式リポジトリから clojure パッケージをインストールしてください。開発版は AUR の clojure-gitAUR パッケージをインストールしてください。
REPL
REPL を実行するには AUR の leiningen パッケージから leiningen をインストールしてください。そしてターミナルに以下のコマンドを入力:
$ lein repl
m2 repo location
To change the location of the m2 repo add this to your profiles.clj:
{:user {:local-repo #=(eval (str (System/getenv "XDG_CACHE_HOME") "/m2")) :repositories {"local" {:url #=(eval (str "file://" (System/getenv "XDG_DATA_HOME") "/m2")) :releases {:checksum :ignore}}} }}