Chip~

On 11/29/05, Chip Salzenberg <[EMAIL PROTECTED]> wrote:
> 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?

I very much like it.  I think I may have suggested something like it
earlier (although I might have only thought it).  But, I am very much
in favor of not confusing the two sets of semantics.

Matt
--
"Computer Science is merely the post-Turing Decline of Formal Systems Theory."
-Stan Kelly-Bootle, The Devil's DP Dictionary

Reply via email to