Clojure

Autor: Eugene Taylor
Fecha De Creación: 10 Agosto 2021
Fecha De Actualización: 20 Junio 2024
Anonim
Clojure in a nutshell by James Trunk
Video: Clojure in a nutshell by James Trunk

Contenido

Definición - ¿Qué significa Clojure?

Clojure es un lenguaje de programación dinámico que es un dialecto, o variante, del lenguaje de programación Lisp. Está diseñado para fines generales y combina el desarrollo interactivo y la accesibilidad de un lenguaje de script con una infraestructura robusta y eficiente utilizada para la programación multiproceso.


También es un lenguaje compilado que se compila directamente en el código de bytes JVM sin dejar de ser completamente dinámico.

Una introducción a Microsoft Azure y la nube de Microsoft | A lo largo de esta guía, aprenderá de qué se trata la computación en la nube y cómo Microsoft Azure puede ayudarlo a migrar y administrar su negocio desde la nube.

Techopedia explica Clojure

Clojure fue desarrollado por Rich Hickey como un dialecto de Lisp que se dirige directamente a la Máquina Virtual Java (JVM). Debido a esto, comparte la filosofía del código como datos y el poderoso sistema macro de Lisp. Se considera predominantemente un lenguaje de programación funcional que presenta un conjunto de estructuras de datos inmutables y persistentes.

Clojure también tiene un sistema de memoria transaccional de software cuando se requiere un estado mutable, y un sistema de agente reactivo, que garantiza que los diseños multiproceso sean correctos y limpios.

Las características de Clojure incluyen:
  • Integración Java ajustada donde las aplicaciones se empaquetan e implementan fácilmente en JVM y otros servidores de aplicaciones
  • Las funciones se consideran objetos de primera clase.
  • Desarrollo dinámico con un ciclo de lectura-evaluación
  • Se hace hincapié en la recursividad y otras funciones de orden superior en oposición al bucle basado en efectos secundarios.
  • Proporciona estructuras de datos inmutables y persistentes, como hashmaps, listas y conjuntos.
  • El sistema de agente, el sistema var dinámico y la memoria transaccional de software permiten la programación concurrente
  • Los métodos múltiples permiten la distribución dinámica de los valores o tipos de cualquier argumento