Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re^3: verbatim, non-interpolated assignment

by Anonymous Monk
on Sep 14, 2011 at 05:03 UTC ( #925814=note: print w/replies, xml ) Need Help??


in reply to Re^2: verbatim, non-interpolated assignment
in thread verbatim, non-interpolated assignment

What is semi-predicate? It sounds theoretical.

What is google? semi-predicate -> http://en.wikipedia.org/wiki/Semipredicate_problem

Simply it means return undef to signal failure, but it can return undef as valid value, so you can't differentiate between failure or just a valid value

It applies here because perl expects perl syntax, so you can't inline arbitrary text verbatim as part of a perl program, it could be a perl program, so you have to quote/escape, like

my $asCloseAsYouCanGet = <<'__TO_VERBATIM__'; other stuff not that is not __TO_VERBATIM__ on a single line __TO_VERBATIM__

The text in $asCloseAsYouCanGet cannot contain __TO_VERBATIM__ on a single line as input, because __TO_VERBATIM__ on a single line is like the closing quote, it signals the end of the input, so it can't be valid input

In other words, the semi-predicate problem, it can't be both valid input and closing quote, it has to be one or the other, not both

Its like pictorial depictions of numbers, the symbol for the number one, 1, cannot be the same symbol for the number two, 1 , because you cannot tell when it means one or it means two

1 + 1 + 1 = 4? See the first 1 is really one, the second 1 is really two, and the last one is really 1 , which adds up to four

:)

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://925814]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (9)
As of 2019-10-17 08:18 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Notices?