On Initialization vs Assignment.
During the last day or so, I’ve become quite surprised by the number of people who assert that initialization is a form of assignment.
The fact that so many languages use the = operator for both has likely contributed to the confusion. It should be remembered, however, that older languages tried to avoid using = for assignment. Some used :=, or ::=, or ==, or even <-. They did this in order to keep the two concepts separate.
In order to understand why this was (and still is) important we need to go back in time a little farther.
CLA
TAD ONE
DCA X
HLT
ONE, 1
X, 0
Here you see a simple PDP 8 program written in assembly language. The first line clears the accumulator register. Then the value of the ONE variable is added to the accumulator. Then the value of the accumulator is stored in the X variable. Then the machine halts.
The ONE and X variables are loaded with their initial values prior to execution beginning. That is initialization. The value of the X variable is changed during execution. That is assignment.
These concepts are very old, and the names we chose for them, initialization and assignment, have been in use for over half a century.

Source: x.com/unclebobmartin/status/1817895433177334109