gitmyhub

ChezScheme

Scheme ★ 7.3k updated 10d ago

Chez Scheme

Chez Scheme is a fast, full-featured Scheme programming language system open-sourced by Cisco that compiles code to optimized machine instructions automatically. It runs on Windows, Mac, Linux, BSD, Android, and iOS.

SchemeCsetup: hardcomplexity 4/5

Chez Scheme is both a programming language and a complete system for running programs written in that language. The language is a version of Scheme, which belongs to the Lisp family of programming languages. Cisco developed and maintained it for decades before open-sourcing it.

The core idea behind Chez Scheme is speed. Rather than interpreting code line by line at runtime, it compiles code into optimized machine instructions. This compilation happens automatically whenever you load a file or type an expression into the interactive shell, so you do not need a separate build step for everyday use. You can also precompile files into a stored binary form that gets recompiled automatically when the source changes. The compiler can also take an entire program and all its dependencies and combine them into a single binary file.

Beyond speed, Chez Scheme supports the full set of features you would expect from a modern Scheme implementation: functions that can be passed around and stored like any other value, proper handling of recursive function calls that do not grow the call stack, continuations (a way to save and restore the execution state of a program), user-defined data types, hygienic macros for extending the language's syntax, and exception handling.

The system includes tools for interacting with code written in C and other languages, multi-threading support for taking advantage of multiple CPU cores, and non-blocking input/output for programs that need to handle many tasks at once. The built-in programming environment has a source-level debugger, memory inspection tools, a profiler that shows which parts of your code run most often, and a multi-line interactive editor for working with expressions that span several lines.

Chez Scheme runs on Windows, Mac, Linux, FreeBSD, OpenBSD, NetBSD, Solaris, Android, iOS, and several other platforms, covering both x86 and ARM processor families.

Where it fits