Escribe un predicado una vez y ejecútalo contra SQL, MongoDB, Elasticsearch o cualquier backend. Una introducción a criteria4s y a su forma de resolver el Problema de la Expresión en código real.
Escribe un predicado una vez y ejecútalo contra SQL, MongoDB, Elasticsearch o cualquier backend. Una introducción a criteria4s y a su forma de resolver el Problema de la Expresión en código real.
¿Por qué los query engines modernos se pasan columnas en vez de filas? Porque al hardware le encanta esa forma. Este post explica por qué el layout columnar es tan rápido, cómo Apache Arrow lo representa en memoria y cómo construir y manipular arrays de Arrow en Rust sin tratar todo esto como si fuera magia negra.
Escribes una query SQL, presionas enter y unos milisegundos después aparecen resultados. En el medio, un pequeño compilador ya parseó el texto, construyó un plan, lo optimizó y lo ejecutó. Este post recorre ese pipeline con una query real y código real en Rust usando DataFusion.
Model, Update, View. Tres piezas, un bucle, cero sorpresas. Explicamos The Elm Architecture desde cero con ejemplos lado a lado en Rust y Scala, rastreamos de donde viene el patron, por que sigue apareciendo en TUIs y codebases funcionales, y cuando deja de ser la herramienta correcta.
Todo programa bien tipado es una demostración. Todo tipo es una proposición. No es una metáfora: es un teorema matemático descubierto en los años 30 que explica por qué hacer los estados inválidos irrepresentables realmente funciona.
Referencias nulas, spinners de carga que muestran errores y datos simultáneamente, pagos capturados y anulados a la vez. No son hipotéticos; son consecuencia directa de tipos que mienten sobre el dominio.
Los tipos se llaman algebraicos porque obedecen aritmética. Los tipos producto multiplican, los tipos suma suman. Entender esta aritmética explica por qué un enum con 5 variantes es infinitamente más preciso que 4 flags booleanos.