Rev2 Procedures
---------------
`(require 'rev2-procedures)'
The procedures below were specified in the `Revised^2 Report on
Scheme'. *N.B.*: The symbols `1+' and `-1+' are not `R4RS' syntax.
Scheme->C, for instance, barfs on this module.
- Procedure: substring-move-left! string1 start1 end1 string2 start2
- Procedure: substring-move-right! string1 start1 end1 string2 start2
STRING1 and STRING2 must be a strings, and START1, START2 and END1
must be exact integers satisfying
0 <= START1 <= END1 <= (string-length STRING1)
0 <= START2 <= END1 - START1 + START2 <= (string-length STRING2)
`substring-move-left!' and `substring-move-right!' store
characters of STRING1 beginning with index START1 (inclusive) and
ending with index END1 (exclusive) into STRING2 beginning with
index START2 (inclusive).
`substring-move-left!' stores characters in time order of
increasing indices. `substring-move-right!' stores characters in
time order of increasing indeces.
- Procedure: substring-fill! string start end char
Fills the elements START-END of STRING with the character CHAR.
- Function: string-null? str
== `(= 0 (string-length STR))'
- Procedure: append! pair1 ...
Destructively appends its arguments. Equivalent to `nconc'.
- Function: 1+ n
Adds 1 to N.
- Function: -1+ n
Subtracts 1 from N.
- Function: <?
- Function: <=?
- Function: =?
- Function: >?
- Function: >=?
These are equivalent to the procedures of the same name but
without the trailing `?'.