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

La sintaxis de Lisp y los principios de percepción visual

La sintaxis de Lisp, caracterizada por su uso intensivo de paréntesis, ha sido históricamente considerada menos legible que las notaciones de lenguajes como Python, Java o C. Aunque muchos atribuyen esta dificultad a la falta de familiaridad, el autor argumenta que existen factores cognitivos y visu

Guía para crear servicios personalizados en Guix

Un usuario que migra sus servidores de NixOS a Guix documenta el proceso de creación de un servicio personalizado para Caddy, un proxy inverso no disponible por defecto en el canal oficial. El artículo sirve como tutorial para principiantes, explicando cómo definir tipos de servicio, crear usuarios

Desmitificando configuraciones complejas en servicios de Guix

Los servicios de Guix system y Guix home ofrecen un mecanismo uniforme para gestionar daemons y archivos del sistema, pero su extensión de config language, basada en macros de Scheme con tipado fuerte, resulta complicada para nuevos usuarios a la hora de definir configuraciones complejas. Este artíc

SLED: un LISP simbólico para DOS inspirado en Scheme

SLED (Schemy LISP en DOS) es un intérprete de LISP puramente simbólico inspirado en Scheme y derivado del proyecto Kilo LISP. Funciona como aplicación nativa de DOS, por lo que puede ejecutarse en FreeDOS, MS-DOS y en emuladores como DOSBox, DOSBox-X y DOSBox-Staging. Se concibe como un "Ur-Lisp": p

R7RS Large 2026: dimisión de la presidenta del grupo de trabajo de Scheme

La autora, que había sido elegida presidenta del grupo de trabajo Scheme (WG2) tras la renuncia del antiguo comité directivo, narra los motivos que la llevaron a abandonar el proyecto R7RS Large y la comunidad Scheme por completo. Tras un intento falló de que el editor de SRFIs, Arthur Gleckler, med

Cómo scheme-rs multiplicó por 25 su rendimiento con tres optimizaciones

scheme-rs es una implementación de Scheme escrita en Rust cuyo autor decidió el 31 de diciembre de 2024 transformar su intérprete basado en AST en un compilador JIT con representación intermedia en CPS (Continuation-Passing Style). El objetivo principal era hacer mecánica la creación de continuacion

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

Hacia una informática que no privilegie el inglés: el reto de Nasser

Ramsey Nasser, diseñador de juegos, artista y educador, sostiene que toda herramienta de programación moderna exige conocimientos de inglés, lo que perpetúa una ventaja cultural difícil de justificar. En su charla, presentada como respuesta al artículo seminal de Alan Kay de 1972 «A Personal Compute

CHICKEN Scheme 6.0.0: alineación con R7RS-small, UTF-8 interno y FFI reforzado

CHICKEN Scheme publica su versión 6.0.0, un salto mayor en el que el núcleo adopta los módulos definidos por el estándar R7RS-small. La representación interna de cadenas pasa a UTF-8, lo que aporta soporte pleno para Unicode, y los blobs se reemplazan por el módulo (chicken bytevector), compatible c

DREI: un editor WYSIWYG para HTML inspirado en Emacs

DREI, cuyo nombre responde a 'DREI Rich Emacs Implementation', es un editor de texto WYSIWYG (lo que ves es lo que obtienes) construido como una aplicación Tauri que implementa un subconjunto de los comandos de edición de GNU Emacs junto con órdenes específicas para insertar elementos HTML como bloc

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

El estado de Chez Scheme en Debian: avances y retos pendientes

El mantenedor del paquete de Chez Scheme en Debian ha subido la versión 10.4.0 a la rama inestable, la primera actualización en varios años. La nueva compilación funciona en todas las arquitecturas y, en las que no existe backend nativo, genera bytecode portable, una capacidad que el lenguaje incorp

Tutorial de parser combinators: implementación sencilla en Scheme

Los parser combinators son una técnica para construir analizadores sintácticos componiendo pequeñas funciones que reconocen unidades de texto. Este tutorial explica, de forma práctica y accesible, cómo construir una biblioteca mínima de análisis sintáctico usando Scheme, aunque los principios son ap

Haunt publica una nueva versión de su generador de sitios estáticos para Guile

Haunt, el generador de sitios estáticos escrito en Guile Scheme, ha actualizado su receta de empaquetado en GNU Guix a la versión 0.4.0. El cambio, autoría de David Thompson, consiste en una modificación mínima pero significativa del fichero guix.scm: la versión del paquete pasa de 0.2.6 a 0.4.0, lo

Cómo empaquetar un binario en GNU Guix: el caso de Caddy

El gestor de paquetes funcional GNU Guix permite definir paquetes reproducibles a partir de código fuente o, como alternativa más sencilla, de un binario ya compilado. Este artículo recorre, paso a paso, la creación de un paquete para Caddy, el servidor web con TLS automático, dentro de Guix 1.5.0.

