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.