smolts: un IDE pedagógico en el navegador para enseñar el modelo estándar de lenguajes

Fuentes: smolts: a pedagogical IDE for a teaching language

smolts es un entorno de desarrollo integrado (IDE) en navegador diseñado para enseñar el llamado "Modelo Estándar de Lenguajes" (SMoL, por sus siglas en inglés), una propuesta pedagógica desarrollada por Shriram Krishnamurthi y colaboradores en el marco del curso PLAI (Programming Languages: Application and Interpretation). El proyecto fue creado hace dos años por Tony Guenette y se inspira directamente en Stacker, la herramienta previa de Kuang-Chen Lu y Krishnamurthi.

El IDE permite escribir programas en un dialecto de SMoL basado en S-expresiones y avanzar paso a paso por su ejecución. Durante la ejecución muestra una representación visual del estado actual: la continuación, el entorno y el almacén (store). Además, el editor anota directamente el código fuente con los valores de cada variable y expresión, lo que facilita seguir el flujo del programa sin abandonar el texto.

Una de las funcionalidades más útiles para el aprendizaje es la posibilidad de retroceder paso a paso, algo práctico cuando se avanza demasiado rápido y se omite un detalle, junto con la opción de "ejecutar hasta el cursor". La aplicación está disponible en smol.leastfixedpoint.com y su código fuente es público en un repositorio git.

El autor reconoce que la herramienta aún no se ha utilizado formalmente en un curso y que la implementación presenta asperezas: la gestión de proyectos basada en git dentro del navegador es prometedora pero incompleta, y persisten varios errores ligados a la gestión de estado con Svelte. Aun así, invita a probarla, enviar comentarios y contribuciones, y plantea su uso futuro en la enseñanza de lenguajes de programación.