# Awesome Scheme

> A curated list of really awesome Scheme materials, tools and resources.

## Contents

- Frameworks
- Resources
- Languages

## Languages

A list of Languages implemented in Scheme.

- Pie - Pie is a little language with dependent types that accompanies The Little Typer.

## Frameworks

A list of Frameworks for Scheme.

- Artanis - GNU Artanis aims to be a web application framework for Scheme.

## Resources

A list of resources, books and references about Scheme.

### Books

- Structure and Interpretation of Computer Programs 2ed - A prime example of a masterpiece. A great intro to Computer science and a really good practice for learning Scheme. Highly recommended.
- An Introduction to Scheme and its Implementation - Learn and use Scheme. Great Resource.
- The Scheme Programming Language 4ed - Prime reference book.
- Teach Yourself Scheme - Nice Scheme tutorial.

### Videos

- Structure and Interpretation of Computer Programs - Twenty video lectures by Hal Abelson and Gerald Jay Sussman are a complete presentation of the course of Structure and Interpretation of Computer Programs. Must see.

### Websites

- Schemers - The improper list of Scheme resources. A prime reference site.
- Community Scheme Wiki - Wiki page for Scheme.
- SRFI - Scheme requests for implementation.
- The Adventures of a Pythonista in Schemeland - Tutorial for Scheme targeted for Python Developers.
- r5rs - The official Scheme language definition and reference.
- Scheme Repl - Online Scheme REPL.
- Reddit handle - Reddit page on Scheme.

### Implementations

- Racket Lang - The most confortable enviroment to start working with Scheme. It offers great documentation and an awesome IDE. Highly Recommended.
- Chez Scheme - The world’s fastest and most reliable implementation of Scheme, originally developed by Kent Dybvig, bought and open-sourced by Cisco. It has built Racket’s compiler+JIT & GC too, by project Racket-on-Chez.
- Chicken Scheme - Portable Scheme Compiler that works well. Has nice documentation and active support.
- Gambit Scheme - Another complete, portable, efficient and reliable implementation.
- Schibi Scheme - Minimal Scheme Implementation for use as an Extension Language.
- Guile Scheme - Gnus Scheme Implementation and Programming environment.
- Kawa Scheme - Runs on the JVM. Part of the Kawa language Framework.

## Contribute

Contributions welcome! Read the contribution guidelines first.

## License

To the extent possible under law, Theo Despoudis has waived all copyright and related or neighboring rights to this work.