Peter Bex explica su contribución técnica a CHICKEN Scheme

Peter Bex, mantenedor de CHICKEN Scheme y desarrollador profesional de Clojure, ofrece una visión detallada de su trayectoria en la programación funcional. Bex describe cómo su interés por los lenguajes funcionales surgió durante sus estudios universitarios, donde el libro 'The Little Schemer' le pe

Newsroom: herramienta Clojure para resumir noticias con IA

Newsroom es una aplicación de código abierto escrita en Clojure que automatiza la creación de resúmenes de noticias diarias. El sistema recopila información de múltiples fuentes RSS y búsquedas web, incluyendo medios globales como Al Jazeera, CGTN y Xinhua, para evitar sesgos de perspectiva. Estos d

Cómo evitar el problema del secretario en la contratación de talento

El artículo analiza la teoría de la parada óptima, conocida como el 'problema del secretario', y propone una alternativa no cero-suma para la contratación de talento. El autor, basándose en su experiencia en helpshift.com durante 2013-2014, describe cómo su equipo de ingeniería de calidad (QA) en Cl

Desarrollo de una pantalla e-paper para clima y noticias con Claude Code

El autor documenta el proceso de desarrollo de una aplicación para una pantalla e-paper T5 de LILYGO, diseñada para reducir la temperatura de su hogar y centralizar la información de clima, calidad del aire y noticias. El proyecto nace de la necesidad de gestionar el consumo de contenido digital, ut

Programadores rechazan 'reduce' por legibilidad y familiaridad

Una observación anecdótica entre desarrolladores sugiere que las funciones de orden superior 'map' y 'filter' gozan de mayor aceptación que 'reduce' en los procesos de revisión de código. El autor, basándose en su experiencia, señala que mientras 'map' y 'filter' rara vez generan objeciones, el uso

Arquitectura de estado reactivo con Datastar, Domino y Ebb

La gestión del estado de aplicaciones complejas se complica al acumular lógica de negocio y flujos de datos externos. Un enfoque estructurado propone cuatro bloques de construcción para mantener la consistencia: Datastar y Glimmer para interfaces reactivas, Domino para la lógica transaccional y Ebb

Babashka 1.13.220 añade FFI para llamar a bibliotecas C desde Clojure

Babashka ha publicado la versión 1.13.220, que incorpora el espacio de nombres babashka.ffi para invocar bibliotecas C directamente desde scripts de Babashka. Esta funcionalidad, basada en java.lang.foreign, también se distribuye como librería independiente para proyectos de Clojure sobre JVM, lo qu

jank mejora sus errores y lanza un repositorio oficial de paquetes nativos

jank ha ampliado su sistema de errores en C++ con trazas de excepciones en tiempo de ejecución, páginas de ayuda y mensajes más claros para resolver ambigüedades entre funciones candidatas. El compilador combina información de depuración del ejecutable actual, archivos compilados con anticipación y

Lo pequeño no es lo mismo que lo simple

En un ensayo técnico con tono divulgativo, el autor parte de la cita "simple is not small" para distinguir dos conceptos que suelen confundirse en el diseño de software: lo pequeño (poco código, pocas piezas) y lo simple (poco acoplado, una sola "trenza"). Tomando como referencia la charla "Simple M

Introducción amigable a Racket: el dialecto de Lisp para crear lenguajes

Racket es un lenguaje de la familia Lisp nacido en 1995 como PLT Scheme en el grupo de Matthias Felleisen y rebautizado en 2010. Su apuesta diferencial es la programación orientada al lenguaje: si un problema exige su propia sintaxis, Racket permite definirla en cuestión de horas. El artículo recorr

75 ejemplos de raylib en Jolt: Clojure nativo sobre Chez Scheme con FFI directo

Un repositorio reúne 75 ejemplos funcionales de la biblioteca gráfica raylib escritos en Jolt, un dialecto de Clojure que compila a código nativo mediante Chez Scheme, sin necesidad de JVM. La capa de enlace con raylib se construye llamando directamente a libraylib a través de su ABI en C con jolt.f

Un flujo de trabajo práctico para desarrollar con asistentes de IA

Este artículo describe un flujo de trabajo práctico para sacar el máximo partido a los modelos de lenguaje grandes (LLM) en el desarrollo de software, a partir de la experiencia diaria del autor. Frente a la programación manual, donde el código se construye paso a paso, los agentes generativos produ

us-vs-them: procedencia línea a línea del texto frente a la edición agéntica

us-vs-them es una herramienta, disponible como biblioteca o CLI, que reconstruye la autoría línea a línea de un archivo de texto a partir del historial de versiones de Git. Su propósito es resolver una cuestión creciente con la edición agéntica: distinguir qué partes de un documento fueron escritas

