in reply to Re^7: Unparseability is A Good Thing
in thread Unparseability is A Good Thing

(That should be "To determine the meaning of a token", fixed.)

Do you intend to say the outcome of the token or what the machine is supposed to do with the token?

Tokens don't have outcomes. They're data.

To answer your question, neither. I meant "For the tokeniser to determine which token to create for a given sequence of input bytes". (Or at a higher level, "For the parser to determine which opcode to create or error to throw for a given sequence of input bytes".)

For example, to determine whether "/" starts a pattern or if it's a division operator.

This isn't a perl problem. I know you know this. So what is this requirement on the parser that you are saying is a perl problem?

It hinders the ability to do useful things with Perl code by greatly extending the cost of doing so.

Replies are listed 'Best First'.
Re^9: Unparseability is A Good Thing
by Zen (Deacon) on Aug 27, 2009 at 21:02 UTC
    Right. What to do with the token is determined at the read head. I still do not see how this is a perl specific problem, as the "/" operator has to be read and computed, what happens with it 5 minutes from now is fortune telling. Not a perl specific problem.

      Does that mean you think the tokeniser produces a <"/" operator> token? It doesn't. There's no such thing. The tokeniser produces either a regexp pattern token (which is a term) or a division operator token when faced with "/" in the input stream.