PATH Debería Ser una Llamada al Sistema

2025-04-25

Emacs y bash, al iniciarse, buscan ineficientemente archivos de configuración iterando por cada directorio en la variable de entorno PATH, comprobando la existencia del archivo objetivo uno por uno. Este artículo explora este mecanismo de búsqueda ineficiente, utilizando la herramienta strace para rastrear las llamadas al sistema de Emacs y bash, demostrando numerosas llamadas fstatat. El autor argumenta que esta búsqueda debería ser optimizada por el sistema operativo o el sistema de archivos, utilizando una consulta similar a una base de datos para devolver directamente los archivos coincidentes en lugar de intentos iterativos. La implementación de Python, aunque relativamente más eficiente, también presenta deficiencias. El autor propone una solución mejorada: proporcionar al sistema operativo una lista de todos los nombres de archivos y directorios posibles, reduciendo las llamadas al sistema y los viajes de ida y vuelta de la red.

Leer más
Desarrollo

El Enigma de la Coma: Por Qué la Sintaxis de JSON Necesita una Revisión

2025-04-06

Este artículo cuestiona la necesidad de comas en JSON. El autor argumenta que las comas en JSON no son una elección de diseño inteligente, sino que aumentan la probabilidad de errores de sintaxis y reducen la legibilidad. El autor propone eliminar las comas, utilizando espacios y dos puntos para distinguir pares clave-valor, y usa JSON5 como ejemplo de mejoras, aunque JSON5 solo resuelve parcialmente el problema. El artículo concluye mencionando un efecto secundario curioso del uso de sistemas de IA en la generación de texto.

Leer más
Desarrollo sintaxis