Kawa implements the following semi-standard SRFIs (Scheme Request for Implementation):
SRFI 0: Feature-based conditional expansion construct,
using cond-expand
- see Syntax and conditional compilation.
SRFI 1: List Library, if (require 'list-lib)
.
SRFI 4: Homogeneous numeric vector datatypes - see Uniform vectors.
SRFI 8: receive
: Binding to multiple values - see Multiple values.
SRFI 9: Defining Record Types, using define-record-type
- see Record types.
SRFI 11: Syntax for receiving multiple values,
using let-values
and let*-value
- see Multiple values.
SRFI 16: Syntax for procedures of variable arity,
using case-lambda
.
(The implementation has not been optimied for Kawa yet.)
SRFI 23: Error reporting mechanism, using error
- see Exception handling.
SRFI 25: Multi-dimensional Array Primitives - see Multi-dimensional Arrays.
SRFI 26: Notation for Specializing Parameters without Currying - see Procedures.
SRFI 28: Basic Format Strings - see Formatted Output (Common-Lisp-style).
SRFI 30: Nested Multi-line Comments.
SRFI 37: args-fold
- a program argument processor, if (require 'args-fold)
.
SRFI 39: See Parameter objects.
SRFI 69: Basic hash tables - see Hash tables.