category-implementations


The most comprehensive list of Scheme implementations is in the scheme-faq .

Here is a quick-and-dirty list of a very select number of Scheme implementations.

Bigloo

Compiles Scheme to C, JVM and .NET.

Chez

A very fast cross-platform native code compiler (commercial) along with a free interpreter.

Chibi

A very small library intended for use as an extension and scripting language in C programs.

Chicken

A Scheme->C compiler with a good FFI?.

Cyclone

A brand-new Scheme-to-C compiler that allows practical application development using R7RS Scheme.

Elk

A Scheme based extension language kit.

Gambit

Scheme->C compiler. Also compiles to Javascript and working on an universal backend (PHP, Python, Ruby, Asm).

Gauche

This wiki runs on it. A scripting language scheme interpreter with good Unicode support.

Guile

The GNU Scheme interpreter, designed to have good integration with C programs. A nice extension language.

Ikarus

R6RS Scheme incremental compiler to i32 and i64 native code.

IronScheme?

R6RS Scheme for the .NET Framework.

kali-scheme-revival

A variant of Scheme48 for distributed computation.

Kawa

Runs on the JVM

Larceny

Is a simple and efficient R6RS runtime for scheme.

LIPS

R7RS interpreter written in JavaScript

LispMe

R4RS Scheme, but for Palm Os

Ocs

An R5RS Scheme interpreter in OCaml.

Ol

A purely functional dialect of R7RS Scheme. Small, embeddable, cross-platform. Has own FFI.

Pika-Scheme

A new implementation currently in prerelease stage.

PLT-Scheme

PLT Scheme is an umbrella name for a family of implementations of the Scheme language - DrScheme, MzScheme, MrEd.

Pocket-Scheme

A scheme for WinCE based handhelds.

RScheme

Compiles to C, has Dylan-like OO features.

Scheme48

The primary design goal was clarity and good design.

Schoca

A Scheme interpreter in Objective Caml.

SCM

Small and portable R5RS implementation. SLIB, by the same author, is nicelly integrated with SCM.

SCSH

The SCheme SHell, based on Scheme48. This adds a lot of very interesting facilities for POSIX system interfacing.

SISC

A Scheme interpreter in Java, making the whole Java library available to Scheme, and still being very fast (for an interpreter)

SISCWeb

The framework for creating web applications using the SISC interpreter.

Stalin

Scheme to C compiler

STKlos

A Scheme System with an Object System and TK integration

T

Is the name for an implementation and dialect of scheme

TinyScheme

A lightweight Scheme interpreter

Unlikely-Scheme

An embeddable C++ implementation

Ypsilon

R6RS interpreter

Riastradh

Is this list here really necessary? It is obviously biased heavily towards PLT and provides very little information beyond that. In any case, looking at the links in the Scheme FAQ's list would be much more informative, and it would seem a waste to duplicate the entirety of that list.


pitecus

I think having the list here on csw is better than just referring readers to the FAQ's list, as here entries can be easily added, adapted, expanded etc. In other words, the whole point of a wiki is that is doesn't tend to go out of date as a static HTML page such as the Scheme FAQ. As to the PLT bias, that is easily corrected, no?


Jorgen-Schäfer

I see this as a category listing: What implementations are mentioned on this wiki at all? As for the PLT bias, I do agree. Please feel free to improve the descriptions of the others, or move the PLT description on the implementation page...


r2q2

I reworded PLT's descritption so it's less biased. I also added kali to Scheme 48 because I don't think kali should have its own entry.


anon

I would appreciate the list containing some information about exactly what is required for the final runtime: Nothing, you end up with a native executable; vm or interpreter, with wrappers or without; dynamic libraries; other... This is often a critical choice if you aren't just making something that you'll run on the development machine or which warrant massive software installs on some well known platform on a production system somewhere. The final dependencies, if you will. In other words a practical description of the implementation in its use instead of theoretical.


Dan-Muresan

At this point, the implementation list is no longer biased, and is much more usable than the FAQ implementation table (which is pretty useless: it has names and URLs only). Suggestion: either list all implementations here, or expand the implementation table in the FAQ.


siflus

I needed to put together a cheap summary list of different scheme implementations for a friend. I can't vouch for its quality/accuracy, but with a little bit of formatting, it might be of use to the right person. I was originally interested in the last update and reason why a developer implemented their version of scheme, but I also included the targets and platform iff they were really easy to find. http://pastebinsucks.pastebin.com/m554a7454 (pardon the pastebinning of it. I'd feel guilty adding the contents of this to the page. Hopefully someone else will and keep it looking professional. ;) )



category-category