[EMAIL PROTECTED] writes:
: Bare C</.../> and bare C<?...?> *are* the main culprits. They require
: the tokenizer to track expression semantics so that when it encounters a
: '/' or '?' it can tell whether a pattern is plausible in this place or
: whether they've reached a division or hook operator, respectively.
:
: In fact, these two cases are the *only* semantic contexts that
: Text::Balanced has to track in order to parse almost any Perl code.
It's a good thing you said "almost". Does it parse [*]] correctly?
: Of course, it cheats a great deal by slurring over most of the tokenization
: in the interests of speed.
Ya, a real Perl tokener has to apply operator/term disambiguation to a
great many ambiguous characters. Some people have proposed to add more
of them. :-)
Hmm. What's the dot mean here?
func ^1.2, 3, 4;
Answer: depends on the prototype of func.
Does Text::Balanced take into account functions declared with a
prototype of ()?
Larry