Starting at the top:
> Other languages of similar heritage (to Lisp) are still widely used.
Which ones? Unless I'm very mistaken, there were virtually no languages which fit into a similar role as Lisps for at least 1-2 decades after Lisp (1958) came onto the scene. The only language I can think of that would accurately match this description is Prolog (1972), because although Basic (1964) was also a dynamic, symbolic language, it was really meant to be an easier alternative to Fortran II with instant feedback and simpler syntax for people with little to no computer science or math background.
> Some of the above languages are no longer quite as popular as they once were. This will be the definition of "failure" we will use here. The question is why did they fail? The first stand-out is COBOL.
COBOL failed?!? It is possibly one of the most successful languages ever. From a 2018 Reuters report on active COBOL use that continues today (and was even more prevalent in 2009 when this article was written):
- 43% of banking systems - 80% of in-person transactions - 95% of ATM swipes - 220 Billion LOC
> as time progressed fixed sized arrays as data structures became obsolete
According to who? Vast amounts of numerical computation software from weather and climate models to modern AI algorithms make use of fixed length arrays.
> The ALGOL language family succeeded. The reason for this is that these were the languages written by programmers for programmers.
There is no doubt that the Algol (C, really) family of languages have absolutely dominated, but whether that was because they were well designed or something like that seems a questionable notion. K+R were essentially looking for a portable assembler with which to rewrite Unix, and many would argue that C's popularity stemmed primarily from it's use in Unixes, which spread to all main stream operating systems.