Sp, speaking of mathematical precedence and all that, anyone up to looking at the IEEE-754 spec and making one's Smalltalk of choice comply with _all_ the requirements? Or how about implementing decimal floats?

On 6/26/14 12:01 , [email protected] wrote:

Couldn't we just have an expression evaluator done with PetitParser
doing these things?

Tcl and Bash have this expr: thing.


(Expression parse: '5+3*2') value.
(Expression parse: ':a | 5+:a*2') value:10.
(Expression parse: ':a | 5+:a*2') value:self x.

With the thesis of Lukas Renggli these was this Helvetia story.
Is there any chance we see something around these lines now that there
is a new compiler thing inside Pharo?

So:

someMethod: anX
<expr>
^ 5 + anX * 2

Phil





On Thu, Jun 26, 2014 at 6:11 PM, Richard Sargent
<[email protected]
<mailto:[email protected]>> wrote:

    Esteban A. Maringolo wrote
     > If one thing confuses people in that realm is non arithmetic
    precedence:
     > Eg. 2 + 3 * 4 = 20 instead of the "expected" 14.
     >
     > And we're not going to change that either. It's not worthy, and I
     > doubt if it is possible at all.

    I'm probably late to the party with this reply. The primary reason
    for not
    changing this is that it would be incorrect. It comes down to intrinsic
    versus extrinsic meaning. A multiple operator has an intrinsic
    meaning: it
    means multiple. But a message name does not have intrinsic meaning
    (other
    than it is a good idea to have the name represent what it does). The
    meaning
    of a message is determined by the receiver. e.g. if PetitParser
    defines #*
    to mean "0 or more repetitions", what happens when someone has
    decided that
    it should be evaluated before #+?

    Message sending precedence can only be defined in terms of the type of
    message: unary, binary (or infix), and keyword, since the
    interpretation of
    the message is the receiver's responsibility, not the compiler's.




    --
    View this message in context:
    http://forum.world.st/about-tp4764892p4765070.html
    Sent from the Pharo Smalltalk Developers mailing list archive at
    Nabble.com.



Reply via email to