Twenty Years of Scheme Requests for Implementation
Arthur A. Gleckler
SRFI Editor
| 0 | final | Feature-based conditional expansion construct |
| 1 | final | List Library |
| 2 | final | AND-LET*: an AND with local bindings, a guarded LET* special form |
| 3 | withdrawn | List-Set Library |
| 4 | final | Homogeneous numeric vector datatypes |
| 5 | final | A compatible let form with signatures and rest arguments |
| 6 | final | Basic String Ports |
| 7 | final | Feature-based program configuration language |
| 8 | final | receive: Binding to multiple values |
| 9 | final | Defining Record Types |
| 10 | final | #, external form |
| 11 | final | Syntax for receiving multiple values |
| 12 | withdrawn | Exception Handling |
| 13 | final | String Libraries |
| 14 | final | Character-set Library |
| 15 | withdrawn | Syntax for dynamic scoping |
| 16 | final | Syntax for procedures of variable arity |
| 17 | final | Generalized set! |
| 18 | final | Multithreading support |
| 19 | final | Time Data Types and Procedures |
| 20 | withdrawn | Simple object system |
| 21 | final | Real-time multithreading support |
| 22 | final | Running Scheme Scripts on Unix |
| 23 | final | Error reporting mechanism |
| 24 | withdrawn | Define-syntax in local lexical scopes |
| 25 | final | Multi-dimensional Array Primitives |
| 26 | final | Notation for Specializing Parameters without Currying |
| 27 | final | Sources of Random Bits |
| 28 | final | Basic Format Strings |
| 29 | final | Localization |
| 30 | final | Nested Multi-line Comments |
| 31 | final | A special form `rec' for recursive evaluation |
| 32 | withdrawn | Sort Libraries |
| 33 | withdrawn | Integer Bitwise-operation Library |
| 34 | final | Exception Handling for Programs |
| 35 | final | Conditions |
| 36 | final | I/O Conditions |
| 37 | final | args-fold: a program argument processor |
| 38 | final | External Representation for Data With Shared Structure |
| 39 | final | Parameter objects |
| 40 | withdrawn | A Library of Streams |
| 41 | final | Streams |
| 42 | final | Eager Comprehensions |
| 43 | final | Vector library |
| 44 | final | Collections |
| 45 | final | Primitives for Expressing Iterative Lazy Algorithms |
| 46 | final | Basic Syntax-rules Extensions |
| 47 | final | Array |
| 48 | final | Intermediate Format Strings |
| 49 | final | Indentation-sensitive syntax |
| 50 | withdrawn | Mixing Scheme and C |
| 51 | final | Handling rest list |
| 52 | withdrawn | Permitting and Supporting Extended Character Sets |
| 53 | withdrawn | Syntactic computations with computation-rules |
| 54 | final | Formatting |
| 55 | final | require-extension |
| 56 | withdrawn | Binary I/O |
| 57 | final | Records |
| 58 | final | Array Notation |
| 59 | final | Vicinity |
| 60 | final | Integers as Bits |
| 61 | final | A more general cond clause |
| 62 | final | S-expression comments |
| 63 | final | Homogeneous and Heterogeneous Arrays |
| 64 | final | A Scheme API for test suites |
| 65 | withdrawn | define-immutable: A Syntax to Define Identifiers With Immutable Values |
| 66 | final | Octet Vectors |
| 67 | final | Compare Procedures |
| 68 | withdrawn | Comprehensive I/O |
| 69 | final | Basic hash tables |
| 70 | final | Numbers |
| 71 | final | Extended LET-syntax for multiple values |
| 72 | final | Hygienic macros |
| 73 | withdrawn | Exact Infinities |
| 74 | final | Octet-Addressed Binary Blocks |
| 75 | withdrawn | R6RS Unicode data |
| 76 | withdrawn | R6RS Records |
| 77 | withdrawn | Preliminary Proposal for R6RS Arithmetic |
| 78 | final | Lightweight testing |
| 79 | withdrawn | Primitive I/O |
| 80 | withdrawn | Stream I/O |
| 81 | withdrawn | Port I/O |
| 82 | withdrawn | Stream Ports |
| 83 | withdrawn | R6RS Library Syntax |
| 84 | withdrawn | Universal Identifiers |
| 85 | withdrawn | Recursive Equivalence Predicates |
| 86 | final | MU and NU simulating VALUES & CALL-WITH-VALUES, and their related LET-syntax |
| 87 | final | => in case clauses |
| 88 | final | Keyword objects |
| 89 | final | Optional positional and named parameters |
| 90 | final | Extensible hash table constructor |
| 91 | withdrawn | Extended ports |
| 92 | withdrawn | ALAMBDA and ALAMBDA* |
| 93 | withdrawn | R6RS Syntax-Case Macros |
| 94 | final | Type-Restricted Numerical Functions |
| 95 | final | Sorting and Merging |
| 96 | final | SLIB Prerequisites |
| 97 | final | SRFI Libraries |
| 98 | final | An interface to access environment variables |
| 99 | final | ERR5RS Records |
| 100 | final | define-lambda-object |
| 101 | final | Purely Functional Random-Access Pairs and Lists |
| 102 | withdrawn | Procedure Arity Inspection |
| 103 | withdrawn | Library Files |
| 104 | withdrawn | Library Files Utilities |
| 105 | final | Curly-infix-expressions |
| 106 | final | Basic socket interface |
| 107 | final | XML reader syntax |
| 108 | final | Named quasi-literal constructors |
| 109 | final | Extended string quasi-literals |
| 110 | final | Sweet-expressions (t-expressions) |
| 111 | final | Boxes |
| 112 | final | Environment Inquiry |
| 113 | final | Sets and bags |
| 114 | withdrawn | Comparators |
| 115 | final | Scheme Regular Expressions |
| 116 | final | Immutable List Library |
| 117 | final | Mutable Queues |
| 118 | final | Simple adjustable-size strings |
| 119 | final | wisp: simpler indentation-sensitive scheme |
| 120 | final | Timer APIs |
| 121 | final | Generators |
| 122 | final | Nonempty Intervals and Generalized Arrays |
| 123 | final | Generic accessor and modifier operators |
| 124 | final | Ephemerons |
| 125 | final | Intermediate hash tables |
| 126 | final | R6RS-based hashtables |
| 127 | final | Lazy Sequences |
| 128 | final | Comparators (reduced) |
| 129 | final | Titlecase procedures |
| 130 | final | Cursor-based string library |
| 131 | final | ERR5RS Record Syntax (reduced) |
| 132 | final | Sort Libraries |
| 133 | final | Vector Library (R7RS-compatible) |
| 134 | final | Immutable Deques |
| 135 | final | Immutable Texts |
| 136 | final | Extensible record types |
| 137 | final | Minimal Unique Types |
| 138 | final | Compiling Scheme programs to executables |
| 139 | final | Syntax parameters |
| 140 | final | Immutable Strings |
| 141 | final | Integer division |
| 142 | withdrawn | Bitwise Operations |
| 143 | final | Fixnums |
| 144 | final | Flonums |
| 145 | final | Assumptions |
| 146 | final | Mappings |
| 147 | final | Custom macro transformers |
| 148 | final | Eager syntax-rules |
| 149 | final | Basic Syntax-rules Template Extensions |
| 150 | final | Hygienic ERR5RS Record Syntax (reduced) |
| 151 | final | Bitwise Operations |
| 152 | final | String Library (reduced) |
| 153 | withdrawn | Ordered Sets |
| 154 | final | First-class dynamic extents |
| 155 | final | Promises |
| 156 | final | Syntactic combiners for binary predicates |
| 157 | final | Continuation marks |
| 158 | final | Generators and Accumulators |
| 159 | final | Combinator Formatting |
| 160 | draft | Homogeneous numeric vector libraries |
| 161 | draft | Unifiable Boxes |
| 162 | draft | Comparators sublibrary |
| RS | Scheme: An Interpreter for Extended Lambda Calculus (AIM 349) | 1975 |
| R2RS | The Revised Report on Scheme, A Dialect of Lisp (AIM 452) | 1978 |
| R3RS | The Revised Revised Report on Scheme, or An UnCommon Lisp (AIM 848) | 1985 |
| IEEE-1178 | IEEE Standard for the Scheme Programming Language | 1990, 2008 |
| R4RS | Revised4 Report on the Algorithmic Language Scheme | 1991 |
| R5RS | Revised5 Report on the Algorithmic Language Scheme | 1998 |
| R6RS | Revised6 Report on the Algorithmic Language Scheme | 2007 |
| R7RS small | Revised7 Report on the Algorithmic Language Scheme | 2013 |
| R7RS large | Revised7 Report on the Algorithmic Language Scheme | in progress |
SRFI home