+ is an associative binary operator. You have to decide which pair to add first.
Re:List of IPython Notebooks by Peter Norvig
by ibrahima on Sunday July 31, 2016 @08:37PM
(#12199612)
To add on, I think he's writing from a Lisp perspective, not general math notation.
Re:List of IPython Notebooks by Peter Norvig
by moron4hire on Sunday July 31, 2016 @09:14PM
(#12199698)
That doesn't matter. It's just the basic associative property of addition in arithmetic. As such, it's present in all programming languages.
Re:List of IPython Notebooks by Peter Norvig
by Dylan16807 on Sunday July 31, 2016 @10:49PM
(#12199954)
But in normal math it's easy to use n-ary addition.
Re:List of IPython Notebooks by Peter Norvig
by gjm11 on Monday August 01, 2016 @04:39AM
(#12200930)
In Lisp too -- arguably easier than in most languages. To add 10+9+8 in Lisp you write (+ 10 9 8), a single 3-ary call to +. In, say, C you write 10+9+8 and the parser turns that into two 2-ary additions.
(Of course, in either language you end up with two 2-operand ADD instructions in the object code. Nothing has hardware for arbitrary n-ary adds!)
Re:List of IPython Notebooks by Peter Norvig
by B1FF_PSUVM on Monday August 01, 2016 @03:23AM
(#12200709)
Nowadays math mostly ends up in a CPU crunching two inputs at a time.
If you don't write it so explicitly, a compiler will do it for you anyway.
Re:List of IPython Notebooks by Peter Norvig
by monorailz on Sunday July 31, 2016 @09:04PM
(#12199673)
Thank you both, that makes sense.
Re:List of IPython Notebooks by Peter Norvig
by zitterbewegung on Sunday July 31, 2016 @10:08PM
(#12199859)
Think about when you evaluate the expression (10+9+8). You will either add 10+9 or 9+8 first and add 19 to 8 or 17 to 8. (10+9+8) is ambiguous because it can be parsed both ways.
>because there are 2 ways to make 27 with the numbers (10, 9, 8), namely, ((10+9)+8) and (10+(9+8))
why not also (10+9+8)?