Lenguajes esotéricos

Bajo este nombre que incita a creer que se trata de algún tipo de idioma relacionado con el tarot, se esconden unos tipos de lenguajes de programación bastante particulares.

La mayoría de ellos han sido creados por simple diversión y su finalidad es la de explorar los límites del diseño de los lenguajes de programación:

Hay una lista realmente larga, y los que me han llamado mas la atención han sido estos:

  • Piet: No hay código en si, sino que los programas se guardan en imágenes con distintos colores. En total hay 20 colores distintos y el intérprete va recorriendo la imágen siguiendo una ruta establecida que puede ser alterada dependiendo del color que escojamos en cada pixel. El nombre del programa fue puesto en honor a Piet Mondrian cuyos cuadros sin duda se pueden llegar a parecer a un programa. Esta imágen es el clásico programa de “Hello World” en Piet:
    Hello World en piet
  • Chef: Otro lenguaje en que los programas parecen recetas de cocina. Primero se tienen que definir los ingredientes. Todos ellos serán numéricos, pero los líquidos se interpretarán como carácteres Unicode y el resto se interpretarán como números. Una vez definidos los ingredientes se aplicará la receta mezclando estos ingredientes. Ejemplo de hello world en chef.
  • L33t: En este lenguaje, el código está escrito utilizando leetspeak (como si se tratase de cualquier texto escrito por un script kiddie). El código está dividido en palabras separadas por espacios o retornos de carro y cada palabra es evaluada sumando los números que contiene. Así h4x0r sería 4+0=4. El resto de carácteres se descarta. Cada número tiene una función distinta. De esta forma tenemos casi total libertad para escribir el texto que queramos y en realidad se tratará de un programa totalmente válido. Por ejemplo, hello world en l33t. Sin duda es el lenguaje más l33t H4xX0r
  • Ook!: Según afirman en su web, es el primer lenguaje de programación diseñado para orangutanes. Solo tiene una instrucción: “Ook“, que tiene que utilizarse siempre en parejas de 2 y con un modificador al final: .?!. Pudiendo utilizar un total de 8 comandos distintos, se consigue que todos los programas hechos en este lenguaje se parezcan entre si. Realmente puede parecer la transcripción de cualquier discusión entre orangutanes. Cuando veáis el ejemplo de hello world entenderéis lo que quiero decir.
  • INTERCAL: Se dice que fue el primer lenguaje esotérico. Se creó en 1972 satirizando FORTRAN y COBOL, de forma que algunas acciones tienen que ser pedidas “por favor” (PLEASE). Fue creado en tono humorístico, y por ejemplo en su manual, llaman a las comillas como “orejas de conejo” (“rabbit ears“). En el ejemplo de hello world en INTERCAL se pueden ver varias sentencias que se piden amablemente…
  • Wierd: Aparentemente absurdo, en este lenguaje el código es como un gran gusano en ASCII. Puede utilizarse cualquier carácter, ya que sólo interpreta dos símbolos: el espacio y cualquier otro. Lo que se tiene realmente en cuenta es el ángulo en el que se curva el “gusano”. Dependiendo de los grados que tome, significará una cosa u otra. Para entenderlo mejor, os recomiendo que veáis el ejemplo de hello world en Wierd.

Links: