On 1/29/21 6:27 AM, Paul Koning via cctalk wrote:

> True, although right to left is not a natural way to read mathematical 
> formulas.  The reason APL uses right to left is that the designers apparently 
> were unwilling to change the direction of the assignment operator, so 
> everything else had to follow.  Another language that doesn't have precedence 
> avoided this issue by changing assignment to match the others, i.e., 
> everything is left to right.  That is POP-2, a language out of the U of 
> Edinborough I remember from an AI class.  So it would do stuff like:
> 
>       a + 1 * 5 -> b
> 
> which in C would be
> 
>       b = (a + 1) * 5;
> 
> and is definitely easier to read than the APL equivalent.

Well, part of the confusion lies in the difference of "=" in mathematics
indicating a property or state, as opposed to computer languages using
it as an operator. It's a subtle distinction, but important.

D = 4AC in mathematics establishes a property of D, whereas
D = 4*A*C in BASIC, etc. means "multiply 4 by A, then take that result
and multiply it by the value of C and store the result into D.

APL treats the assignment as what it is--an operation.   Why the RTL of
APL was chosen by Iverson, is a mystery; I agree.  He was, as far as I
know, not  native writer of Hebrew.  I suppose we should be grateful
that he didn't specify APL as a boustrophedon.

We already have Forth.

--Chuck

Reply via email to