A catalog of the defined symbols, identifiers and other pieces of data used by Scheme standards and implementations.
Administration happens on the schemeregistry
mailing list (archives, subscribe). Feel free to suggest additions and corrections there. Source is in a git repository.
Registry ID: scheme-standards
Source file: scheme-standards.pose
ID | Name | Year | Series |
---|---|---|---|
r0rs | Scheme: An Interpreter for Extended Lambda Calculus | 1975 | AI Memo No. 349 |
r1rs | The Revised Report on Scheme | 1978 | AI Memo No. 452 |
r2rs | The Revised Revised Report on Scheme | 1985 | AI Memo No. 848 |
r3rs | Revised3 Report on the Algorithmic Language Scheme | 1986 | |
ieee-1178-1990 | IEEE Standard for the Scheme Programming Language | 1990 | IEEE 1178-1990 |
r4rs | Revised4 Report on the Algorithmic Language Scheme | 1991 | |
dsssl | Document Style Semantics and Specification Language | 1996 | ISO/IEC 10179:1996 |
r5rs | Revised5 Report on the Algorithmic Language Scheme | 1998 | |
r6rs | Revised6 Report on the Algorithmic Language Scheme | 2007 | |
r7rs | Revised7 Report on the Algorithmic Language Scheme (small language) | 2013 | |
r7rs-large | Revised7 Report on the Algorithmic Language Scheme (large language) |
Registry ID: scheme-id
Source file: scheme-id.pose
Scheme IDs for use in features
, cond-expand
, and many other places.
ID | Name | Contact |
---|---|---|
airship | Airship Scheme | Michael Babich |
bigloo | Bigloo | Manuel Serrano |
chezscheme | Chez Scheme | Kent Dybvig |
chibi | Chibi-Scheme | Alex Shinn |
chicken | CHICKEN | Felix Winkelmann |
cyclone | Cyclone | Justin Ethier |
gambit | Gambit Scheme | Marc Feeley |
gauche | Gauche | Shiro Kawai |
gerbil | Gerbil Scheme | Dimitris Vyzovitis |
guile | GNU Guile | Andy Wingo |
ikarus | Ikarus Scheme | Abdulaziz Ghuloum |
ironscheme | IronScheme | Llewellyn Pritchard |
jazz | JazzScheme | Guillaume Cartier |
kawa | Kawa | Per Bothner |
larceny | Larceny | William Clinger |
loko | Loko Scheme | Göran Weinholt |
meevax | Meevax | Tatsuya Yamasaki |
mit | MIT Scheme | Chris Hanson |
mosh | Mosh | Taro Minowa (Higepon) |
mzscheme | MzScheme | Matthew Flatt |
picrin | Picrin | Yuichi Nishiwaki |
racket | Racket | Matthew Flatt |
s7 | s7 | Bill Schottstaedt |
s9fes | Scheme 9 from Empty Space | Nils M Holm |
sagittarius | Sagittarius Scheme | Takashi Kato |
sigscheme | SigScheme | Kazuki Ohta |
stklos | STklos | Erick Gallesio |
tinyscheme | TinyScheme | Dimitrios Souflis |
tr7 | TR7 | José Bollo |
unsyntax | Unsyntax | Marc Nieper-Wißkirchen |
vicare | Vicare | Marco Maggi |
ypsilon | Ypsilon | Yoshikatsu Fujita |
Registry ID: operating-systems
Source file: operating-systems.pose
ID | Description |
---|---|
bsd | Operating system in BSD Unix family |
cygwin | Cygwin Unix emulator on Windows |
darwin | Operating system based on Darwin kernel (Apple macOS X, iOS) |
dragonfly | DragonFly BSD operating system |
freebsd | FreeBSD operating system |
gnu | Operating system with GNU userland |
gnu-linux | GNU/Linux operating system distribution |
linux | Operating system based on Linux kernel |
macosx | Apple MacOS X operating system (see also: darwin) |
netbsd | NetBSD operating system |
openbsd | OpenBSD operating system |
posix | POSIX-compatible operating system |
solaris | Operating system in Solaris family |
unix | Unix-like operating system |
windows | Operating system in Windows family |
Registry ID: machines
Source file: machines.pose
ID | Description |
---|---|
i386 | 32-bit Intel/AMD x86 processor |
ppc | PowerPC processor |
sparc | Sun SPARC processor |
x86-64 | 64-bit AMD/Intel x86 processor |
Registry ID: features
Source file: features.pose
ID | Description |
---|---|
64bit | Running on a 64-bit CPU (note: symbol starts with number) |
airship | Airship Scheme |
big-endian | The CPU byte order is big-endian |
bigloo | Bigloo |
bsd | Operating system in BSD Unix family |
chezscheme | Chez Scheme |
chibi | Chibi-Scheme |
chicken | CHICKEN |
clang | LLVM clang compiler [Chicken] |
clr | Running on a Common Language Runtime (.NET CLR) |
complex | Complex numbers are provided |
crypto | Crypto interface [Sagittarius] |
csi | Chicken Scheme interpreter |
cyclone | Cyclone |
cygwin | Cygwin Unix emulator on Windows |
darwin | Operating system based on Darwin kernel (Apple macOS X, iOS) |
dload | Dynamic loading of C libraries [Chicken] |
dragonfly | DragonFly BSD operating system |
dynamic-loading | Dynamic loading of C libraries [Chibi] |
exact-closed | The algebraic operations +, -, *, and expt (where the second argument is a non-negative integer) produce exact values given exact inputs |
exact-complex | Exact complex numbers are provided |
ffi | [Sagittarius] |
ffi-vargs | [Sagittarius] |
freebsd | FreeBSD operating system |
full-numeric-tower | All RnRS number types are implemented [Chicken] |
full-unicode | All Unicode characters present in Unicode version 6.0 are supported as Scheme characters |
gambit | Gambit Scheme |
gauche | Gauche |
gerbil | Gerbil Scheme |
gnu | Operating system with GNU userland |
gnu-linux | GNU/Linux operating system distribution |
guile | GNU Guile |
i386 | 32-bit Intel/AMD x86 processor |
ieee-float | Inexact numbers are IEEE 754 binary floating point values |
ikarus | Ikarus Scheme |
ilp32 | C language int, long and pointer types are all 32 bits wide |
ilp64 | C language int, long, and pointer types are all 64 its wide |
ironscheme | IronScheme |
jazz | JazzScheme |
jvm | Running on a Java Virtual Machine (JVM) |
kawa | Kawa |
larceny | Larceny |
linux | Operating system based on Linux kernel |
little-endian | The CPU byte order is little-endian |
llvm | Running on the LLVM compiler infrastructure |
loko | Loko Scheme |
lp64 | C language int type is 32 bits, long and pointer 64 bits wide |
macosx | Apple MacOS X operating system (see also: darwin) |
manyargs | [Chicken] |
meevax | Meevax |
mit | MIT Scheme |
mit/gnu | MIT/GNU Scheme |
modules | [Chibi] |
mosh | Mosh |
mzscheme | MzScheme |
netbsd | NetBSD operating system |
odbc | ODBC interface [Sagittarius] |
openbsd | OpenBSD operating system |
picrin | Picrin |
posix | POSIX-compatible operating system |
ppc | PowerPC processor |
ptables | [Chicken] |
r7rs | All R7RS Scheme implementations have this feature |
racket | Racket |
ratios | / with exact arguments produces an exact result when the divisor is nonzero |
regexp-backrefs | [SRFI 115] |
regexp-look-around | [SRFI 115] |
regexp-non-greedy | [SRFI 115] |
regexp-unicode | [SRFI 115] |
s7 | s7 |
s9fes | Scheme 9 from Empty Space |
sagittarius | Sagittarius Scheme |
sigscheme | SigScheme |
socket | Sockets interface [Sagittarius] |
solaris | Operating system in Solaris family |
sparc | Sun SPARC processor |
srfi-* | Scheme Request for Implementation number N implemented |
stklos | STklos |
swank | Common Lisp SWANK remote REPL protocol supported |
syntax-case | syntax-case macros are available |
termios | Termios interface [Sagittarius] |
threads | Multi-threading is supported (either green threads or OS threads) |
tinyscheme | TinyScheme |
tr7 | TR7 |
unix | Unix-like operating system |
unsyntax | Unsyntax |
uvector | [Chibi] |
vicare | Vicare |
windows | Operating system in Windows family |
x86-64 | 64-bit AMD/Intel x86 processor |
ypsilon | Ypsilon |
zlib | Zlib interface [Sagittarius] |
Registry ID: cond-expand
Source file: cond-expand.pose
ID | Description |
---|---|
(and expr ...) | True iif every expr is true. [SRFI 0] |
(compilation-target target ...) | True iif at least one target is supported. [Gambit] |
(library name) | True iif library name is importable. [R7RS] |
(not expr) | True iif expr is false. [SRFI 0] |
(or expr ...) | True iif at least one expr is true. [SRFI 0] |
Registry ID: library-names
Source file: library-names.pose
ID | Description |
---|---|
airship | Airship Scheme |
bigloo | Bigloo |
chezscheme | Chez Scheme |
chibi | Chibi-Scheme |
chicken | CHICKEN |
cyclone | Cyclone |
gambit | Gambit Scheme |
gauche | Gauche |
gerbil | Gerbil Scheme |
guile | GNU Guile |
ikarus | Ikarus Scheme |
ironscheme | IronScheme |
jazz | JazzScheme |
kawa | Kawa |
larceny | Larceny |
loko | Loko Scheme |
meevax | Meevax |
mit | MIT Scheme |
mosh | Mosh |
mzscheme | MzScheme |
picrin | Picrin |
racket | Racket |
rnrs | Standard Scheme (R6RS and up) |
s7 | s7 |
s9fes | Scheme 9 from Empty Space |
sagittarius | Sagittarius Scheme |
scheme | Standard Scheme (R7RS and up) |
sigscheme | SigScheme |
srfi | Scheme Requests for Implementation |
stklos | STklos |
tinyscheme | TinyScheme |
tr7 | TR7 |
unsyntax | Unsyntax |
vicare | Vicare |
ypsilon | Ypsilon |
Registry ID: library-names-scheme
Source file: library-names-scheme.pose
ID | Description |
---|---|
@vector | Homogeneous vectors [SRFI 160, R7RS Large: Tangerine Edition] |
base | [R7RS-small] |
bitwise | Bitwise operations [SRFI 151, R7RS Large: Tangerine Edition] |
box | Boxes [SRFI 111, R7RS Large: Red Edition] |
bytevector | Byte vectors [R7RS Large: Tangerine Edition] |
case-lambda | [R7RS-small] |
char | [R7RS-small] |
charset | Charset library [SRFI 14, R7RS Large: Red Edition] |
comparator | Comparators [SRFI 128, R7RS Large: Red Edition] |
complex | [R7RS-small] |
cxr | [R7RS-small] |
division | Integer division [SRFI 141, R7RS Large: Tangerine Edition] |
ephemeron | Ephemerons [SRFI 124, R7RS Large: Red Edition] |
eval | [R7RS-small] |
flonum | Flonums [SRFI 144, R7RS Large: Tangerine Edition] |
generator | Generators [SRFI 158, R7RS Large: Tangerine Edition] |
generator | Generators [SRFI 121, R7RS Large: Red Edition] |
hash-table | Hash tables [SRFI 125, R7RS Large: Red Edition] |
ideque | Immutable deques [SRFI 134, R7RS Large: Red Edition] |
ilist | Immutable lists [SRFI 116, R7RS Large: Red Edition] |
inexact | [R7RS-small] |
list | List library [SRFI 1, R7RS Large: Red Edition] |
list-queue | Queued-based lists [SRFI 117, R7RS Large: Red Edition] |
load | [R7RS-small] |
lseq | Lazy sequences [SRFI 127, R7RS Large: Red Edition] |
mapping | Mappings [SRFI 146, R7RS Large: Tangerine Edition] |
process-context | [R7RS-small] |
read | [R7RS-small] |
regex | Regular expressions [SRFI 115, R7RS Large: Tangerine Edition] |
repl | [R7RS-small] |
rlist | Functional, random-access pairs and lists [SRFI 101, R7RS Large: Red Edition] |
set | Sets and bags [SRFI 113, R7RS Large: Red Edition] |
show | Combinator Formatting [SRFI 159, R7RS Large: Tangerine Edition] |
sort | Sort libraries [SRFI 132, R7RS Large: Red Edition] |
stream | Streams library [SRFI 41, R7RS Large: Red Edition] |
text | Immutable strings [SRFI 135, R7RS Large: Red Edition] |
time | [R7RS-small] |
vector | Vector library [SRFI 133, R7RS Large: Red Edition] |
write | [R7RS-small] |
Registry ID: character-names
Source file: character-names.pose
ID | Escape | Description |
---|---|---|
#\alarm | \a | U+0007 [R6RS, R7RS] |
#\backspace | \b | U+0008 [R6RS, R7RS] |
#\bel |
| U+0007 [Chez Scheme] |
#\delete |
| U+007F [R6RS, R7RS] |
#\esc |
| U+001B [R6RS] |
#\escape |
| U+001B [R7RS] |
#\linefeed | \n | U+000A [R6RS] |
#\ls |
| U+2028 [Chez Scheme] |
#\nel |
| U+0085 [Chez Scheme] |
#\newline | \n | U+000A [R6RS, R7RS] |
#\nul |
| U+0000 [R6RS] |
#\null |
| U+0000 [R7RS] |
#\page |
| U+000C [R6RS] |
#\return | \r | U+000D [R6RS, R7RS] |
#\rubout |
| U+007F [Chez Scheme] |
#\space |
| U+0020 [R6RS, R7RS] |
#\tab | \t | U+0009 [R6RS, R7RS] |
#\vt |
| U+000B [Chez Scheme] |
#\vtab |
| U+000B [R6RS] |
Registry ID: hash-syntax
Source file: hash-syntax.pose
A quote ' next to a standard's or implementation's name means the syntax does not yield a self-evaluating object there, and must be quoted to form a valid expression.
ID | Description |
---|---|
#<n> | Object by serial number [Chicken, Gambit] |
#! | Identifier follows [R6RS+]; Unix script [SRFI 22]; #! ... !# comment [Guile] |
#"..." | Interpolated string [Gauche] |
#{...} | Gensym [Chez Scheme] |
#${...} | Binary blob [Chicken] |
#& | Box ['Chez, 'Gambit, Racket] |
#' | syntax [R6RS, syntax-case] |
#(...) | Vector [R7RS] |
#*"..." | Incomplete string [Gauche] |
#+ | Read-time conditional [Chicken] |
#, | unsyntax [R6RS, syntax-case]; Reader constructor [SRFI 10] |
#,@ | unsyntax-splicing [R6RS, syntax-case] |
#/.../ | Regular expression [Gauche, Kawa, LIPS] |
#: | Keyword object [Chicken, Guile, s7]; Keyword marker [Kawa, Racket]; Uninterned symbol [Gauche] |
#; | S-expression comment [R6RS, R7RS, SRFI 62] |
#<...> | Unreadable object [Chez Scheme, Chibi-Scheme, Chicken, Gambit, Gauche, Kawa, Mosh, Sagittarius]; XML literal [SRFI 107]; import reader macro from this library [Sagittarius] |
#<< | Multi-line string literal [Chicken, Gambit] |
#<n># | Datum reference [R7RS] |
#<n>= | Datum label [R7RS] |
#? | Debug macro [Gauche] |
#[...] | Character set [Gauche], Record [Chez Scheme] |
#\ | Literal character [R2RS+] |
#` | quasisyntax [R6RS, syntax-case]; legacy interpolated string [Gauche] |
#|...|# | Block comment [R6RS, R7RS, SRFI 30] |
#a | Array [SRFI 58, SRFI 163] |
#b | Binary integer [R2RS+] |
#c<n>(...) | n-bit complex vector [SRFI 160: n = 64, 128] |
#ci | Change to case insensitive identifiers [Chicken] |
#cs | Change to case sensitive identifiers [Chicken] |
#<n>d(...) | n-dimensional array [s7] |
#d | Decimal number [R2RS+] |
#e | Exact number [R2RS+] |
#f | Boolean false [R3RS+] |
#f<n>(...) | n-bit float vector [SRFI 4, 160: n = 32, 64] |
#false | Boolean false [R7RS] |
#<n>i(...) | n-dimensional signed integer array [s7] |
#i | Inexact number [R2RS+] |
#i<n>d(...) | n-dimensional signed integer array [s7] |
#lang | Declare which programming language is used [Racket] |
#o | Octal integer [R2RS+] |
#<n>r | Number in radix n [Chez Scheme] |
#<n>r(...) | n-dimensional real (i.e. float) array [s7] |
#r<n>d(...) | n-dimensional real (i.e. float) array [s7] |
#s<n>(...) | n-bit signed integer vector [SRFI 4, 160: n = 8, 16, 32, 64] |
#t | Boolean true [R3RS+] |
#true | Boolean true [R7RS] |
#<n>u(...) | n-dimensional byte array [s7] |
#u<n>(...) | n-bit unsigned integer vector [SRFI 4, 160: n = 8, 16, 32, 64] |
#u<n>d(...) | n-dimensional byte array [s7] |
#u8(...) | Bytevector [R7RS] |
#u8"..." | String-notated bytevector [SRFI 207] |
#vfx(...) | Fixnum vector aka fxvector [Chez Scheme] |
#vu8(...) | Bytevector [R6RS] |
#x | Hexadecimal integer [R2RS+] |
Registry ID: hash-bang-syntax
Source file: hash-bang-syntax.pose
ID | Role | Description |
---|---|---|
#!bwp | object | broken-weak-pair object [Chez Scheme] |
#!chezscheme | directive | change to Chez Scheme read syntax |
#!compatible | directive | R6RS+R7RS+keywords compatible syntax [Sagittarius] |
#!deprecated | directive | display warning message of deprecated library [Sagittarius] |
#!eof | object | end-of-file object [Chez Scheme, Chicken, Gambit, Kawa] |
#!err5rs | directive | change to R7RS/R6RS syntax with extensions [Larceny] |
#!false | object | the boolean value false [R2RS, archaic] |
#!fold-case | directive | change to case insensitive identifiers [R7RS] |
#!key | keyword | start keyword arguments in lambda list [DSSSL, SRFI 89] |
#!larceny | directive | implies #!no-fold-case and #!err5rs [Larceny] |
#!no-fold-case | directive | change to case sensitive identifiers [R7RS] |
#!no-overwrite | directive | deny overwriting exported variables [Sagittarius] |
#!nocache | directive | disable cache on the current loading file [Sagittarius] |
#!null | object | the empty list [R2RS, archaic]; Java null [Kawa] |
#!optional | keyword | start optional arguments in lambda list [SRFI 89, MIT Scheme] |
#!r5rs | directive | change to R7RS syntax with #!fold-case [Larceny] |
#!r6rs | directive | change to R6RS read syntax [R6RS] |
#!r7rs | directive | change to R7RS syntax with #!no-fold-case [Gauche, Larceny, Sagittarius] |
#!read-macro | directive | #!read-macro=name is the same as #<name> [Sagittarius] |
#!reader | directive | #!reader=name replaces the reader with that library [Sagittarius] |
#!rest | keyword | start rest argument in lambda list [SRFI 89, MIT Scheme] |
#!true | object | the boolean value true [R2RS, archaic] |
#!void | object | void object [Gambit, Kawa] |
Registry ID: filename-extensions
Source file: filename-extensions.pose
Extension | Stands for | Description |
---|---|---|
.scm | Scheme | Source code for any implementation or standard |
.sps | Scheme program source | R6RS program |
.sls | Scheme library source | R6RS (library ...) form |
.sld | Scheme library definition | R7RS (define-library ...) form |
.rkt | Racket | Racket source code with #lang at the top |
.scr | Scribe | Text document written using Scheme Scribe |
.scrbl | Scribble | Text document written using Scribble |
.ss | Scheme source | Equivalent to .scm |
.sc | Scheme | Equivalent to .scm [rare] |
.sch | Scheme | Equivalent to .scm [rare] |
.sps7 | Scheme program source | R7RS program [rare] |
.six | Scheme infix | Scheme + infix lexical syntax [Gambit] |
.spi | Scheme package interface | ScmPkg package definition file [Bigloo, STklos] |
.stk | STk | Scheme code written in the STk/STklos dialect |
.stklos | STklos | Scheme code written in the STklos dialect |
.ostk | Object STk | Compiled STklos Scheme code |
.brl | Beautiful Report Language | Text document in BRL [Kawa] |
.krl | Kawa Report Language | Text document in KRL [Kawa] |
.bin | Binary | SCode compiled source file [MIT Scheme] |
.binld | Binary library definition | SCode compiled R7RS library [MIT Scheme] |
.com | Compiled | Native code compiled source file [MIT Scheme] |
.comld | Compiled library definition | Native code compiled R7RS library [MIT Scheme] |
.ext | Extension | Auxiliary for native code compiled source file [MIT Scheme] |
.bci | Binary compiler info | Auxiliary for native code compiled source file [MIT Scheme] |
.bcild | Binary compiler info, library definition | Auxiliary for native code compiled R7RS library [MIT Scheme] |
Registry ID: version-properties
Source file: version-properties.pose
ID | Description | Type |
---|---|---|
build.configure | Command line arguments to configure script | string ... |
build.date | Date (and time) of build | iso-date-string |
build.git.branch | Git repository state at build time - branch | string |
build.git.commit | Git repository state at build time - commit hash | string |
build.git.modified | Git repository state at build time - dirty files | string ... |
build.git.tag | Git repository state at build time - tag | string |
build.platform | OS/machine/etc. for which build was made | string |
c.compile | C programming language compiler command | string ... |
c.library.compile | Command to compile C shared library to be loaded by the implementation | string ... |
c.library.extension | File name extension (with dot, e.g. ".so" or ".dylib") for shared libraries to be loaded by the implementation | string |
c.library.link | Command to link C shared library to be loaded by the implementation | string ... |
c.link | C programming language linker command | string ... |
c.type-bits | C programming language data type sizes | (symbol integer) ... |
c.version | C programming language compiler version | string |
command | Canonical shell command name for this program | string |
encodings | Character encodings supported by the implementation, default first | symbol ... |
image.date | Date (and time) the Scheme image was saved | iso-date-string |
image.file | File the Scheme image is loaded from | string |
install-dir | Installation prefix directory (e.g. /usr/local) | string |
jvm.* | Java system properties | string |
languages | Programming languages supported by the implementation | symbol ... |
os.env.* | Runtime environment variables | string |
os.stdio | Stdin, stdout, and stderr file types | symbol symbol symbol |
os.uname | Runtime Unix uname values | string string string |
release | Last release version number | string |
release.date | Last release date | iso-date-string |
release.name | Last release codename | string |
scheme.features | List of cond-expand features present | symbol ... |
scheme.id | The scheme-id of this implementation | symbol |
scheme.path | Directories to search for Scheme libraries | string ... |
scheme.srfi | Supported SRFIs (list may not be exhaustive) | integer ... |
scheme.srfi.count | How many SRFIs are known to be supported | integer |
threads | Which backends can be used for multithreading on this system? Known values: pthreads, win32 | symbol ... |
website | URL of the implementation's website | string |
Registry ID: log-message-fields
Source file: log-message-fields.pose
Symbol | Mandatory | Meaning | Reference |
---|---|---|---|
SEVERITY | yes | severity as an exact integer in [0,7] | RFC 5424, 6.2.1 |
MESSAGE | yes | free-form message as a string | |
FACILITY | no | facility as an exact integer | RFC 5424, 6.2.1 |
APP-NAME | no | APP-NAME as a string | RFC 5424, 6.2.5 |
PROCID | no | PROCID as a string | RFC 5424, 6.2.6 |
MSGID | no | MSGID as a string | RFC 5424, 6.2.7 |
MESSAGE_ID | no | 128-bit message identifier | systemd.journal-fields(7) |
TOPIC | no | topic (or equivalent) of the logger | Racket |
Registry ID: codesets
Source file: codesets.pose
ID | Description | Examples |
---|---|---|
errno | C/Unix errno numbers on current machine | EPERM ENOENT ESRCH |
signal | C/Unix signal numbers on current machine | SIGHUP SIGINT SIGQUIT |