
Venice es un dialecto de Lisp aislado (sandbox) inspirado en Clojure, con una excelente interoperabilidad con Java.
Venice es un dialecto de Lisp nacido de la necesidad de disponer de un lenguaje de propósito general seguro y aislado. Comparte con Lisp la filosofía de código-como-datos y un potente sistema de macros.
Venice es principalmente un lenguaje de programación funcional centrado en estructuras de datos inmutables y persistentes.
Venice soporta macros, recursión de cola, carga dinámica de código, multimétodos, protocolos y mucho más. Cuenta con una excelente interoperabilidad con Java y un sandbox configurable que puede prevenir todo tipo de interacciones no deseadas con la JVM y con Venice. Venice se ha diseñado desde cero con un sandbox, lo que lo convierte en un ciudadano de primera clase.
Venice incluye una biblioteca completa de más de 900 funciones principales. Sus estructuras de datos inmutables y persistentes, junto con átomos, futuros, promesas y agentes al estilo Clojure, simplifican enormemente el proceso de escribir código concurrente.
Venice se integra perfecta y transparentemente con Java y cualquier biblioteca de terceros, dándote acceso a una amplia variedad de bibliotecas, frameworks y herramientas.
La fortaleza de Venice es facilitar tareas complejas de scripting y automatización. ¿Alguna vez te has sentido limitado por los scripts de Bash o PowerShell? Con Venice, puedes escribir scripts concisos y elegantes independientes de la plataforma sin esfuerzo.
Venice no depende de ninguna biblioteca en tiempo de ejecución (aparte de la JVM). Puedes añadirlo fácilmente como un JAR independiente a tu classpath.
Venice requiere Java 8 o superior.
¿Te gustaría probar Venice en un entorno REPL interactivo? Pruébalo en Gitpod
Puedes obtenerla desde los repositorios centrales de Maven:
<dependency>
<groupId>com.github.jlangch</groupId>
<artifactId>venice</artifactId>
<version>1.12.52</version>
</dependency>
Desde un shell de comandos, ejecuta ./gradlew shadowJar en el directorio del proyecto, para invocar la tarea de Gradle que compila el JAR de Venice.
En MacOS / Linux
Otorga permiso de ejecución a gradlew después de clonar el repositorio git de Venice ...
venice% chmod +x ./gradlew
... y compila el proyecto
venice% ./gradlew clean shadowJar
En Windows
C:\Users\foo\venice> gradlew.bat clean shadowJar
Acepto Pull Requests a través de GitHub. Hay algunas pautas que facilitarán la aplicación de los PR:
Este código está licenciado bajo la Apache License v2.