Jolt incorpora imágenes de programa y backends de Scheme portables

Jolt, un lenguaje de la familia Lisp que se ejecuta sobre Scheme, ha incorporado dos funcionalidades derivadas de desacoplar su runtime del host. La primera es la posibilidad de serializar imágenes de programa —al estilo de Common Lisp y Smalltalk—, una especie de caja negra que captura el estado co

Cómo no morir por mil cortes: repensar la calidad del software

La calidad del software no se reduce al buen funcionamiento de una aplicación, sino que atraviesa toda la organización. El texto parte de una premisa filosófica —la calidad como experiencia de un proceso vivo, comparable al cuidado de la salud— y la traslada al producto digital para preguntarse de q

La forma de los datos: cómo las notaciones condicionan la programación

El artículo reflexiona sobre la representación de los datos en los lenguajes de programación y sostiene que la elección de una notación determina en gran medida la productividad del programador. Partiendo de un ejemplo en Rust, donde el código que crea una estructura, su modelo mental en memoria y l

ZIL: un lenguaje relacional en Lean 4 para mapear elementos de un proyecto

ZIL es un lenguaje relacional compacto, implementado dentro de Lean 4, que permite describir objetos con nombre, las relaciones entre ellos y reglas que derivan relaciones adicionales a partir de hechos existentes. Su modelo se inspira en el enfoque de tuplas empleado por el sistema Zanzibar de Goog

Pre-ordenación de datos aleatorios: cómo acelerar inserciones en SQLite

Las bases de datos basadas en árboles B+, como SQLite, están diseñadas para almacenar datos de forma ordenada. Cuando se insertan identificadores o claves aleatorias, esa organización se rompe: las páginas se reescriben, se producen divisiones de página y el árbol se reequilibra constantemente, lo q

Hybrid ClojureScript: un lenguaje que combina código textual y visual

Los lenguajes de programación dominantes obligan a los desarrolladores a expresar ideas geométricas de dominio específico únicamente mediante texto lineal. Un artículo reciente propone una solución: lenguajes híbridos que permitan crear construcciones sintácticas visuales combinables con el código t

Glojure: un intérprete de Clojure sobre Go con interoperabilidad extensible

Glojure es un intérprete de Clojure desarrollado sobre Go que facilita el acceso a las bibliotecas del lenguaje anfitrión, del mismo modo que Clojure permite aprovechar el ecosistema Java sobre la JVM. Se trata de un proyecto en fase inicial (versión 0.3.0), sin garantías de retrocompatibilidad hast

transit.c: lector y escritor Transit en C11 con aceleración SIMD

transit.c es una biblioteca en C11 que implementa un lector y escritor para el formato Transit, un sistema de intercambio de datos entre aplicaciones escritas en distintos lenguajes y creado originalmente por Cognitect dentro del ecosistema Clojure. Transit se apoya en JSON y MessagePack, por lo que

Biff.core: la nueva librería que articula el framework Biff en Clojure

Biff.core es la primera de las doce librerías en las que se está dividiendo el framework Biff, un proyecto en Clojure para componer aplicaciones web. Su función principal es servir de pegamento entre el resto de módulos: ofrece las interfaces comunes y el sistema de composición que cualquier proyect

thi.ng: una colección abierta de bibliotecas para diseño computacional

thi.ng es un proyecto de código abierto dedicado al diseño computacional, creado y mantenido por Karsten Schmidt desde 2006. No se trata de un framework único ni de una herramienta ligada a un caso de uso o lenguaje concreto, sino de un conjunto maduro y en constante crecimiento de aproximadamente 3

Mis impresiones tras un mes programando en Clojure

Tras un mes utilizando Clojure para reconstruir su sitio web personal, el autor comparte sus impresiones sobre el lenguaje y por qué piensa seguir con él. El autor se acercó a Clojure esperando la sintaxis engorrosa que suele asociarse a los dialectos de Lisp, pero en la práctica lo encontró más er

Guía completa compara cuatro dialectos principales de Lisp

Esta referencia lateral de hyperpolyglot.org ofrece una comparación exhaustiva entre cuatro dialectos principales del ecosistema Lisp: Common Lisp, Racket, Clojure y Emacs Lisp. Cada dialecto comparte la sintaxis característica de Lisp —notación prefijada con paréntesis—, pero difiere considerableme

Jank crea IR personalizada para optimizar código Clojure

El compilador de Clojure 'jank' ha implementado su propia representación intermedia (IR) personalizada, diseñada específicamente para optimizar el código a nivel de semántica del lenguaje Clojure. Anteriormente, jank delegaba toda la optimización a LLVM, pero debido a que LLVM IR opera a un nivel mu

