2.1 Standard conformance
Gauche conforms "Revised^5 Report of Algorithmic Language Scheme,"
including optional syntax and procedures, except the following features.
-
By default, Gauche reads symbols by case-sensitive way.
A command-line option is provided to make the reader case-insensitive.
(See section 2.3 Case-sensitivity, for details).
-
Continuations created in a certain situation
(specifcally, inside a Scheme code that is called from external
C routine) have limited extent (See section 6.15.3 Continuation, for details).
-
Numeric tower of integer, real, and complex numbers are supported,
but rational numbers are not. The reader can read rational numbers
but converts them to inexact real numbers.
The number format using '
#' to show insignificant digits is
not supported.
-
Procedure
rationalize, transcript-on and transcript-of
are not supported.
Gauche also supports the following SRFIs (Scheme Request for Implementation).
- SRFI-0, Feature-based conditional expansion construct.
- As an autoloaded macro. See section 10.1
srfi-0 - Feature conditional.
- SRFI-1, List library.
- Supported by the module
srfi-1. See section 10.2 srfi-1 - List library.
(Some of SRFI-1 procedures are built-in).
- SRFI-2, AND-LET*: an AND with local bindings, a guarded LET* special form.
- Supported by the module
srfi-2. See section 10.3 srfi-2 - And-let*.
- SRFI-4, Homogeneous numeric vector datatypes.
- The module
gauche.uvector provides a superset of
srfi-4 procedures, including arithmetic operations and
generic interface on the SRFI-4 vectors. See section 9.24 gauche.uvector - Uniform vectors.
- SRFI-6, Basic String Ports.
- SRFI-6 procedures are built-in. See section 6.18.4 String ports.
- SRFI-8, receive: Binding to multiple values.
- Syntax
receive is built-in. See section 4.6 Binding constructs.
- SRFI-9, Defining record types.
- Supported by the module
srfi-9. See section 10.5 srfi-9 - Record types.
- SRFI-10, Sharp-comma external form.
- Built-in. See section 6.18.6.2 Read-time constructor.
- SRFI-11, Syntax for receiving multiple values.
- Supported by the module
srfi-11. See section 10.6 srfi-11 - Let-values.
- SRFI-13, String library
- Supported by the module
srfi-13. See section 10.7 srfi-13 - String library.
(Some of SRFI-13 procedures are built-in).
- SRFI-14, Character-set library
- Character-set object and a few SRFI-14 procedures are built-in.
See section 6.9 Character Set.
Complete set of SRFI-14 is supported by the module
srfi-14.
See section 10.8 srfi-14 - Character-set library.
- SRFI-17, Generalized set!
- Built-in. See section 4.4 Assignments.
- SRFI-18, Multithreading support
- Some SRFI-18 features are built-in, and the rest is in
gauche.threads
module. See section 9.22 gauche.threads - Threads.
- SRFI-19, Time Data Types and Procedures.
- Time data type is Gauche built-in (See section 6.21.8.2 SRFI time).
Complete set of SRFI-19 is supported by the module
srfi-19.
See section 10.9 srfi-19 - Time data types and procedures.
- SRFI-22, Running Scheme scripts on Unix
- Supported. See section 3.4 Writing Scheme scripts.
- SRFI-23, Error reporting mechanism.
- Built-in. See section 6.16.1 Signalling errors.
- SRFI-25, Multi-dimensional array primitives.
- Supported by the module
gauche.array, which defines
superset of SRFI-25. See section 9.1 gauche.array - Arrays.
- SRFI-26, Notation for specializing parameters without currying.
- As an autoloaded macro. See section 4.3 Making Procedures.
- SRFI-27, Sources of Random Bits.
- Supported by the module
srfi-27. See section 10.10 srfi-27 - Sources of Random Bits.
- SRFI-28, Basic format strings.
- Gauche's built-in
format procedure is a superset of
SRFI-28 format. See section 6.18.7 Output.
- SRFI-30, Nested multi-line comments.
- Supported by the native reader. See section 4.1 Lexical structure.
This document was generated
by Ken Dickey on November, 28 2002
using texi2html