Re: Programming is independent from language
I don't think I have missed what you are saying, I just think that you're looking at it with the blinkered perspective of someone who knows languages from a certain family of languages.
I disagree about Algol. Algol is sufficiently like Pascal, and I've seen people put mostly Pascal through a C compiler with macros and pre-processor directives hiding the differences. Algol is quite complicated compared to, say, Fortran (especially if you are looking at contemporary versions of Fortran), but it is still in the same family of languages that I grouped together. That devil is in the detail.
But if you actually do write some APL, you will see that the normal constructs like loops and conditional execution just don't exist. Yes, there is a conditional GOTO, but don't even consider using it, as the code will run like a snail. I guess that if you've never done it, you just don't really understand. I may characterize it like trying to read Chinese languages while only knowing Latin based ones. Yes, they are both interpreting marks on a medium as a vocal language, but you do it in different directions, and you have the difference between phonetic and pictographic symbols. It's difficult to compare, because the fundamental constructs are just not the same. Going back to APL, if you've worked in S or GNU R, you may have some inkling of the difference,
The important thing about APL is that you treat data items as a whole, so you have an array, you treat it as a single data item, not iterate over it with a loop.This almost makes APL like the ultimate functional language, although what you define are actually operators which work like arithmetic operations rather than functions. If you don't know this, you will struggle. This means that you have to start the process with a different perspective, so the entire process differs from beginning to end.
I understand the fundamental thing that you're saying. Being able to break a problem down and concisely describe it in a process in a language is a skill in itself, but not all parts of that process are compatible in all language, so are not transferable.