cctalk Digest, Vol 80, Issue 5
Paul Koning
paulkoning at comcast.net
Thu May 6 19:43:30 CDT 2021
> On May 6, 2021, at 5:53 PM, Adam Thornton via cctalk <cctalk at 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
More information about the cctalk
mailing list