Clojure

サポートライブラリ

Clojureは、GitHubのClojureオーガニゼーションClojureサポートと呼ばれる多数の追加ライブラリをホストする上位レベルのプロジェクトです。

これらのライブラリは、すべてのClojure自身と同じ貢献モデル(コントリビューター契約、ライセンス、著作権)と、Clojureコアチームによって維持される共有インフラストラクチャを使用します。

  • ソース制御 - GitHubのGitライブラリ

  • イシュー - JIRA

  • 開発モデル - JIRAのパッチ、PRなし

  • 継続的インテグレーション - 各プロジェクトのGitHubアクション

  • ドキュメント生成とホスティング - AutodocとGitHubのページ

  • ビルド - groupIdがorg.clojureのMaven Centralへのデプロイメントを含むMaven

各プロジェクトには、ライブラリの方向性を決定し、パッチをトリアージする1人以上のオーナー(通常はコミュニティメンバー)がいます。プロジェクトのオーナーは完全なコミット権と、リリース用のビルドボックスでプロジェクトに対する認証済みアクセス権を持ちます。

サポートライブラリは、他のオープンソースClojureライブラリと同様にオープンソースライブラリです。開発活動や品質は大きく異なり、エコシステム全体でその機能に最適な選択肢とはならない可能性があります。依存関係として使用しようと考えているオープンソースライブラリと同様に、使用前に評価する必要があります。

ライブラリの積極的な開発が停止していることがわかり、オーナーとして引き継ぎたい場合は、clojure@cognitect.comまでご連絡ください。ライブラリの適切な管理者は、通常はライブラリを積極的に使用し、機能の目標や代替案に精通しているユーザーになります。

サポートライブラリ

ステータスの凡例

  • アクティブ - 定期的な開発中

  • 安定 - 機能はするが、開発は不定期

  • 非アクティブ - 開発は終了し、今後開発されません

ライブラリ 説明 オーナー ステータス

algo.generic

一般的な関数の汎用的バージョン

Konrad Hinsen

安定

algo.monads

モナドマクロおよび定義

Konrad Hinsen

安定

core.async

非同期プログラミングおよび通信の機能

Rich Hickey

アクティブ

core.cache

さまざまなキャッシュ戦略を実装しているキャッシュライブラリ

Sean Corfield

アクティブ

core.contracts

Clojureにおけるコントラクトプログラミング

Fogus

非アクティブ

core.incubator

コアへの組み込みが提案された関数

非アクティブ

core.logic

miniKanrenに基づく論理プログラミングライブラリ

David Nolen

安定

core.match

パターンマッチと述語ディスパッチ

David Nolen

安定

core.memoize

操作可能でプラグ可能なメモ化フレームワーク

Sean Corfield

アクティブ

core.rrb-vector

RRB-Treeベースのベクター

Michał Marczyk、Andy Fingerhut

アクティブ

core.typed

漸進的型付け

Ambrose Bonnaire-Sargent

アクティブ

core.unify

ユニフィケーションライブラリ

Fogus

安定

data.avl

AVLツリー

Michał Marczyk

安定

data.codec

ネイティブコーデック実装

Alexander Taggart

安定

data.csv

CSVファイルの読み取りおよび書き込み

Jonas Enlund

安定

data.finger-tree

フィンガーツリー

Chouser

安定

data.fressian

拡張可能なバイナリーデータ表記

Stuart Halloway

安定

data.generators

ランダムデータジェネレーター

Stuart Halloway

非アクティブ

data.int-map

整数キー用に最適化されたマップとセット

Alex Miller

安定

data.json

JSONエンコーディング/デコーディング

Alessandra Sierra

安定

data.priority-map

優先度マップ

Mark Engelberg

安定

data.xml

遅延XMLパーシング

Ryan Senior、Herwig Hochleitner

安定

data.zip

ジッパーの操作

安定

java.classpath

クラスパスユーティリティ

Alessandra Sierra

安定

java.data

Java Beansの処理

Sean Corfield

アクティブ

java.jdbc

JDBCベースのSQLインターフェイス

Sean Corfield

安定

java.jmx

JMXインターフェイス

Nick Bailey

安定

math.combinatorics

一般的な組み合わせ関数用の遅延シーケンス

Mark Engelberg

安定

math.numeric-tower

数値関数と数値タワー

Mark Engelberg

安定

test.check

プロパティテストフレームワーク

Alex Miller

アクティブ

test.generative

テストデータ生成および実行ハーネス

Stuart Halloway

非アクティブ

tools.analyzer

Clojureコード用アナライザーフレームワーク

Nicola Mometto

アクティブ

tools.analyzer.jvm

tools.analyzer用のJVM固有のパス

Nicola Mometto

アクティブ

tools.build

Clojureビルドプログラムを作成するための関数

Alex Miller

アクティブ

tools.cli

コマンドライン引数プロセッサ

Sean Corfield

アクティブ

tools.deps

データおよびクラスパスの構築としてのdeps

Alex Miller

アクティブ

tools.deps.cli

Clojure CLIで使用するためのdeps関数

Alex Miller

アクティブ

tools.deps.graph

deps.ednプロジェクト用に依存グラフを作成する

Alex Miller

アクティブ

tools.gitlibs

gitベースのプロジェクトを取得、キャッシュ、および使用するためのツール

Alex Miller

アクティブ

tools.emitter.jvm

JVMバイトコードジェネレーター

Nicola Mometto

アクティブ

tools.logging

ロギングツール

Alexander Taggart

アクティブ

tools.macro

マクロライター用のツール

Konrad Hinsen

安定

tools.namespace

名前空間宣言の処理のためのツール

Alessandra Sierra

安定

tools.nrepl

ネットワークREPL

非アクティブ

tools.reader

Clojureリーダー

Nicola Mometto

アクティブ

tools.tools

CLIツールを管理するためのClojure CLIツール

Alex Miller

アクティブ

tools.trace

実行トレーシング

Luc Prefontaine

安定

コアライブラリ

さらに、次のライブラリはコアチームによって直接管理されるClojure自身の依存関係です。これらのライブラリは、Contribライブラリと同じ共有インフラストラクチャを使用するため、その点ではほとんど同じです。これらのライブラリの開発は、多くの場合、コア言語自体の開発に関連しています。

そして最後に、Clojure GitHub 組織内にいくつかリポジトリはライブラリではありません

履歴

Clojure 1.3 より前、Clojure には clojure-contrib という 1 つの「電池付き」ライブラリがあり、それはコミュニティがコントリビューションした多くの独立したヘルパー名前空間で構成されていました。Clojure 1.3 の期間、このライブラリは現在の独立したライブラリに分割され、独立した所有者ができました。名前空間の一部は実験的と見られ、どの公開ライブラリにも宣伝されませんでした。Alessandra Sierra は投稿でさらに詳しくこの出来事を説明しています。 投稿.

当時、一部のcontribライブラリを最終的にはClojureのコアライブラリ自体に昇格できるという考えがありました。時が経つにつれて、Clojureのコアライブラリを小さく保ち、これらの独立したライブラリを独立したままにして、独自のペースで進化させることが望まれるようになりました。

また、contrib の分割のレガシー履歴については Contrib History もご覧ください。

Contrib How-To

contrib への参加またはコントリビューションに関する古いコンテンツは、Contrib How-To で見つけることができます。