Consider:
P0 = P1
P0 = S1
P0 = I1
P0 = N1
o/~ One of these things is not like the others
One of these things just doesn't belong o/~
And if I have to read:
P0 = new .Integer
P0 = 1
one more time... *sigh*
Therefore, I propose requiring people to spell aliasing as ':='. This will
affect all code generated to use P and S registers. It should be an easy fix
(albeit an extensive one). And if we don't do it now, it'll just get harder.
So here's the lowdown:
P0 := P1 # aliasing: P0 and P1 point to same PMC
P0 := opcode # aliasing: P0 points to PMC returned by opcode
P0 = ... # assignment: modifies P0, NO MATTER WHAT '...' IS
S0 := S1 # aliasing: S0 and S1 point to same header
S0 := opcode # aliasing: S0 points to header returned by opcode
S0 = ... # assignment: modifies S0, NO MATTER WHAT '...' IS
I0 := ... # ILLEGAL
I0 = ... # assignment: modifies I0
N0 := ... # ILLEGAL
N0 = ... # assignment: modifies N0
Comments? Fresh or rotten vegetables?
--
Chip Salzenberg <[EMAIL PROTECTED]>