Version 43 (modified by cowan, 4 weeks ago) (diff)


WG2 Input Docket

This docket contains work items that need to be voted on for possible inclusion into R7RS-large. See WG2Dockets for other dockets.

Bidirectional hash maps:

Binary I/O helpers: procedures relevant to reading and writing low-level binary formats, such as

  • 8/16/32/64 bit signed/unsigned integers in little-endian/big-endian/network-endian order
  • null terminated ASCII strings
  • non-byte-aligned bit fields
  • seeking to arbitrary positions
  • reading/writing packed representations of Scheme records

(see SRFI 56)

Custom I/O ports: R6RS

Default exception handler controls:

Features, allowing libraries to add:

Greek lambda syntax: define syntax equivalent to "lambda" whose identifier is a single Unicode U+03BB character (

Identifier-syntax: R6RS

R6RS versions of real?, rational?, integer?: these are false if the imaginary part is an inexact zero; the issue here is what to name them to avoid confusion

Interrupts, timers, signals:

Jiffy cleanup: Arcane Sentiment blog post

Macro expander(s) available at run time:

Maximal and minimal elements of lists and vectors:

number->string variant with control for significant digits: Vincent Manis proposal, R6RS

number->string and string->number with non-ASCII decimal digits: NumberStringUnicode

Observable objects: Java

Port type detector: see #177

R6RS compatibility: whole libraries or cherry-picked procedures:

Record external representations: SRFI 108

standard-*-port routines: R6RS

Tree library: at least tree=? and tree-copy, probably Common Lisp SUBLIS and NSUBLIS, fold, unfold, map ...

Thread-local storage:

Unquote with multiple arguments: see #123

User-specified syntax-transformers:

Convenience package(s) for commonly desired sets of bindings:

  • (scheme r7rs-small) - all bindings in the small language
  • (scheme r7rs-red) - the Red Edition's bindings