2014-11-10 8:47 GMT+01:00 Henrik Johansen <henrik.s.johansen@veloxit.no>:
3 @ -5 is not a problem, and accepted by both.
3 @ - <space> 5 is what I object to (and Opal allows)

RBParser allows this one even if old Compiler dissallows it (i.e. in Pharo 2).

I haven't tracked if Opal follows the RBParser on that or if this is the reverse (Opal pushed changes on RBParser). I suspect all things RB in Pharo (and Squeak?) are a port from the Dolphin version of RB, which means this is allowed in quite a few other smalltalks (Dolphin?, VW?).

I haven't checked if the SmaCC Smalltalk parser accept that.

Note: 4 - 5 in RBParser does what you would expect. 4 - - 5 as well.

3 @-5 and/or 3 @- 5 is (rightly) disallowed by both.

That one is easier and expected.

My position would be twofold:
- RBParser is, IMHO, a good parser and I would follow its interpretation. That Opal reuses it is a good point for me.
- As a programming language designer (and parser implementor), accepting - 5 is user friendly, but a bit too contextual in the lexer to be nice to implement.

Thierry

Cheers,
Henry