Veniceは、Clojureに触発されたサンドボックス化されたLisp方言であり、優れたJava相互運用性を備えています。
Veniceは、安全でサンドボックス化された汎用言語へのニーズから生まれたLisp方言です。Lispと同じく、コードをデータとして扱う哲学と強力なマクロシステムを共有しています。
Veniceは主に、不変で永続的なデータ構造に焦点を当てた関数型プログラミング言語です。
Veniceは、マクロ、末尾再帰、動的コードロード、マルチメソッド、プロトコルなど数多くの機能をサポートしています。優れたJava相互運用性と、あらゆる不必要なJVMおよびVeniceの相互作用を防ぐことができる設定可能なサンドボックスを備えています。Veniceは当初からサンドボックスを第一級の市民として設計されてきました。
Veniceには、900以上のコア関数からなる包括的なライブラリが含まれています。不変の永続データ構造は、Clojureスタイルのatom、future、promise、agentとともに、並行コードを書くプロセスを大幅に簡素化します。
Veniceは、Javaおよびあらゆるサードパーティライブラリとシームレスかつ透過的に統合され、膨大な数のライブラリ、フレームワーク、ツールへのアクセスを提供します。
Veniceの強みは、複雑なスクリプト作成や自動化タスクを簡単にすることです。BashやPowerShellスクリプトに制限を感じたことはありませんか?Veniceを使えば、簡潔でエレガントなプラットフォーム非依存のスクリプトを簡単に書くことができます。
Veniceは(JVM以外の)ランタイムライブラリに依存しません。スタンドアロンのJARとして簡単にクラスパスに追加できます。
VeniceにはJava 8以降が必要です。
対話型REPL環境でVeniceを試してみませんか? Gitpodで試す
Mavenセントラルリポジトリから取得できます:
<dependency>
<groupId>com.github.jlangch</groupId>
<artifactId>venice</artifactId>
<version>1.12.52</version>
</dependency>
コマンドシェルから、プロジェクトのホームディレクトリで./gradlew shadowJarを実行すると、Venice JARをビルドするGradleタスクが呼び出されます。
MacOS / Linuxの場合
Veniceのgitリポジトリをクローンした後、gradlewに実行権限を与えます...
venice% chmod +x ./gradlew
...そしてプロジェクトをビルドします
venice% ./gradlew clean shadowJar
Windowsの場合
C:\Users\foo\venice> gradlew.bat clean shadowJar
GitHub経由のプルリクエストを受け付けています。PRを適用しやすくするためのガイドラインがいくつかあります:
このコードはApache License v2の下でライセンスされています。