Jonathan Scott Duff writes:
> Non-Interpolating constructs are strings in which expressions do
> not interpolate or expand. The exception to this rule is the
> backslash character C<\>. A single backslash which is followed
> by the current quoting delimiter, or the characters q[ or q[[ is
> special (more on this below). In all other cases the backslash
> just means "literal next character". This is so that you can
> easily get a backslash within your non-interpolating strings.
> For instance, 'backslash (\\) \test' becomes "backslash \ test".
>
> <barbie>writing is hard!</barbie> :-)
>
> -Scott
> --
> Jonathan Scott Duff
> [EMAIL PROTECTED]
>
>
my take :
non interpolating construct is a sequence of characters enclosed in
delimiters for which perl switch off *any* perl-programm-like
interpretation of the content. since perl have to find the end of
this "I-am-not-looking" phase , the delimiter itself have to appear inside the
string prefixed by backslash "\" and since now "\" itself acquire
special "assignment" , if it is meant to be part of the string it have to
appear backslash-prefixed "\\" itself. In principle *any* character can be
backslashed *inside* the string , but only for delimiter and the
backslash this is absolutely necessary.
in this sence interpolated string is "language inside language" .
hence :
* some characters ( or words ) have to be "reserved in the inner
language in order for outer language to know where the inner
language text stops.
* this is achieved by chosing a prefix , and any character from outer
language is represented in the inner languge by the same character
with prefix - two character sequance
* for all *except* two characters -- the delimiter and the prefix --
we can make syntactic sugar of making the character to "mean"
itself .
'\ \ \h\e\l\l\o\ \ '
'\'\\\ \\\ \\\h\\\e\\\l\\\l\\\o\\\ \\\ \''
....
arcadi