Это как стрелка без символа «меньше» <=, так как все уже сказали оператор «присваивания». Внесение ясности в то, что и где установлено, в отличие от логического оператора эквивалентности.
В математике это похоже на равенство, но A: = B означает, что A определяется как B, тройная черта равенства может использоваться, чтобы сказать, что это похоже и равно по определению, но не всегда одно и то же.
В любом случае, я указываю на эти другие ссылки, которые, вероятно, были в умах тех, кто его изобрел, но на самом деле это просто тот уровень, равный и меньший, чем равные, были взяты (или потенциально легко перепутаны с = <), и было необходимо что-то новое для определения назначения и это имело смысл.
Исторические ссылки: я впервые увидел это в SmallTalk, оригинальном объектном языке, из которого SJ из Apple скопировал только часть Windows, а BG Microsoft разбавил их дальше (однопоточный). В конце концов, SJ из NeXT усвоил второй более важный урок от Xerox PARC, который стал Objective C.
Во всяком случае, они просто взяли оператор заданий с двоеточием из АЛГОЛА 1958, который позже был популяризирован Паскалем.
https://en.wikipedia.org/wiki/PARC_(company)
https://en.wikipedia.org/wiki/Assignment_(computer_science)
Присваивания обычно позволяют переменной хранить разные значения в разное время в течение ее жизненного цикла и области действия. Однако некоторые языки (в основном строго функциональные) не допускают такого «деструктивного» переназначения, поскольку это может означать изменения нелокального состояния. Цель состоит в том, чтобы обеспечить ссылочную прозрачность, то есть функции, которые не зависят от состояния некоторой переменной (переменных), но дают одинаковые результаты для заданного набора параметрических входных данных в любой момент времени.
https://en.wikipedia.org/wiki/Referential_transparency