This article doesn't actually list any self-claimed "fundamental deficiencies". There's a reason that C (any many other languages) have been using pre and post conditional loops for over fifty years - because it's what the machine actually does, and they are straight forward to follow. The article mentions "A C programmer would write", and then shows two nested for loops. This is almost correct, but I think any good…
> There's a reason that C (any many other languages) have been using pre and post conditional loops for over fifty years
> The J language was written in 1990. It's now 2019. The language is just wrong.
Is some practice being old good or bad?