Un nuevo lenguaje funcional ha sido liberado para ser usado con javascript. Se trata de Ki, un Lisp, un lenguaje funcional cuyas estructuras pueden ponerse directamente en Javascript. De acuerdo al sitio web del lenguaje, la sintaxis y semántica de Ki están inspiradas en Clojure en un gran porcentaje. Es un lenguaje funcional que expande Javascript a partir de una serie de macros llamados genéricamente sweet.js. Usar Ki significa que se pueden utilizar lenguajes funcionales y estructuras de datos inmutables. Ki puede ser usado para escribir aplicaciones completas, componentes individuales, entre otras alternativas.
Una ventaja de Lisp y de lenguajes similares es que son extensibles. Lisp tiene una sintaxis mínima pero uno puede extenderla. Common Lisp, por ejemplo se anuncia como «el lenguaje de programación programable». Ki soporta lambdas, recursión, funciones con muchos parámetros, multimétodos, átomos y macros, entre otras funciones. Ki tiene macros para extender y concatenar computaciones separadas.
Ki fue creado por Luca Antiga de Orobix, especialista en análisis de imágenes e ingeniería de datos, indicando que la compañía está usando Ki para manejar estados mutables en algunas apps. Antiga dice que Ki puede ser usado para creae lenguajes de dominio específicos via macros.
Ki se ofrece bajo la licencia MIT y puede ser descargado de su sitio web.
Referencias: