Lenguajes de programación difíciles hay de sobra. ¿Pero difíciles «y» extraños? Eso ya pertenece a una categoría diferente. Un par de meses atrás exploramos a Befunge, lenguaje creado en el año 1993 cuyo código se ejecuta en dos dimensiones siguiendo diferentes direcciones, y es una verdadera pesadilla de compilar. Sin embargo, hoy nos gustaría sumar a HeartForth, variante del Forth creada por Neil Kandalgaonkar a principios del año 2015. ¿En qué se basa? Básicamente reemplazó a las instrucciones principales de Forth con su equivalente en emojis, transformando a cada línea de código en un festival de colores.
Dominar por completo a un lenguaje de programación es un desafío enorme. Demanda mucho tiempo, esfuerzo, errores y experimentos. Una simple instrucción incorrecta en una línea perdida de código puede causar un amplio número de problemas, y ni siquiera hablemos del siempre presente cansancio mental. Pero llega un punto en el que todo programador desea divertirse un poco, y termina haciendo cosas como crear un lenguaje de programación «de fantasía». Aún recordamos muy bien el caso de Whitespace, cuyo código es transparente, y sólo se limita a usar espacios o tabulaciones. Un ejemplo aún más reciente es el de Rockstar, con una estructura que se asemeja a una canción de rock promedio. ¿Qué otra cosa se podría usar como elemento o sustituto? Al programador Neil Kandalgaonkar se le ocurrió implementar emojis, y el resultado es HeartForth.
El código… tiene mucho más sentido del que aparenta. En la parte inferior de la página oficial podemos acceder al glosario completo con sus equivalencias directas en Forth. Drop es un corazón roto, Rot es un corazón atravesado con una flecha, las manos en súplica simbolizan al =, altavoces y satélites para mayor a o menor a, y el Begin usa al dedo índice apuntando hacia la derecha, en una especie de «Engage» al estilo Star Trek: TNG. Uno que no aparece en la lista pero sí en el código de ejemplo es Factorial, identificado con una explosión.
Su creador destaca cuatro ventajas: HeartForth es extremadamente compacto (de modo tal que un programa complejo podría entrar en un tweet), mantiene una clara separación entre programa y datos, es agnóstico en relación a los espacios, y cuenta con un soporte internacional completo, ya que la mayoría de los lenguajes favorece al idioma inglés, pero el perfil universal de los emojis quiebra eso. Ahora, la pregunta es: ¿Quién se va a poner a escribir código en HeartForth?
sin animo de ofender al que escribio el articulo pero
esto es estupidisimo
una cosa es simplificar y otra es hacer cualquier mamarracho
cual es el objetivo de reemplazar = por otra carita? si ya mas reducido que eso no puede ser
es pura confucion para mi gusto