smolts: IDE pedagógico para el lenguaje de enseñanza SMoL
Un nuevo entorno de desarrollo basado en S‑expressiones permite depurar y visualizar el flujo de programas SMoL en el navegador.

smolts, un IDE para SMoL
El proyecto smolts nace de la intención de facilitar la enseñanza de la teoría de lenguajes de programación mediante un IDE interactivo. Se basa en el trabajo de Shriram Krishnamurthi y colaboradores sobre SMoL, el “Standard Model of Languages”, y toma inspiración de Stacker.
El editor se ejecuta en el navegador y permite escribir programas en un dialecto de SMoL basado en S‑expresiones. Cada línea se acompaña de anotaciones que muestran el valor de las variables y la evaluación de expresiones, mientras el flujo de ejecución se ilustra con una representación de la continuación actual, el entorno y el store.
Algunas de las funcionalidades clave son:
- Paso a paso hacia adelante y hacia atrás.
- Ejecución hasta el cursor.
- Gestión de proyectos basada en Git, accesible directamente desde la interfaz.
- Renderizado en tiempo real del estado interno del programa.
La implementación actual, aunque funcional, presenta varios defectos de gestión de estado en Svelte y no está completa en cuanto a la gestión de versiones de proyectos. El código fuente está disponible en Git y el IDE se puede probar en https://smol.leastfixedpoint.com/. Un video de demostración muestra el flujo de trabajo, aunque corresponde a una versión ligeramente anterior.
Por qué importa
Para los administradores de sistemas y arquitectos que imparten cursos de lenguajes de programación, smolts ofrece una herramienta que visualiza los conceptos abstractos de la ejecución de programas de manera intuitiva. Su integración con Git y la posibilidad de ejecutar el entorno en el navegador reducen la barrera de entrada para los estudiantes. La próxima iteración debe centrarse en estabilizar el manejo de estado y completar las funciones de gestión de proyectos para que el IDE sea viable en un entorno académico real.