El contexto como clave para reutilizar pruebas en bibliotecas de testing

Este ensayo técnico recoge la experiencia de un año diseñando una biblioteca de pruebas y expone cómo un cambio aparentemente menor en la API —incorporar contexto a las pruebas— resuelve problemas clásicos del testing: la instalación y el desmontaje de entornos, y la reutilización de tests. Tras doc

Lisp implementado dentro del sistema de tipos de Rust

El repositorio "lisp-in-types", publicado en GitHub por el usuario playX18, ofrece una implementación del lenguaje de programación Lisp construida por completo sobre el sistema de tipos de Rust, de modo que los programas en Lisp se expresan como tipos y se evalúan en tiempo de compilación mediante t

Cómo escribir un intérprete de Lisp en Python

Este artículo es un tutorial paso a paso para construir un intérprete de Scheme (un dialecto de Lisp) utilizando Python. El texto parte de la premisa de Steve Yegge según la cual, si no se sabe cómo funcionan los compiladores, no se entiende de verdad cómo funcionan los ordenadores, y aplica esa ide

Cómo construir derivaciones de Guix con Nix gracias a guix-transfer

El gestor de paquetes Nix puede compilar derivaciones de Guix, pese a que ambos se presentan como ecosistemas rivales. El blog técnico de Farid Zakaria lo demuestra con un experimento reproducible y, además, presenta la herramienta de código abierto guix-transfer, que automatiza la traducción de rec

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

Cómo el cálculo lambda permite crear un lenguaje de programación desde cero

El cálculo lambda es un sistema formales mínima desarrollado por Alonzo Church en 1929 que constituye la base teórica de todos los lenguajes de programación funcionales modernos como Haskell, Scheme y ML, y también está presente en lenguajes imperativos como JavaScript, Python y Ruby. A pesar de su

Scheme: repositorio desacoplado para datos

Este artículo presenta un enfoque innovador para la capa de datos en proyectos Scheme, buscando resolver un problema común: el acoplamiento estrecho entre la capa de control y la implementación específica de la base de datos (en este caso, SQLite). El autor, proveniente de un background en lenguajes

IA acelera creación de compilador en tiempo récord

Un desarrollador, Matthew Phillips, ha creado un compilador de Scheme a WASM llamado Puppy Scheme en tan solo cuatro días, un logro notablemente rápido gracias al uso de inteligencia artificial. El proyecto, iniciado como una iniciativa personal, se completó en un fin de semana y unas pocas noches,

Scheme en VSCode: Nuevo servidor mejora la programación

Un desarrollador independiente, Ufo, ha lanzado "scheme-langserver", una implementación del Protocolo de Servidor de Lenguaje (LSP) para el lenguaje Scheme, ahora disponible para VSCode. Este servidor busca mejorar significativamente la experiencia de desarrollo en Scheme, un lenguaje de programació

Common Lisp y Scheme: Interoperabilidad sin precedentes

Un nuevo proyecto, denominado 'cl-kawa', permite una profunda interoperabilidad entre Common Lisp y Scheme, dos lenguajes de programación, a través de una implementación innovadora. El proyecto, creado por Anthony Green y disponible en GitHub, utiliza OpenLDK, un JVM escrito en Common Lisp que trans

Scheme y 'GOTO': Emulación con Continuaciones

Este artículo explora cómo emular la instrucción `GOTO` en el lenguaje Scheme utilizando continuaciones. `GOTO` es una instrucción de control de flujo que permite saltar a una línea específica de código, algo que Scheme, por diseño, no ofrece directamente. Dijkstra, en su famoso artículo, criticó `G

Femtolisp: Lisp rápido y compacto sorprende al mundo

Un desarrollador ha presentado "Femtolisp", una nueva implementación de un dialecto Scheme que destaca por su tamaño compacto y velocidad. El proyecto, iniciado como un intento de crear el intérprete Lisp más rápido posible en menos de 1000 líneas de código C, ha evolucionado para incluir caracterís

Scheme-rs: Nuevo lenguaje de programación disponible

Un desarrollador ha anunciado el lanzamiento de la versión 0.1.0 de 'scheme-rs', una nueva implementación del lenguaje de programación Scheme, disponible en scheme-rs.org y en GitHub. El proyecto, iniciado hace un año tras la pérdida del empleo del desarrollador, inicialmente se enfocó en ser asíncr

Hoot: Scheme corre en WebAssembly con nueva herramienta

Un nuevo proyecto llamado Hoot, desarrollado por Spritely, ha lanzado la versión 0.7.0 de su compilador Scheme a WebAssembly (Wasm) y una herramienta completa para Wasm. Hoot permite ejecutar código Scheme en navegadores web con capacidad para Wasm GC (Garbage Collection). La plataforma se basa en G