jank mejora los informes de errores en C++ y publica su propio repositorio de paquetes nativos
La última actualización de jank incorpora trazas de pila precisas para excepciones en tiempo de ejecución y una colección de páginas de error para C++ y Clojure.

jank, el lenguaje que combina Clojure con compilación JIT a LLVM, lanzó una nueva versión que revoluciona la forma en que se informan los errores tanto en tiempo de ejecución como en la interoperabilidad con C++. El autor del proyecto agradeció a sus patrocinadores de GitHub y a Clojurists Together, y describió los cambios principales.
Trazas de pila para excepciones en tiempo de ejecución
En entornos nativos de C++ no existe un mecanismo estándar y portable para obtener una traza de pila. jank, que genera código C++ JIT, necesitaba una solución que incluyera los marcos de C++ y los vinculase con el código de origen de jank. La nueva implementación combina información de tres fuentes: el ejecutable actual, los objetos AOT compilados (análogos a los *.class de la JVM) y los objetos JIT añadidos en tiempo de ejecución. El resultado es una traza que muestra los marcos de Clojure relevantes, la aridad exacta utilizada y la ubicación del archivo jank, tanto en macOS como en Linux.
Páginas de error dedicadas
Cada tipo de error ahora tiene su propia página en el "jank book", con descripción del problema, causas comunes y sugerencias de solución. Estas páginas mejoran el SEO del proyecto y facilitan que los usuarios encuentren la información correcta al buscar mensajes de error. Entre los ejemplos publicados están los errores de conversión implícita de C++ y ambigüedades de sobrecarga.
Reimaginando los mensajes de error de C++
jank aprovecha su AST, que está entrelazado con el de Clang, para extraer datos precisos y presentarlos en una tabla compacta. A diferencia de los mensajes tradicionales de Clang o GCC, la tabla incluye la firma completa de la función, su ubicación de origen y, cuando corresponde, la conversión de rasgos (trait) entre objetos jank y valores nativos. Por defecto se muestran los tres candidatos más relevantes, ordenados por número de argumentos, conversiones requeridas y nivel de acceso.
Compatibilidad y futuro
El soporte de errores cubre tanto la capa de Clojure como la de C++. La integración con el repositorio oficial de paquetes nativos permite a los usuarios distribuir bibliotecas compiladas para la plataforma objetivo sin depender de herramientas externas. El proyecto sigue abierto y los usuarios pueden seguir el desarrollo en GitHub.
En resumen, la actualización de jank aporta trazas de pila coherentes, documentación de errores estructurada y una presentación más clara de los fallos de C++. Para los equipos que usan jank en producción, la mejora reduce el tiempo de diagnóstico y facilita la adopción de la herramienta en entornos mixtos de Clojure y C++.

