Gerbil Scheme – Un Lisp para el siglo XXI

Gerbil Scheme: características, ecosistema y herramientas

  • Construido sobre Gambit-C Scheme, con el objetivo de dar soporte a R5RS/R7RS, SRFIs comunes y un sistema de macros/módulos inspirado en Racket.
  • La biblioteca estándar se describe como “maximalista”: incluye redes, clientes S3 y WebSocket, primitivas de concurrencia (corutinas, actores), objetos/estructuras, anotaciones de tipos opcionales. Algunas bibliotecas no están bien documentadas.
  • La FFI a C se considera “razonablemente sensata”, lo que permite reutilizar bibliotecas Scheme compatibles con RxRS y bibliotecas nativas.
  • Las herramientas son “aceptables” y están evolucionando: se está trabajando en una implementación de LSP, mejor documentación y en usar información de tipos en tiempo de compilación/expansión para mejorar el rendimiento y la seguridad.
  • Según los informes, las versiones actuales incluyen una versión fijada de Gambit, por lo que no debería ser necesaria una instalación de Gambit del sistema, aunque esto no siempre fue así.

Experiencia de instalación y ejecución

  • Un comentarista no pudo compilar Gerbil debido a una versión obsoleta de Gambit del sistema; otros dicen que compilar Gambit desde el código fuente es fácil.
  • Las capacidades de desarrollo interactivo se benefician del soporte de Gambit para flujos de trabajo al estilo de CL, posiblemente incluyendo excepciones reanudables (mencionadas como un objetivo para Gerbil, pero no confirmadas claramente).

Proliferación de Lisp y “Lisp para el siglo XXI”

  • Debate sobre si “otro Lisp/Scheme más” aporta valor.
    • Los escépticos argumentan que ya hay muchos Lisps, que la mayoría no cambian la práctica del mundo real, y que las herramientas/ecosistemas en lenguajes dominantes suelen ser mejores.
    • Los defensores dicen que la experimentación y la diversidad son fortalezas centrales de Lisp, y que ser honesto sobre “solo otro Scheme RNRS” es preferible a una novedad superficial.
  • Algunos sienten que Lisp y Linux podrían beneficiarse de menos fragmentación; otros insisten en que la variedad y la experimentación a largo plazo son esenciales.

Uso en el mundo real y preocupaciones del ecosistema

  • Los escépticos piden sistemas grandes y ampliamente usados escritos en Scheme; las respuestas señalan proyectos de Chicken Scheme y otras aplicaciones basadas en Scheme, pero gran parte de la evidencia es histórica o de nicho.
  • Algunos programadores dicen haber probado muchos Lisps pero al final quedarse con CL (a menudo SBCL + SLIME) o Clojure (por el ecosistema JVM y las estructuras de datos funcionales).
  • Hay frustración recurrente con los nuevos Lisps que carecen de ejemplos directos de HTTP/JSON y comparaciones prácticas lado a lado con otros lenguajes.

Herramientas, editores y adopción

  • Hay un fuerte desacuerdo sobre Emacs como IDE Lisp por defecto: algunos lo ven como potente y estándar; otros lo encuentran arcaico e insisten en que los editores modernos al estilo CUA y las GUI son cruciales para atraer nuevos usuarios.