-
Notifications
You must be signed in to change notification settings - Fork 17
/
Copy pathSUPPORTED-SRFIS
145 lines (138 loc) · 5.56 KB
/
SUPPORTED-SRFIS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
STKLOS SUPPORTED SRFIS
The "Scheme Requests for Implementation" (SRFI) process is an approach
to help Scheme users to write portable and yet useful code. It is a
forum for people interested in coordinating libraries and other
additions to the Scheme language between implementations.
STklos tries to supports as much as possible the "Final" SRFIs. For a
definition of what is a final SRFI, you should have a look at the
SRFI home page at http://srfi.schemers.org/
Any help for supporting new SRFIs in STklos is welcome.
The list of the implemented SRFIs in this version is given below (the ones
implemented in latest version is available at https://stklos.net/srfi.html):
- SRFI-0: Feature-based conditional expansion construct
- SRFI-1: List Library
- SRFI-2: AND-LET*: an AND with local bindings, a guarded LET* special form
- SRFI-4: Homogeneous numeric vector datatypes
- SRFI-5: A compatible let form with signatures and rest arguments
- SRFI-6: Basic String Ports
- SRFI-7: Feature-based program configuration language
- SRFI-8: Receive: Binding to multiple values
- SRFI-9: Defining Record Types
- SRFI-10: Sharp Comma External Form
- SRFI-11: Syntax for receiving multiple values
- SRFI-13: String Library
- SRFI-14: Character-Set Library
- SRFI-15: Syntax for dynamic scoping (withdrawn)
- SRFI-16: Syntax for procedures of variable arity
- SRFI-17: Generalized set!
- SRFI-18: Multithreading support
- SRFI-19: Time Data Types and Procedures
- SRFI-22: Running Scheme Scripts on Unix
- SRFI-23: Error reporting mechanism
- SRFI-25: Multi-dimensional Arrays
- SRFI-26: Notation for Specializing Parameters without Currying
- SRFI-27: Source of random bits
- SRFI-28: Basic Format Strings
- SRFI-29: Localization
- SRFI-30: Nested Multi-line Comments
- SRFI-31: A special form for recursive evaluation
- SRFI-34: Exception Handling for Programs
- SRFI-35: Conditions
- SRFI-36: I/O Conditions
- SRFI-37: args-fold: a program argument processor
- SRFI-38: External representation of shared structures
- SRFI-39: Parameters objects
- SRFI-41: Streams
- SRFI-43: Vector library
- SRFI-45: Primitives for Expressing Iterative Lazy Algorithms
- SRFI-46: Basic Syntax-rules Extensions
- SRFI-48: Intermediate Format Strings
- SRFI-51: Handling rest list
- SRFI-54: Formatting
- SRFI-55: Require-extension
- SRFI-59: Vicinity
- SRFI-60: Integers as bits
- SRFI-61: A more general COND clause
- SRFI-62: S-expression comments
- SRFI-64: A Scheme API for test suites
- SRFI-66: Octet Vectors
- SRFI-69: Basic Hash Tables
- SRFI-70: Numbers
- SRFI-74: Octet-Addressed Binary Blocks
- SRFI-87: => in case clauses
- SRFI-88: Keyword Objects
- SRFI-89: Optional Positional and Named Parameters
- SRFI-94: Type-Restricted Numerical Functions
- SRFI-95: Sorting and Merging
- SRFI-96: SLIB Prerequisites
- SRFI-98: Interface to access environment variables
- SRFI-100: define-lambda-object
- SRFI-111: Boxes
- SRFI-112: Environment Inquiry
- SRFI-113: Sets and Bags
- SRFI-115: Scheme Regular Expressions
- SRFI-116: Immutable List Library
- SRFI-117: Queues based on lists
- SRFI-118: Simple adjustable-size strings
- SRFI-125: Intermediate hash tables
- SRFI-127: Lazy Sequences
- SRFI-128: Comparators (reduced)
- SRFI-129: Titlecase procedures
- SRFI-130: Cursor-based string library
- SRFI-132: Sort Libraries
- SRFI-133: Vector Library (R7RS-compatible)
- SRFI-134: Immutable Deques
- SRFI-135: Immutable Texts
- SRFI-137: Minimal Unique Types
- SRFI-138: Compiling Scheme programs to executables
- SRFI-141: Integer Division
- SRFI-143: Fixnums
- SRFI-144: Flonums
- SRFI-145: Assumptions
- SRFI-151: Bitwise Operations
- SRFI-152: String Library (reduced)
- SRFI-154: First-class dynamic extents
- SRFI-156: Syntactic combiners for binary predicates
- SRFI-158: Generators and Accumulators
- SRFI-160: Homogeneous numeric vector libraries
- SRFI-161: Unifiable Boxes
- SRFI-162: Comparators sublibrary
- SRFI-169: Underscores in numbers
- SRFI-170: POSIX API
- SRFI-171: Transducers
- SRFI-173: Hooks
- SRFI-174: POSIX Timespecs
- SRFI-175: ASCII character library
- SRFI-176: Version flag
- SRFI-178: Bitvector library
- SRFI-180: JSON
- SRFI-185: Linear adjustable-length strings
- SRFI-189: Maybe and Either: optional container types
- SRFI-190: Coroutines Generators
- SRFI-192: Port Positioning
- SRFI-193: Command line
- SRFI-195: Multiple-value boxes
- SRFI-196: Range Objects
- SRFI-207: String-notated bytevectors
- SRFI-208: NaN procedures
- SRFI-214: Flexvectors
- SRFI-215: Central Log Exchange
- SRFI-216: SICP Prerequisites (Portable)
- SRFI-217: Integer Sets
- SRFI-219: Define higher-order lambda
- SRFI-221: Generator/accumulator sub-library
- SRFI-222: Compound objects
- SRFI-223: Generalized binary search procedures
- SRFI-224: Integer Mappings
- SRFI-227: Optional Arguments
- SRFI-228: A further comparator library
- SRFI-229: Tagged Procedures
- SRFI-230: Atomic Operations
- SRFI-232: Flexible Curried Procedures
- SRFI-233: INI files
- SRFI-234: Topological sorting
- SRFI-235: Combinators
- SRFI-236: Evaluating expressions in an unspecified order
- SRFI-238: Codesets
- SRFI-244: Multiple-value definitions
- SRFI-253: Data (Type-)Checking