François Pinard's site

SRFIs





1   SRFI index

1.1   Final

  • 0 — Feature-based conditional expansion construct
  • 1 — List Library, see SRFI-1
  • 2 — AND-LET*: an AND with local bindings, a guarded LET* special form
  • 4 — Homogeneous numeric vector datatypes
  • 5 — A compatible let form with signatures and rest arguments
  • 6 — Basic String Ports
  • 7 — Feature-based program configuration language
  • 8 — receive: Binding to multiple values
  • 9 — Defining Record Types
  • 10 — Sharp-Comma External Form
  • 11 — Syntax for receiving multiple values
  • 13 — String Library
  • 14 — Character-Set Library
  • 16 — Syntax for procedures of variable arity
  • 17 — Generalized set!
  • 18 — Multithreading support
  • 19 — Time Data Types and Procedures
  • 21 — Real-time multithreading support
  • 22 — Running Scheme Scripts on Unix
  • 23 — Error reporting mechanism
  • 25 — Multi-dimensional Array Primitives
  • 26 — Notation for Specializing Parameters without Currying
  • 27 — Sources of Random Bits
  • 28 — Basic Format Strings
  • 29 — Localization
  • 30 — Nested Multi-line Comments
  • 31 — A special form for recursive evaluation
  • 34 — Exception Handling for Programs
  • 35 — Conditions
  • 36 — I/O Conditions
  • 37 — args-fold: a program argument processor
  • 38 — External Representation for Data With Shared Structure
  • 39 — Parameter objects
  • 40 — A Library of Streams (deprecated)
  • 41 — Streams
  • 42 — Eager Comprehensions
  • 43 — Vector Library
  • 44 — Collections
  • 45 — Primitives for expressing iterative lazy algorithms
  • 46 — Basic Syntax-rules Extensions
  • 47 — Array
  • 48 — Intermediate Format Strings
  • 49 — Indentation-sensitive syntax
  • 51 — Handling rest list
  • 54 — Formatting
  • 55 — require-extension
  • 57 — Records
  • 58 — Array Notation
  • 59 — Vicinity
  • 60 — Integers as Bits
  • 61 — A more general cond clause
  • 62 — S-expression comments
  • 63 — Homogeneous and Heterogeneous Arrays
  • 64 — A Scheme API for test suites
  • 66 — Octet Vectors
  • 67 — Compare Procedures
  • 69 — Basic hash tables
  • 70 — Numbers
  • 71 — LET-syntax for multiple values
  • 72 — Simple hygienic macros
  • 74 — Octet-Addressed Binary Blocks
  • 78 — Lightweight testing
  • 86 — MU and NU simulating VALUES & CALL-WITH-VALUES, and their related LET-syntax
  • 87 — => in case clauses
  • 88 — Keyword Objects
  • 89 — Optional and named parameters
  • 90 — Extensible hash table constructor
  • 94 — Type-Restricted Numerical Functions
  • 95 — Sorting and Merging
  • 96 — SLIB Prerequisites
  • 97 — SRFI Libraries
  • 98 — An interface to access environment variables
  • 99 — ERR5RS Records

1.2   Draft

  • 100 — define-lambda-object
  • 101 — Purely Functional Random-Access Pairs and Lists
  • 102 — Procedure Arity Inspection
  • 103 — Library Files
  • 104 — Library Files Utilities

1.3   Withdrawn

  • 3 — List-Set Library
  • 12 — Exception Handling
  • 15 — Syntax for dynamic scoping
  • 20 — Simple object system
  • 24 — Define-syntax in local lexical scopes
  • 32 — Sort Libraries
  • 33 — Integer Bitwise-operation Library
  • 50 — Mixing Scheme and C
  • 52 — Permitting and Supporting Extended Character Sets
  • 53 — Syntactic computations with computation-rules
  • 56 — Binary I/O
  • 65 — define-immutable: A Syntax to Define Identifiers With Immutable Values
  • 68 — Comprehensive I/O
  • 73 — Exact Infinities
  • 75 — R6RS Unicode data
  • 76 — R6RS Records
  • 77 — Preliminary Proposal for R6RS Arithmetic
  • 79 — Primitive I/O
  • 80 — Stream I/O
  • 81 — Port I/O
  • 82 — Stream Ports
  • 83 — R6RS Library Syntax
  • 84 — Universal Identifiers
  • 85 — Recursive Equivalence Predicates
  • 91 — Extended ports
  • 92 — ALAMBDA and ALAMBDA*
  • 93 — R6RS Syntax-Case Macros