En Clojure, un lenguaje de programación funcional que se ejecuta sobre la JVM, las "variables" se declaran mediante estructuras inmutables. Las declaraciones suelen hacerse utilizando las funciones def
o let
, dependiendo del alcance y del contexto.
La sintaxis básica para declarar una variable en Clojure es la siguiente:
def
:
(def nombre-variabe valor)
let
:
(let [nombre-variable valor] expresiones)
def
y let
def
:
(def saludo "Hola, Clojure!")
(println saludo) ; Salida: Hola, Clojure!
let
:
(let [x 10
y 20]
(+ x y)) ; Resultado: 30
Función | Ámbito | Inmutabilidad | Uso principal |
---|---|---|---|
def
|
Global | Inmutable | Declarar constantes o valores globales. |
let
|
Local | Inmutable | Declarar variables de ámbito limitado. |
atom
|
Global/Local | Mutable | Usar estados mutables controlados. |
def
para definir constantes:
(def PI 3.14159)
(println (* 2 PI 10)) ; Calcula el perímetro de un círculo con radio 10
let
con cálculos:
(let [a 5
b 3]
(* a b)) ; Resultado: 15
atom
:
Aunque Clojure enfatiza la inmutabilidad, es posible gestionar estados mutables con atom
:
(def contador (atom 0))
(swap! contador inc)
(println @contador) ; Salida: 1
1. Inmutabilidad por defecto: Las variables declaradas con def
o let
no se pueden cambiar una vez asignadas.
2. Estado mutable controlado: Para mutabilidad, utiliza estructuras como atom
, ref
, o agent
.
3. Nombres simbólicos: Los nombres de las variables suelen ser expresivos y seguir el estilo kebab-case
.
Consulta la documentación oficial de Clojure para aprender más sobre cómo declarar y usar variables.
Jorge García
Fullstack developer