The SRFI specifies an escape mechanism
for expressing strings in a
reduced character set (Section "Quoted
strings").
It would substantially increase portability
and convenience if the quoting
and unquoting mechanism is also made
available explicitly to application
programs---for example through procedures
like this:
(string-quote str)
produces
a representation of string str in the reduced set of characters
<<specify
here>> by introducing backslash escape sequences.
The
result is a newly allocated string s satisfying
(string=? (string-unquote s) str)
(string-unquote str [ state ] ) ->
str' state'
interprets
backslash escape sequences in string str and constructs the
string
being represented.
The optional argument state, and the second return value state',
represent
the state of the interpreter (a finite state machine) before and
after
processing str. By passing the state from one invokation of
string-unquote
to the next, it is possible to unquote arbitrary substrings
of
a stream of characters---even if the stream is broken within escape
sequences.
The state #f (default for state) is the start state (taking letters
etc.
at face value.) Other states are <<specify?; need to know?; ints?>>.
----
Dr. Sebastian Egner
Senior Scientist
Philips Research Laboratories
Prof. Holstlaan 4 (WDC 1-051, 1st floor, room 51)
5656 AA Eindhoven
The Netherlands
tel: +31 40 27-43166
fax: +31 40 27-44004
email: xxxxxx@philips.com