According to the ANSI standard integers do not support an exponent: integer ::= decimalInteger | radixInteger decimalInteger ::= digits digits ::= digit+ radixInteger ::= radixSpecifier 'r' radixDigits radixSpecifier := digits radixDigits ::= (digit | uppercaseAlphabetic)+ They even state explicitly that '10e10' is not a valid number token. Furthermore floating point numbers do not accept a different radix (or base) and thus are always written in decimal notation: float ::= mantissa [exponentLetter exponent] mantissa ::= digits '.' digits exponent ::= ['-']decimalInteger exponentLetter ::= 'e' | 'd' | 'q' Cheers, Lukas On Wed, Feb 11, 2009 at 11:34 AM, Gwenael Casaccio <mrgwen@gmail.com> wrote:
Hi,
RBParser parseExpression: '2r100e2' results : 400 should be : 16
Cheers, Gwenael Casaccio
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- Lukas Renggli http://www.lukas-renggli.ch