SRFI

Scheme Requests for Implementation: http://srfi.schemers.org/


Final SRFIs and their support.

(The number of supporting implementations are derived from the '$$srfis' macro in each implementation's page. To see which implementations support the srfi, follow the link on the srfi number.)

SRFI-0: Feature-based conditional expansion construct[20 implementations]
SRFI-1: List Library[24 implementations]
SRFI-2: AND-LET*: an AND with local bindings, a guarded LET* special form[23 implementations]
SRFI-4: Homogeneous numeric vector datatypes[13 implementations]
SRFI-5: A compatible let form with signatures and rest arguments[5 implementations]
SRFI-6: Basic String Ports[22 implementations]
SRFI-7: Feature-based program configuration language[7 implementations]
SRFI-8: receive: Binding to multiple values[24 implementations]
SRFI-9: Defining Record Types[22 implementations]
SRFI-10: #, external form[7 implementations]
SRFI-11: Syntax for receiving multiple values[14 implementations]
SRFI-13: String Libraries[17 implementations]
SRFI-14: Character-set Library[20 implementations]
SRFI-16: Syntax for procedures of variable arity[16 implementations]
SRFI-17: Generalized set![11 implementations]
SRFI-18: Multithreading support[11 implementations]
SRFI-19: Time Data Types and Procedures[15 implementations]
SRFI-21: Real-time multithreading support[1 implementation]
SRFI-22: Running Scheme Scripts on Unix[9 implementations]
SRFI-23: Error reporting mechanism[20 implementations]
SRFI-25: Multi-dimensional Array Primitives[11 implementations]
SRFI-26: Notation for Specializing Parameters without Currying[16 implementations]
SRFI-27: Sources of Random Bits[19 implementations]
SRFI-28: Basic Format Strings[16 implementations]
SRFI-29: Localization[7 implementations]
SRFI-30: Nested Multi-line Comments[11 implementations]
SRFI-31: A special form `rec' for recursive evaluation[13 implementations]
SRFI-34: Exception Handling for Programs[11 implementations]
SRFI-35: Conditions[8 implementations]
SRFI-36: I/O Conditions[3 implementations]
SRFI-37: args-fold: a program argument processor[13 implementations]
SRFI-38: External Representation for Data With Shared Structure[15 implementations]
SRFI-39: Parameter objects[18 implementations]
SRFI-41: Streams[13 implementations]
SRFI-42: Eager Comprehensions[13 implementations]
SRFI-43: Vector library[12 implementations]
SRFI-44: Collections[1 implementation]
SRFI-45: Primitives for Expressing Iterative Lazy Algorithms[11 implementations]
SRFI-46: Basic Syntax-rules Extensions[5 implementations]
SRFI-47: Array[4 implementations]
SRFI-48: Intermediate Format Strings[9 implementations]
SRFI-49: Indentation-sensitive syntax[2 implementations]
SRFI-51: Handling rest list[4 implementations]
SRFI-54: Formatting[5 implementations]
SRFI-55: require-extension[8 implementations]
SRFI-57: Records[3 implementations]
SRFI-58: Array Notation[3 implementations]
SRFI-59: Vicinity[6 implementations]
SRFI-60: Integers as Bits[18 implementations]
SRFI-61: A more general cond clause[11 implementations]
SRFI-62: S-expression comments[10 implementations]
SRFI-63: Homogeneous and Heterogeneous Arrays[7 implementations]
SRFI-64: A Scheme API for test suites[9 implementations]
SRFI-66: Octet Vectors[8 implementations]
SRFI-67: Compare Procedures[9 implementations]
SRFI-69: Basic hash tables[15 implementations]
SRFI-70: Numbers[2 implementations]
SRFI-71: Extended LET-syntax for multiple values[5 implementations]
SRFI-72: Hygienic macros[1 implementation]
SRFI-74: Octet-Addressed Binary Blocks[5 implementations]
SRFI-78: Lightweight testing[10 implementations]
SRFI-86: MU and NU simulating VALUES & CALL-WITH-VALUES, and their related LET-syntax[3 implementations]
SRFI-87: => in case clauses[8 implementations]
SRFI-88: Keyword objects[5 implementations]
SRFI-89: Optional positional and named parameters[2 implementations]
SRFI-90: Extensible hash table constructor[1 implementation]
SRFI-94: Type-Restricted Numerical Functions[1 implementation]
SRFI-95: Sorting and Merging[8 implementations]
SRFI-96: SLIB Prerequisites[4 implementations]
SRFI-97: SRFI Libraries[2 implementations]
SRFI-98: An interface to access environment variables[13 implementations]
SRFI-99: ERR5RS Records[6 implementations]
SRFI-100: define-lambda-object[2 implementations]
SRFI-101: Purely Functional Random-Access Pairs and Lists[6 implementations]
SRFI-105: Curly-infix-expressions[2 implementations]
SRFI-106: Basic socket interface[4 implementations]
SRFI-107: XML reader syntax[1 implementation]
SRFI-108: Named quasi-literal constructors[1 implementation]
SRFI-109: Extended string quasi-literals[1 implementation]
SRFI-110: Sweet-expressions (t-expressions)[1 implementation]
SRFI-111: Boxes[8 implementations]
SRFI-112: Environment Inquiry[5 implementations]
SRFI-113: Sets and bags[6 implementations]
SRFI-115: Scheme Regular Expressions[5 implementations]
SRFI-116: Immutable List Library[5 implementations]
SRFI-117: Queues based on lists[7 implementations]
SRFI-118: Simple adjustable-size strings[3 implementations]
SRFI-119: wisp: simpler indentation-sensitive scheme[0 implementations]
SRFI-120: Timer APIs[1 implementation]
SRFI-122: Nonempty Intervals and Generalized Arrays[1 implementation]
SRFI-123: Generic accessor and modifier operators[2 implementations]
SRFI-124: Ephemerons[5 implementations]
SRFI-125: Intermediate hash tables[6 implementations]
SRFI-126: R6RS-based hashtables[3 implementations]
SRFI-127: Lazy Sequences[6 implementations]
SRFI-128: Comparators (reduced)[8 implementations]
SRFI-129: Titlecase procedures[6 implementations]
SRFI-130: Cursor-based string library[5 implementations]
SRFI-131: ERR5RS Record Syntax (reduced)[5 implementations]
SRFI-132: Sort Libraries[6 implementations]
SRFI-133: Vector Library (R7RS-compatible)[7 implementations]
SRFI-134: Immutable Deques[4 implementations]
SRFI-135: Immutable Texts[4 implementations]
SRFI-136: Extensible record types[1 implementation]
SRFI-137: Minimal Unique Types[1 implementation]
SRFI-138: Compiling Scheme programs to executables[1 implementation]
SRFI-139: Syntax parameters[2 implementations]
SRFI-140: Immutable Strings[0 implementations]
SRFI-141: Integer division[6 implementations]
SRFI-143: Fixnums[6 implementations]
SRFI-144: Flonums[4 implementations]
SRFI-145: Assumptions[6 implementations]
SRFI-146: Mappings[2 implementations]
SRFI-147: Custom macro transformers[2 implementations]
SRFI-148: Eager syntax-rules[0 implementations]
SRFI-149: Basic Syntax-rules Template Extensions[6 implementations]
SRFI-150: Hygienic ERR5RS Record Syntax (reduced)[0 implementations]
SRFI-151: Bitwise Operations[6 implementations]
SRFI-152: String Library (reduced)[3 implementations]
SRFI-154: First-class dynamic extents[2 implementations]
SRFI-155: Promises[0 implementations]
SRFI-156: Syntactic combiners for binary predicates[2 implementations]
SRFI-157: Continuation marks[0 implementations]
SRFI-158: Generators and Accumulators[4 implementations]
SRFI-160: Homogeneous numeric vector libraries[1 implementation]
SRFI-161: Unifiable Boxes[1 implementation]
SRFI-162: Comparators sublibrary[1 implementation]
SRFI-163: Enhanced array literals[1 implementation]
SRFI-164: Enhanced multi-dimensional Arrays[0 implementations]
SRFI-165: The Environment Monad[0 implementations]
SRFI-166?: Monadic Formatting[0 implementations]
SRFI-167: Ordered Key Value Store[0 implementations]
SRFI-168: Generic Tuple Store Database[0 implementations]
SRFI-169: Underscores in numbers[1 implementation]
SRFI-170?: POSIX API[0 implementations]
SRFI-171: Transducers[2 implementations]
SRFI-172: Two Safer Subsets of R7RS[0 implementations]
SRFI-173: Hooks[2 implementations]
SRFI-174: POSIX Timespecs[2 implementations]
SRFI-175: ASCII character library[2 implementations]
SRFI-176: Version flag[3 implementations]
SRFI-178?: Bitvector library[0 implementations]
SRFI-179: Nonempty Intervals and Generalized Arrays (Updated)[0 implementations]
SRFI-180: JSON[1 implementation]
SRFI-181: Custom ports (including transcoded ports)[0 implementations]
SRFI-185: Linear adjustable-length strings[2 implementations]
SRFI-188: Splicing binding constructs for syntactic keywords[2 implementations]
SRFI-189: Maybe and Either: optional container types[2 implementations]
SRFI-190: Coroutine Generators[1 implementation]
SRFI-192?: Port Positioning[0 implementations]
SRFI-193?: Command line[0 implementations]
SRFI-194?: Random data generators[0 implementations]
SRFI-195?: Multiple-value boxes[0 implementations]
SRFI-196?: Range Objects[0 implementations]
SRFI-197?: Pipeline Operators[0 implementations]
SRFI-203?: A Simple Picture Language in the Style of SICP[0 implementations]
SRFI-207?: String-notated bytevectors[0 implementations]