HOME

TheInfoList



OR:

Chez Scheme is a
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
, a
dialect The term dialect (from Latin , , from the Ancient Greek word , 'discourse', from , 'through' and , 'I speak') can refer to either of two distinctly different types of linguistic phenomena: One usage refers to a variety of a language that is a ...
and
implementation Implementation is the realization of an application, or execution of a plan, idea, model, design, specification, standard, algorithm, or policy. Industry-specific definitions Computer science In computer science, an implementation is a real ...
of the language Scheme which is a type of Lisp. It uses an
incremental Increment or incremental may refer to: *Incrementalism, a theory (also used in politics as a synonym for gradualism) *Increment and decrement operators, the operators ++ and -- in computer programming *Incremental computing *Incremental backup, wh ...
native-code
compiler In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs tha ...
to produce native
binary file A binary file is a computer file that is not a text file. The term "binary file" is often used as a term meaning "non-text file". Many binary file formats contain parts that can be interpreted as text; for example, some computer document fil ...
s for the
x86 x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel based on the Intel 8086 microprocessor and its 8088 variant. The 8086 was intr ...
(
IA-32 IA-32 (short for "Intel Architecture, 32-bit", commonly called i386) is the 32-bit version of the x86 instruction set architecture, designed by Intel and first implemented in the 80386 microprocessor in 1985. IA-32 is the first incarnation o ...
,
x86-64 x86-64 (also known as x64, x86_64, AMD64, and Intel 64) is a 64-bit version of the x86 instruction set, first released in 1999. It introduced two new modes of operation, 64-bit mode and compatibility mode, along with a new 4-level paging ...
), PowerPC, and
SPARC SPARC (Scalable Processor Architecture) is a reduced instruction set computer (RISC) instruction set architecture originally developed by Sun Microsystems. Its design was strongly influenced by the experimental Berkeley RISC system develope ...
processor architectures. It has supported the
R6RS Scheme is a dialect of the Lisp family of programming languages. Scheme was created during the 1970s at the MIT AI Lab and released by its developers, Guy L. Steele and Gerald Jay Sussman, via a series of memos now known as the Lambda Papers. It ...
standard since version 7.9.1. It is free and open-source software released under an Apache License, version 2.0. It was first released in 1985, by
R. Kent Dybvig R. Kent Dybvig is a professor emeritus of computer science at Indiana University Bloomington, in Bloomington, Indiana. His research focuses on programming languages, and he is the principal developer of the optimizing Chez Scheme compiler and runt ...
, originally licensed as
proprietary software Proprietary software is software that is deemed within the free and open-source software to be non-free because its creator, publisher, or other rightsholder or rightsholder partner exercises a legal monopoly afforded by modern copyright and i ...
, and then released as
open-source software Open-source software (OSS) is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose. Op ...
on
GitHub GitHub, Inc. () is an Internet hosting service for software development and version control using Git. It provides the distributed version control of Git plus access control, bug tracking, software feature requests, task management, continu ...
on 2016-05-13 with version 9.4. Petite Chez Scheme is a sibling implementation which uses a threaded interpreter design instead of Chez Scheme's incremental native-code compiler. Programs written for Chez Scheme run unchanged in Petite Chez Scheme, as long as they do not depend on using the compiler (for example
foreign function interface A foreign function interface (FFI) is a mechanism by which a program written in one programming language can call routines or make use of services written in another. Naming The term comes from the specification for Common Lisp, which explicit ...
is only available in the compiler). Petite Chez Scheme was originally freely distributable and is now distributed open-source as part of Chez Scheme.


History

The first version of Chez Scheme was developed by R. Kent Dybvig and completed in 1984. Some copies of the original version were distributed in 1985. Cadence Research Systems developed Chez Scheme until the company was purchased by
Cisco Cisco Systems, Inc., commonly known as Cisco, is an American-based multinational digital communications technology conglomerate corporation headquartered in San Jose, California. Cisco develops, manufactures, and sells networking hardware, ...
Systems in 2011. Cisco open-sourced Chez Scheme in 2016.


Performance

In one series of benchmarks, Chez Scheme was among the fastest available Scheme implementations on the Sun SPARC processor architecture, while Petite Chez Scheme was among the slowest implementations on the more common
x86 x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel based on the Intel 8086 microprocessor and its 8088 variant. The 8086 was intr ...
(
Pentium Pentium is a brand used for a series of x86 architecture-compatible microprocessors produced by Intel. The original Pentium processor from which the brand took its name was first released on March 22, 1993. After that, the Pentium II and P ...
32-bit) processor architecture.


Libraries

Chez Scheme has a
windowing system In computing, a windowing system (or window system) is software that manages separately different parts of display screens. It is a type of graphical user interface (GUI) which implements the WIMP (windows, icons, menus, pointer) paradigm fo ...
and
computer graphics Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great de ...
package called the Scheme Widget Library, and is supported by the portable
SLIB SLIB is computer software, a library for the programming language Scheme, written by Aubrey Jaffer. It uses only standard Scheme syntax and thus works on many different Scheme implementations, such as Bigloo, Chez Scheme, Extension Language Kit ...
library A library is a collection of materials, books or media that are accessible for use and not just for display purposes. A library provides physical (hard copies) or digital access (soft copies) materials, and may be a physical location or a vir ...
.. However the widget library is no longer maintained.


References


External links

*
The Development of Chez Scheme
by R. Kent Dybvig *
Chez Scheme formal project page on GitHub
*
Chez Scheme on the Scheme wiki
Formerly proprietary software Scheme (programming language) compilers Scheme (programming language) interpreters Scheme (programming language) implementations Software using the Apache license R6RS Scheme {{Compu-prog-stub