On Thu, 17 May 2018 12:58:43 +0100, bartc wrote: > On 17/05/2018 04:54, Steven D'Aprano wrote: >> On Thu, 17 May 2018 05:33:38 +0400, Abdur-Rahmaan Janhangeer wrote: >> >>> what does := proposes to do? > >> A simple example (not necessarily a GOOD example, but a SIMPLE one): >> >> print(x := 100, x+1, x*2, x**3) > > It's also not a good example because it assumes left-to-right evaluation > order of the arguments. Even if Python guarantees that, it might be a > problem if the code is ever ported anywhere else.
Seriously? You think we have a responsibility to write examples which will work with arbitrary languages with arbitrarily different evaluation order? Okay, let's be clear: - if the language has different evaluation order, it might not work; - if the language has different syntax, it might not work; - if the language has not variables or names, it might not work; - if the language uses something other than decimal for numeric literals, it might not work; - if the language doesn't use + * and ** for addition, multiplication and exponentiation, it might not work; - if the language has no print, it might not work; - if the language doesn't use ( ) for function calls, it might not work; - or if the print function does something else, say, erases your hard disk, you probably don't want to run that example; - or if the language has no I/O, or no functions, it might not do what you expect either; - and if the language doesn't actually have a working interpreter or compiler for any existing computer, you may have trouble getting the code to run. Did I miss any other problems? -- Steve -- https://mail.python.org/mailman/listinfo/python-list