El problema oculto de Go: abstracciones que ralentizan el código crítico

Este artículo explora un problema fundamental en la optimización de rendimiento en Go: la ausencia de abstracciones de costo cero en las rutas críticas de código (hot paths). El autor, al portar el algoritmo Brotli a Go puro para el proyecto go-brrr, descubrió que las abstracciones idiomáticas del l

Knight: Un lenguaje de programación minimalista y peculiar

Knight es un lenguaje de programación minimalista y peculiar, diseñado con una filosofía radicalmente diferente a la de la mayoría de los lenguajes existentes. Su objetivo principal no es facilitar la vida al programador que escribe código, sino simplificar la implementación del propio lenguaje. Est

ELI-512: Nueva arquitectura busca optimizar procesadores

El artículo explora una arquitectura de procesador novedosa llamada Very Long Instruction Word (VLIW), y específicamente, el diseño ELI-512. Para entender su importancia, primero debemos comprender el problema que intenta resolver: la eficiencia en la ejecución de programas. Los procesadores moderno

Desaparece revista clave sobre código C

El 'Journal of C Language Translation' (JCLT) fue una publicación trimestral especializada, con un enfoque muy concreto: el desarrollo de herramientas que procesan y transforman código escrito en los lenguajes de programación C y C++. Aunque hoy en día pueda parecer un nicho muy específico, su impor

Mejoran inferencia de tipos para errores más claros

El artículo presenta un nuevo algoritmo de inferencia de tipos llamado 'Quadratic Micropass Type Inference', diseñado para mejorar la claridad de los mensajes de error en lenguajes de programación con inferencia de tipos. La inferencia de tipos, una característica que permite al compilador deducir e

Pratt Parsing: Analizando código de forma intuitiva

Este artículo explica el 'Pratt Parsing', una técnica ingeniosa para analizar expresiones matemáticas o código, especialmente útil en compiladores. La idea central es que, tradicionalmente, las expresiones (como `a + b * c + d`) se representan en un árbol de sintaxis abstracta (AST) donde los operad

Ohm: Parsing 50 veces más rápido con WebAssembly

El toolkit de parsing Ohm, utilizado para analizar formatos de archivo personalizados y construir parsers, intérpretes y compiladores, ha anunciado una actualización significativa (v18) que aumenta la velocidad de parsing hasta 50 veces en comparación con versiones anteriores. Esta mejora sustancial

Cálculos dispersos: nuevo método optimiza el rendimiento

El cálculo eficiente con datos dispersos (sparse data) es crucial en muchas áreas científicas y de ingeniería, desde simulaciones físicas hasta aprendizaje automático. Sin embargo, optimizar el código para estas operaciones, especialmente en hardware diverso como diferentes GPUs, puede ser extremada

Emacs: Desentrañando el código Lisp en C

Este artículo de The Cloudlet explora la estructura interna de GNU Emacs, específicamente cómo representa los valores de Lisp (Elisp) en C. El objetivo es comprender el diseño del sistema desde una perspectiva de bajo nivel, desglosando el tipo de dato `Lisp_Object`. La pieza se basa en el conocimie

Mejor C: 6 Claves para Código Eficiente

El artículo explora seis reflexiones sobre la generación de código C, desde la perspectiva de un desarrollador de compiladores. Se destacan técnicas para mejorar la calidad y eficiencia del código generado, incluyendo el uso de funciones `static inline` para la abstracción de datos y evitar penaliza

Llamadas a funciones: ¿Cuánto cuestan y cómo optimizarlas?

En programación, es común encadenar funciones, donde una función llama a otra. Aunque esto es una práctica habitual, cada llamada de función tiene un costo en términos de rendimiento. Este artículo explora ese costo y cómo los compiladores pueden optimizarlo a través de una técnica llamada 'inlining

ga68: Reviven Algol 68 con Compilador para GCC

## FOSDEM 2026: Descubriendo ga68, el Compilador Algol 68 para GCC **¿Qué es Algol 68 y por qué deberíamos prestarle atención?** Algol 68 es un lenguaje de programación histórico, diseñado a mediados de la década de 1960 como sucesor de Algol 50. Aunque nunca alcanzó la popularidad de otros lengua