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.