l: Un nuevo runtime para k y q

Un nuevo runtime propietario llamado L para los lenguajes de arreglos k y q—más conocidos como la base de kdb+, una base de datos de series temporales de alto rendimiento ampliamente usada en Wall Street—está llamando la atención por prometer grandes mejoras de velocidad, incluida ejecución amigable con SIMD y cómputo directo sobre columnas comprimidas. Los comentaristas se dividen entre el entusiasmo por abrir a más desarrolladores una tecnología históricamente cara y de nicho, y el escepticismo ante el modelo de código cerrado, las vagas afirmaciones de marketing y un sitio web “vibecoded” generado con IA que dificulta evaluar el sistema desde fuera. El hilo también aborda los riesgos legales dada la historia de Kx Systems en la aplicación agresiva de IP y el atractivo más amplio de los lenguajes de arreglos como una forma de replantearse cómo trabajan los programadores con grandes conjuntos de datos.

Qué es L y por qué importa

  • L se describe como un nuevo runtime/intérprete para k y q/qSQL, los lenguajes de arreglos detrás de kdb+, ampliamente usados para datos tick/de series temporales en finanzas.
  • Su objetivo es lograr compatibilidad total de lenguaje y base de datos con los sistemas k/q existentes, para que los usuarios puedan ejecutar cargas de trabajo similares de forma local y gratis.
  • Varios comentarios lo presentan como algo muy importante para los quants que hoy pagan precios altos por kdb+, especialmente porque se percibe a su proveedor como caro y agresivo en materia de IP.

Lenguajes de arreglos y casos de uso

  • k y q se caracterizan como lenguajes breves, orientados a arreglos, de la familia APL/J, donde los vectores/arreglos son la unidad mental y de ejecución principal.
  • Los comentaristas señalan que aprender un lenguaje de arreglos a menudo cambia la forma en que uno piensa sobre programación, más allá del uso financiero de nicho.
  • Algunos dicen que la principal motivación práctica para aprender q es acceder a empleos muy bien pagados en finanzas y trading.

Rendimiento, diseño y benchmarks

  • L se posiciona como un motor de alto rendimiento con:
    • Fusión de operaciones encadenadas para evitar intermedios y permitir actualizaciones in-place.
    • Vectores de “compute on compressed”: uso de compresión estilo frame-of-reference para reducir el ancho de bits (p. ej., i64→i16/i8) y luego operar directamente sobre los datos comprimidos.
    • Se afirma que esto ofrece grandes mejoras de velocidad para primitivas como sum/avg al ser más eficiente en memoria y SIMD, abordando la memoria como cuello de botella.
  • Se enlazan suites públicas de benchmarks (master-benchmark, db-benchmark, TSBS), y se anima a los lectores a ejecutarlas por sí mismos.
  • Algunos quieren comparaciones directas con otros runtimes de k (incluidos cerrados como Shakti). Los resultados actuales se consideran prometedores pero incompletos.

Sitio web, “vibecoding” y participación de IA

  • La página de inicio es descrita ampliamente como “vibecoded”: texto críptico, frases de marketing como “vector as unit of thought” y poca explicación para los recién llegados.
  • Hay debate sobre si esto es aceptable o una señal de alerta. Algunos lo ven como una norma moderna; otros lo interpretan como una señal de calidad incierta.
  • El sitio afirma explícitamente que fue diseñado con Claude; se dice que el runtime fue escrito a mano.
  • El autor informa haber usado IA para analizar y optimizar ensamblador generado, pero no para escribir el runtime principal.

Licencia y apertura

  • L es de código cerrado, algo que muchos entusiastas de los lenguajes de arreglos aceptan como común en este ecosistema, pero que otros rechazan como un “no starter”.
  • Algunos prefieren las implementaciones de código abierto existentes por ser más seguras o inspectables, aunque siguen encontrando L técnicamente intrigante.