
JVM용 샌드박스 처리된 Lisp 방언으로, 불변 데이터 구조, 매크로, 900개 이상의 핵심 함수를 제공합니다. 안전한 스크립팅, 자동화, Java 애플리케이션 내장에 이상적입니다.
Venice는 Clojure에서 영감을 받은 샌드박스형 Lisp 방언으로, Java와의 뛰어난 상호 운용성을 제공합니다.
Venice는 안전하고 샌드박스 처리된 범용 언어에 대한 필요성에서 탄생한 Lisp 방언입니다. Lisp와 코드를 데이터로 취급하는 철학과 강력한 매크로 시스템을 공유합니다.
Venice는 기본적으로 불변(immutable)하고 영속적인(persistent) 데이터 구조에 초점을 맞춘 함수형 프로그래밍 언어입니다.
Venice는 매크로, 꼬리 재귀(tail-recursion), 동적 코드 로딩, 멀티메서드(multimethods), 프로토콜(protocols) 등을 지원합니다. 또한 뛰어난 Java 상호 운용성과 원치 않는 모든 JVM 및 Venice 상호 작용을 방지할 수 있는 설정 가능한 샌드박스를 제공합니다. Venice는 처음부터 샌드박스를 염두에 두고 설계되어, 샌드박스가 일급 시민(first-class citizen)으로 자리 잡았습니다.
Venice는 900개가 넘는 핵심 함수로 구성된 포괄적인 라이브러리를 포함하고 있습니다. Clojure 스타일의 atom, future, promise, agent와 함께 불변 영속적 데이터 구조는 동시성 코드를 작성하는 과정을 크게 단순화합니다.
Venice는 Java 및 모든 타사 라이브러리와 매끄럽고 투명하게 통합되어 방대한 라이브러리, 프레임워크 및 도구에 접근할 수 있게 해줍니다.
Venice의 강점은 복잡한 스크립팅 및 자동화 작업을 쉽게 만드는 데 있습니다. Bash나 PowerShell 스크립트에 제약을 느껴 본 적이 있나요? Venice를 사용하면 플랫폼에 독립적이고 간결하며 우아한 스크립트를 손쉽게 작성할 수 있습니다.
Venice는 (JVM 외에는) 어떤 런타임 라이브러리에도 의존하지 않습니다. 독립형 JAR로 간단히 클래스패스에 추가할 수 있습니다.
Venice는 Java 8 이상이 필요합니다.
대화형 REPL 환경에서 Venice를 사용해보고 싶으신가요? Gitpod에서 테스트해보기