Seguimos con Clojure.
Como la mayoría de los lenguajes Clojure tiene literales que son los valores que normalmente usamos.
Ojo los ; son comentarios al final de la línea.
Tipos numéricos
42 ; entero
-1,5 ; punto flotante
22/7 ; fracción
Los enteros se leen como enteros de 64 bits de precisión fija cuando están dentro del rango y precisión arbitraria en caso contrario. Se puede usar una N al final para forzar una precisión arbitraria. Clojure también admite la sintaxis de Java para enteros octal (prefijo 0), hexadecimal (prefijo 0x) y radix arbitrario (prefijo con base y luego r).
Los valores de coma flotante se leen como flotantes de 64 bits de doble precisión o precisión arbitraria con un sufijo M. También se admite la notación exponencial. Los valores simbólicos especiales ## Inf, ## - Inf y ## NaN representan valores de infinito positivo, infinito negativo y "no es un número", respectivamente.
Tambien tenemos caracteres :
"Hola" ; String
\e ; caracter
# "[0-9] +" ; expresión regular
Las cadenas están contenidas entre comillas dobles y pueden abarcar varias líneas. Los caracteres individuales se representan con una barra invertida al principio. Hay algunos caracteres especiales con nombre: \ newline \ spec \ tab, etc. Los caracteres Unicode se pueden representar con \ uNNNN o en octal con \ oNNN.
Las expresiones regulares literales son cadenas con un # al principio. Estos se compilan en objetos java.util.regex.Pattern.
Tambien tenemos símbolos e identifidores :
map ; símbolo
+ ; símbolo
clojure.core / + ; símbolo con espacio de nombres
nil ; valor nulo
true false ; booleans
: alpha ; palabra clave
:release/alpha ; palabra clave con espacio de nombres
Los símbolos se componen de letras, números y otros signos de puntuación y se utilizan para referirse a otra cosa, como una función, valor, espacio de nombres, etc. Los símbolos pueden tener opcionalmente un espacio de nombres, separados por una barra inclinada del nombre.
Hay tres símbolos especiales que se leen como tipos diferentes: nil es el valor nulo y verdadero y falso son los valores booleanos.
Las palabras clave comienzan con dos puntos iniciales y siempre se evalúan por sí mismas. Se utilizan con frecuencia como valores enumerados o nombres de atributos en Clojure.
Otra cosa son las colecciones Clojure también incluye sintaxis literal para cuatro tipos de colección:
'(1 2 3); lista
[1 2 3]; vector
#{1 2 3}; conjunto
{:a 1,:b 2}; mapa
Hablaremos de colecciones más adelante, por ahora estuvo bien este post.