Gerbil Scheme – A Lisp for the 21st Century

Gerbil Scheme: Features, Ecosystem, and Tooling

  • Built on Gambit-C Scheme, aiming to support R5RS/R7RS, common SRFIs, and a macro/module system inspired by Racket.
  • Standard library is described as “maximalist”: includes networking, S3 and WebSocket clients, concurrency primitives (coroutines, actors), objects/structs, optional type annotations. Some libs are not well documented.
  • FFI to C is considered “reasonably sane,” enabling reuse of RxRS-compliant Scheme libraries and native libraries.
  • Tooling is “ok” and evolving: work is ongoing on an LSP implementation, better documentation, and using type info at compile/expand time for performance and safety.
  • Current releases reportedly ship with a pegged Gambit version, so a system Gambit install should not be required, though this was not always true.

Installation and Runtime Experience

  • One commenter failed to build Gerbil due to an outdated system Gambit; others say compiling Gambit from source is easy.
  • Interactive development capabilities benefit from Gambit’s support for CL-style workflows, possibly including resumable exceptions (mentioned as a goal for Gerbil but not clearly confirmed).

Lisp Proliferation and “Lisp for the 21st Century”

  • Debate over whether “yet another Lisp/Scheme” adds value.
    • Skeptics argue there are many Lisps already, most don’t change real-world practice, and tooling/ecosystems in mainstream languages are often better.
    • Defenders say experimentation and diversity are core Lisp strengths, and honesty about “just another RNRS Scheme” is preferable to shallow novelty.
  • Some feel Lisp and Linux might benefit from less fragmentation; others insist variety and long-term experimentation are essential.

Real-World Use and Ecosystem Concerns

  • Skeptics ask for large, widely-used systems written in Scheme; replies point to Chicken Scheme projects and other Scheme-based apps, but much evidence is historical or niche.
  • Some programmers report trying many Lisps but ultimately sticking with CL (often SBCL + SLIME) or Clojure (for JVM ecosystem and functional data structures).
  • There is recurring frustration with new Lisps lacking straightforward HTTP/JSON examples and practical side-by-side comparisons with other languages.

Tooling, Editors, and Onboarding

  • Strong disagreement about Emacs as the default Lisp IDE: some see it as powerful and standard; others find it archaic and insist that modern, CUA-style editors and GUIs are crucial for attracting new users.