Refilled doc.txt to a width of 65 characters
svn: r3302
This commit is contained in:
parent
a67ca1489b
commit
137ca08979
|
@ -1,79 +1,80 @@
|
||||||
PLT Scheme support for _SRFIs_ (`surfies')
|
PLT Scheme support for _SRFIs_ (`surfies')
|
||||||
==========================================
|
==========================================
|
||||||
|
|
||||||
This is an implementation of (some) SRFIs to the PLT Scheme system.
|
This is an implementation of (some) SRFIs to the PLT Scheme
|
||||||
It is intended for PLT Scheme v200+.
|
system. It is intended for PLT Scheme v200+.
|
||||||
|
|
||||||
If you need more information on SRFI, please visit:
|
If you need more information on SRFI, please visit:
|
||||||
|
|
||||||
http://srfi.schemers.org/
|
http://srfi.schemers.org/
|
||||||
|
|
||||||
Loading
|
Loading
|
||||||
-------
|
-------
|
||||||
|
|
||||||
To load a SRFI with name conflicts (currently SRFIs 1, 19, 43, 45,
|
To load a SRFI with name conflicts (currently SRFIs 1, 19, 43,
|
||||||
48 and 69) in a module, please see the note below.
|
45, 48 and 69) in a module, please see the note below.
|
||||||
|
|
||||||
To load a SRFI, use the following form:
|
To load a SRFI, use the following form:
|
||||||
|
|
||||||
(require (lib "N.ss" "srfi"))
|
(require (lib "N.ss" "srfi"))
|
||||||
|
|
||||||
if you know the number of the SRFI you want to load. This is the
|
if you know the number of the SRFI you want to load. This is the
|
||||||
preferred method, or this one:
|
preferred method, or this one:
|
||||||
|
|
||||||
(require (lib "NAME.ss" "srfi" "N"))
|
(require (lib "NAME.ss" "srfi" "N"))
|
||||||
|
|
||||||
if you know the `informative name' of the SRFI.
|
if you know the `informative name' of the SRFI.
|
||||||
|
|
||||||
N, is a number corresponding to the sub-collection that holds a
|
N, is a number corresponding to the sub-collection that holds a
|
||||||
particular SRFI, and NAME is a more descriptive name we assigned to
|
particular SRFI, and NAME is a more descriptive name we assigned
|
||||||
the main file in which the SRFI is defined. For instance, to load
|
to the main file in which the SRFI is defined. For instance, to
|
||||||
SRFI-34 you have to do either one of:
|
load SRFI-34 you have to do either one of:
|
||||||
|
|
||||||
(require (lib "34.ss" "srfi"))
|
(require (lib "34.ss" "srfi"))
|
||||||
|
|
||||||
or,
|
or,
|
||||||
|
|
||||||
(require (lib "exception.ss" "srfi" "34"))
|
(require (lib "exception.ss" "srfi" "34"))
|
||||||
|
|
||||||
NOTE on SRFIs with name conflicts
|
NOTE on SRFIs with name conflicts
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
Certain SRFIs (currently SRFIs 1, 13, 19, 43, 45, 48 and 69) provide
|
Certain SRFIs (currently SRFIs 1, 13, 19, 43, 45, 48 and 69)
|
||||||
names which conflict with names provided by the 'mzscheme' language.
|
provide names which conflict with names provided by the
|
||||||
Attempting to require one of these SRFIs in a module written in the
|
'mzscheme' language. Attempting to require one of these SRFIs in
|
||||||
'mzscheme' language will result in an error.
|
a module written in the 'mzscheme' language will result in an
|
||||||
|
error.
|
||||||
|
|
||||||
To address this problem, the PLT implementations of these SRFIs
|
To address this problem, the PLT implementations of these SRFIs
|
||||||
provide a different module which renames the problematic exports to
|
provide a different module which renames the problematic exports
|
||||||
avoid these conflicts. For SRFI 1, this library is called list.ss,
|
to avoid these conflicts. For SRFI 1, this library is called
|
||||||
and should be required like this:
|
list.ss, and should be required like this:
|
||||||
|
|
||||||
(require (lib "list.ss" "srfi" "1"))
|
(require (lib "list.ss" "srfi" "1"))
|
||||||
|
|
||||||
which supplies the colliding names with a prefix of 's:'
|
which supplies the colliding names with a prefix of 's:'
|
||||||
(e.g. "s:map", "s:reverse!") and is therefore suitable for requires in
|
(e.g. "s:map", "s:reverse!") and is therefore suitable for
|
||||||
a module.
|
requires in a module.
|
||||||
|
|
||||||
For SRFI 19, this library is called time.ss, and should be required
|
For SRFI 19, this library is called time.ss, and should be
|
||||||
like this:
|
required like this:
|
||||||
|
|
||||||
(require (lib "time.ss" "srfi" "19"))
|
(require (lib "time.ss" "srfi" "19"))
|
||||||
|
|
||||||
which supplies the colliding names with a prefix of 'srfi:'
|
which supplies the colliding names with a prefix of 'srfi:'
|
||||||
(e.g. "srfi:date?", "srfi:date-second") and is therefore suitable for
|
(e.g. "srfi:date?", "srfi:date-second") and is therefore suitable
|
||||||
requires in a module.
|
for requires in a module.
|
||||||
|
|
||||||
Supported SRFIs
|
Supported SRFIs
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
Here is a table that has an SRFI, file name, and the sub-collection
|
Here is a table that has an SRFI, file name, and the
|
||||||
number of the already ported SRFIs:
|
sub-collection number of the already ported SRFIs:
|
||||||
|
|
||||||
SRFI File name Sub-collection
|
SRFI File name Sub-collection
|
||||||
======== =========== ================
|
======== =========== ================
|
||||||
|
|
||||||
SRFI-1 list.ss 1
|
SRFI-1 list.ss 1
|
||||||
SRFI-2 and-let.ss 2
|
SRFI-2 and-let.ss 2
|
||||||
SRFI-4(*1) 4.ss
|
SRFI-4(*1) 4.ss
|
||||||
SRFI-5 let.ss 5
|
SRFI-5 let.ss 5
|
||||||
|
@ -100,7 +101,7 @@ number of the already ported SRFIs:
|
||||||
SRFI-38(+) 38.ss
|
SRFI-38(+) 38.ss
|
||||||
SRFI-39(+) 39.ss
|
SRFI-39(+) 39.ss
|
||||||
SRFI-40 stream.ss 40
|
SRFI-40 stream.ss 40
|
||||||
SRFI-42 comprehensions.ss 42
|
SRFI-42 comprehensions.ss 42
|
||||||
SRFI-43 vector-lib.ss 43
|
SRFI-43 vector-lib.ss 43
|
||||||
SRFI-45(*3) lazy.ss 45
|
SRFI-45(*3) lazy.ss 45
|
||||||
SRFI-48 format.ss 48
|
SRFI-48 format.ss 48
|
||||||
|
@ -120,17 +121,18 @@ Notes:
|
||||||
`--------------------
|
`--------------------
|
||||||
|
|
||||||
,--------------------
|
,--------------------
|
||||||
| *1 The functionality is all part of mzscheme available via
|
| *1 The functionality is all part of mzscheme available via (lib
|
||||||
| (lib "foreign.ss"), the only missing part is the i/o syntax.
|
| "foreign.ss"), the only missing part is the i/o syntax.
|
||||||
`--------------------
|
`--------------------
|
||||||
|
|
||||||
,--------------------
|
,--------------------
|
||||||
| *2 The time module does not export its time structure (you have to
|
| *2 The time module does not export its time structure (you have
|
||||||
| use the time-* procedures.) It renames all the date-* accessors to
|
| to use the time-* procedures.) It renames all the date-*
|
||||||
| tm:date-* so that you won't get errors when including this code in
|
| accessors to tm:date-* so that you won't get errors when
|
||||||
| other modules. Care most be taken NOT to confuse the internal date
|
| including this code in other modules. Care most be taken NOT
|
||||||
| structure with the PLT Scheme one, they are not the same, and all
|
| to confuse the internal date structure with the PLT Scheme one,
|
||||||
| procedures from this library expect the former.
|
| they are not the same, and all procedures from this library
|
||||||
|
| expect the former.
|
||||||
`--------------------
|
`--------------------
|
||||||
|
|
||||||
,--------------------
|
,--------------------
|
||||||
|
@ -145,14 +147,14 @@ added to this library, please let us know:
|
||||||
|
|
||||||
PLT Scheme <plt-scheme@fast.cs.utah.edu>
|
PLT Scheme <plt-scheme@fast.cs.utah.edu>
|
||||||
|
|
||||||
+ the Schematics-people @ sourceforge.net. We are NOT members of the
|
+ the Schematics-people @ sourceforge.net. We are NOT members
|
||||||
PLT group, the Schematics project is devoted to create code for PLT
|
of the PLT group, the Schematics project is devoted to create
|
||||||
Scheme ONLY, though. This SRFI port effort will try to be developed,
|
code for PLT Scheme ONLY, though. This SRFI port effort will
|
||||||
tested, and debugged @ sourceforge, and periodically inserted to PLT
|
try to be developed, tested, and debugged @ sourceforge, and
|
||||||
Scheme. Please, do join us!:
|
periodically inserted to PLT Scheme. Please, do join us!:
|
||||||
|
|
||||||
http://schematics.sourceforge.net
|
http://schematics.sourceforge.net
|
||||||
|
|
||||||
(we don't have separate mailing lists @ sourceforge. We have a couple
|
(we don't have separate mailing lists @ sourceforge. We have a
|
||||||
of forums there, though. Of course, you can send us mail directly,
|
couple of forums there, though. Of course, you can send us mail
|
||||||
or... well, we read the PLT Scheme mailing list.)
|
directly, or... well, we read the PLT Scheme mailing list.)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user