[
Lists Home |
Date Index |
Thread Index
]
"Aaron Skonnard" <aarons@develop.com> wrote:
| Why isn't validity decidable?
Because in the general case, you don't know what to parse, because you
don't know when to parse. The string could change at any time. Your
obvious strategy would be to simply cache the string, never parsing it
until and unless forced to (say, if the "InnerXML" of some part inside
were requested). If no such parse-forcing accesses occur, you can simply
dump to output the the cached result of input string operations.
We've already noted that something like
foo.InnerXML="<bar>blah1<quux>blah2"
causes some kind of dwimming to occur. Suppose this were followed by
foo.InnerXML= foo.InnerXML + " blah3</quux>"
and then foo.print (or whatever the "dump to output" call is). Will there
be a "</quux>" after "blah2"? If not, why not? Wasn't then the first
assignment parsed? If you interpolate a read of foo.bar.quux.InnerXML
before the append and dump to output, is there a difference?
I'd be very surprised if the internals weren't string-based with "lazy"
parsing.
| You may not like such features for reasons related to "purity"
Purity has nothing to do with it. Clue has everything to do with it.
| but that's not going to stop the hoards of Microsoft developers from
| using them to increase productivity and get the job done.
Don't I know that! I have the perfect sig for you. ;-)
--
Moronization: a form of acculturation where people are encouraged to
anoint themselves with the supposed benefits of a technology without
understanding the engineering (or lack thereof.)
|