All Projects → schemedoc → Awesome Scheme

schemedoc / Awesome Scheme

Licence: other
A curated list of awesome Scheme libraries and resources

Programming Languages

lisp
113 projects

Awesome Scheme

Awesome

Contents

Events (2020)

Advocacy

Standards

Implementations

Native Compilers

Uses another Scheme as backend

  • Gerbil: R7RS, compiles to C, based on Gambit, extends gambit with better macro and module systems.
  • Racket: R6RS, beginner friendly, full Windows support, optional typing, essentially a superset of scheme, tons of libraries, moving/moved to a Chez Scheme backend.

Transpilers to C

  • CHICKEN: R5RS and R7RS, beginner friendly, exceptional community, unique implementation of GC.
  • Cyclone: R7RS, experimental extension of Chicken-style GC with native thread support.
  • Gambit: R5RS, official installers also for macOS, iOS, Windows, considered quite fast.
  • Bigloo: R5RS, can also compile to Java-Virtual-Machine (JVM) classes, limited optional typing.

Bytecode VM's and JVM/CLR

  • Chibi-Scheme: R7RS
  • Gauche: R7RS, compiles to standalone executable, official installers also for Windows, Docker.
  • GNU Guile: R6RS, getting JIT executable support soon, beginner friendly, officially supported by GNU, scripting language for many pieces of GNU software.
  • IronScheme: R6RS, based on Common-Language-Runtime (CLR).
  • Kawa: R7RS, based on JVM, compile to JVM classes, limited optional typing.

JavaScript Interpreter

  • BiwaScheme: R6RS, partial R7RS, compiler to intermediate represantion + VM
  • LIPS: R7RS, most of the spec is written in core Scheme, good interop with JavaScript

Package Managers

  • Akku: for portable R6RS and R7RS libraries
  • Snow: for portable R7RS libraries
  • GNU Guix: purely-functional package manager and GNU/Linux distro
  • Racket Packages: for Racket libraries and applications

Books

Research Papers

Editor and IDEs

  • Geiser: most comprehensive Emacs support for many Scheme implementations (MELPA)

Applications

Web Development

  • SXML: very popular S-expression representation of XML/HTML
  • CSS-expressions: S-expression representation of CSS (Racket)
  • chibi html-parser: lenient HTML parser (R7RS; Docs; Akku, Snow)

Text Processing

  • Scribble: popular, somewhat lightweight Scheme-based markup language (Racket, R7RS)
  • Skribilo: TeX/LaTeX-like document processor with Scheme scripting
  • Skribe and Scheme Scribe: older Scheme-based document processors from INRIA
  • Pollen: a fancy typesetting system for writing entire books in Racket

Graphics, Music, Audio, Video

  • LilyPond: music notation language with Scheme scripting
  • libfive: script-driven solid modeling CAD based on Guile
  • Fluxus: portable 3D game engine for live coding in Scheme
  • Impromptu: live coding with Scheme on macOS
  • Extempore: portable live coding in Scheme
  • Scheme For Max: live coding with Scheme in Max/MSP

Languages and Computation

  • Nanopass Framework: a DSL for factoring compilers into many small passes and IRs
  • Harlan: a Scheme-based programming language for GPU computing
  • packrat: a PEG parser generator with a Scheme DSL (Akku, Chicken, Racket)
  • r6rs-pffi - portable foreign-function interface for several implementations (R6RS; Home & Docs; Akku)

Events (2019)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].