#, Message Pattern (Parser>>pattern:inContext:)
Bob Arning
arning at charm.net
Tue Dec 12 15:25:29 UTC 2000
On Mon, 11 Dec 2000 20:32:50 -0800 Lantz Rowland <lantz at aabysgallery.com> wrote:
>Ok, while in my Scanner class , TypeTable also had #comma at :44, matching
>all my Parser objects, Scanner>>initialize sets it to #xBinary like you
>were seeing in your image.
>
>The culprit, though I am not sure how, was LParser which is a class from
>the Prolog package. LParser is a subclass of Parser and Scanner. It
>modifies it's own typeTable instance variable with #comma and
>#exclamationMark for it's special needs on parsing of Prolog.
>
>I am not sure yet how LParser pulled this off, I had zero instances of
>LParser, but the Scanner class variable TypeTable and all the Parser
>instances had the LParser symbols. Prolog has been part of my image for
>over a year without this ... feature surfacing, but that is a different
>mystery to solve.
Lantz,
It may not be much of a mystery. If LParser is like Scanner, it simply does something like
typeTable := TypeTable.
If LParser then does something like
typeTable at: asciiVal put: #funkySymbol.
it is not only modifying its own instance variable, but the class variable as well, since they are one and the same.
Cheers,
Bob
More information about the Squeak-dev
mailing list
|