Nuevo roguelike permite crear hechizos programando expresiones en Lisp

xsofy es un proyecto de roguelike (juego de exploración de mazmorras procedural) desarrollado en un dialecto de Lisp llamado let-go, que es una implementación de Clojure ejecutándose sobre una máquina virtual de Go. La característica más distintiva del juego es su sistema de magia basado en s-expres

Let-Go combina Clojure y Go para crear binarios ultrarrápidos de 10MB

Let-Go es un nuevo lenguaje de programación que combina características de Clojure y Go, desarrollado como un compilador de bytecode y máquina virtual. El proyecto destaca por generar binarios standalone de aproximadamente 10MB, logrando un tiempo de arranque en frío de tan solo 7 milisegundos, lo q

ClojureScript: Funciones asíncronas llegan con la v1.12.145

El equipo de ClojureScript ha anunciado el lanzamiento de la versión 1.12.145, que introduce soporte nativo para funciones asíncronas. Esta nueva funcionalidad, solicitada por la comunidad como una de las mejoras más deseadas para la interoperabilidad con JavaScript, permite a los desarrolladores in

Clojure: del código a la infraestructura de Nubank

El documental "Documental" explora la historia de Clojure, un lenguaje de programación funcional que ha evolucionado desde una idea inicial hasta convertirse en la base de la infraestructura de ingeniería de Nubank, uno de los mayores bancos digitales independientes del mundo. Clojure no es un lengu

ClojureFnl: Compilador une Clojure y Fennel

Un desarrollador ha creado 'ClojureFnl', un compilador que traduce código Clojure a Fennel, un lenguaje Lisp inspirado en Clojure y que se ejecuta en Lua. El proyecto surgió inicialmente como una biblioteca llamada 'fennel-cljlib' en 2019, cuyo objetivo era incorporar características de Clojure en F

Instant: Backend Open Source para IA Simplificada

Instant es una nueva plataforma de backend de código abierto diseñada para simplificar el desarrollo de aplicaciones impulsadas por inteligencia artificial. Permite a los desarrolladores crear un número ilimitado de aplicaciones sin congelaciones y con una infraestructura optimizada para la escalabi

Clojure: lenguaje funcional gana terreno en empresas

Una reciente implementación en Michelin ha impulsado la adopción de Clojure, un lenguaje de programación funcional basado en Lisp, para el desarrollo de aplicaciones empresariales. Inicialmente, el equipo se mostró escéptico al desviarse de la pila de desarrollo estándar (Java), pero rápidamente apr

Clojure impulsa a Nubank: documental revela su historia

Un nuevo documental, "Clojure: The Documentary", se estrenará el 16 de abril, revelando la historia del lenguaje de programación Clojure y su impacto significativo en la industria tecnológica. El tráiler, publicado por CultRepo, destaca cómo Clojure, nacido de una idea persistente, ha llegado a impu

Roughtime: Código abierto se acelera 13 veces

Un equipo de Sturdy Statistics ha logrado un aumento significativo en el rendimiento de su implementación de código abierto Roughtime, un protocolo para la sincronización segura del tiempo con pruebas criptográficas. Inicialmente, el servidor respondía a las solicitudes en 200 microsegundos. Tras un

Aprende Clojure: Plataforma práctica para desarrolladores

ClojureStream es una plataforma integral diseñada para el aprendizaje y la comunidad en torno a los lenguajes de programación Clojure, ClojureScript y Datalog. En un mundo donde la curva de aprendizaje de nuevas tecnologías puede ser empinada, ClojureStream se presenta como un recurso estructurado y

Clojure y Java: Solucionan Retraso de Inicio en OpenLDK

Este artículo aborda un problema de rendimiento significativo encontrado al integrar Clojure (un lenguaje funcional) con OpenLDK, una implementación de Common Lisp que se ejecuta sobre la Máquina Virtual de Java (JVM). Inicialmente, el tiempo de inicio de Clojure en OpenLDK era excesivamente largo (

ChronDB: ahora biblioteca para más lenguajes

ChronDB, una base de datos Clojure inicialmente diseñada como servidor, ha evolucionado para convertirse en una biblioteca políglota gracias a la integración con GraalVM. Originalmente concebida para almacenar datos con Git y exponer protocolos como PostgreSQL, Redis y REST, el equipo de desarrollo

Clojure: Cognitect replantea el código abierto

Cognitect, la empresa detrás del lenguaje de programación Clojure, ha publicado una declaración desafiando las expectativas comunes sobre el desarrollo de código abierto. Rich Hickey, fundador de Cognitect, argumenta que los creadores de proyectos de código abierto no están obligados a atender a las