On 11/08/2014 13:30, alister wrote:
It already is a different operator from equality which is ==

Mathematicians use '=' for name binding all the time, with and without 'let':
  Let u = x + y, v = x - y. Then ... .
However, name binding itself is a mental operation, not a mathematical one.

Mathematicians sometimes differentiate conditionally true expressions from necessarily true expressions (tautologies, 'identically true') by using triple bars for the latter. In algebra, (a+b)(a-b) <triple bar equal> a*a-b*b. I think the sense of the extra bar is 'really equal, not just contingently equal).

Mathematicians sometimes use ':=' for definitions and sometimes decorate '=' in various other ways. Unicode has most of them. So mathematicians do not always use plain '=' for various ideas of sameness.

perhaps it would have been better if the behaviour of these two operators
were reversed (= for equality & == for assignment) but i suspect that
Idea if even considered was quickly discarded as it would cause major
confusion to programmers who work with multiple languages.

Given that assignment occurs more often than equality testing, it makes sense to use the shorter coding for assignment. This principle operates in natural language (English at least) and in various codings from Morse to Huffman.

--
Terry Jan Reedy

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to