É como uma seta sem usar o símbolo menor que <= então como todo mundo já disse operador de "atribuição". Trazendo clareza para o que está sendo definido onde, em oposição ao operador lógico de equivalência.
Em matemática é como igual, mas A: = B significa que A é definido como B, uma barra tripla igual pode ser usada para dizer que é semelhante e igual por definição, mas nem sempre a mesma coisa.
De qualquer forma, aponto para essas outras referências que provavelmente estavam nas mentes daqueles que o inventaram, mas na verdade é apenas aquele plano igual e menos que igual foi tomado (ou potencialmente facilmente confundido com = <) e algo novo para definir a atribuição era necessário e isso fazia mais sentido.
Referências históricas: Eu vi isso pela primeira vez em SmallTalk, a linguagem de objeto original, da qual SJ da Apple apenas copiou a parte do Windows e BG da Microsoft diluiu ainda mais (single threaded). Eventualmente, SJ na NeXT tirou a segunda lição mais importante do Xerox PARC em, que se tornou o Objectivo C.
Bem, de qualquer maneira, eles apenas pegaram o operador de avaliação de dois pontos iguais do ALGOL 1958, que mais tarde foi popularizado por Pascal
https://en.wikipedia.org/wiki/PARC_(company)
https://en.wikipedia.org/wiki/Assignment_(computer_science)
As atribuições normalmente permitem que uma variável mantenha valores diferentes em momentos diferentes durante sua vida útil e escopo. No entanto, algumas linguagens (principalmente estritamente funcionais) não permitem esse tipo de reatribuição "destrutiva", pois isso pode implicar em mudanças de estado não local. O objetivo é reforçar a transparência referencial, isto é, funções que não dependem do estado de algumas variáveis, mas produzem os mesmos resultados para um determinado conjunto de entradas paramétricas em qualquer ponto no tempo.
https://en.wikipedia.org/wiki/Referential_transparency