> On May 6, 2021, at 5:53 PM, Adam Thornton via cctalk <cctalk@classiccmp.org> 
> wrote:
> 
>> ...
> Yes, that.  C is a great assembly language preprocessor for a PDP-11.  The
> PDP-11 is a beautiful, intelligible architecture, where things happen one
> at a time in sequence.  This is easy to think about.  Unfortunately it's
> got very little to do with the way that modern high-performance silicon
> gets stuff done.

Sort of.  But while a lot of things happen in parallel, out of order, 
speculatively, etc., the programming model exposed by the hardware still is the 
C sequential model.  A whole lot of logic is needed to create that appearance, 
and in fact you can see that all the way back in the CDC 6600 "scoreboard" and 
"stunt box".  Some processors occasionally relax the software-visible order, 
which tends to cause bugs, create marketing issues, or both -- Alpha comes to 
mind as an example.

> (Aside: it's also weird that the one-thing-at-a-time sequencing is the
> thing that feels logical and intuitive to us since it is absolutely not how
> our brains work.)
> 
> I would argue that Forth and Postscript are hard to understand for a
> different reason than APL: APL is inherently vectorized, and requires, more
> or less, that you treat matrices as single entities.  Not many people's
> brains work that way.  

I wonder.  Consider object oriented programming, where objects that have all 
manner of stuff inside are treated as a unit and have operations performed on 
them.

Agreed on stack languages.  While there's nothing inherently hard about them, 
they don't fit the way we're taught to handle formulas all the way from grade 
one.  In fact, while APL is infix, it's right-associative, which is a definite 
problem.  It's unfortunate Iverson didn't fix the assignment operator problem 
the way POP-2 did, by pointing it to the right so all operators could be 
left-associative.

If Martin Rem's associons ever take off (see my previous email) that will 
require a similar mental process as the one for APL of treating composite data 
as single entities.

        paul


Reply via email to