What ever happened to Tandem and NonStop OS 2084
Backus' claim is that allowing the definition of new higher-order functions ("functional forms") makes the language too powerful and uncontrolled. He writes (describing FP):
"It is analogous to the power of unrestricted control statements in conventional languages: with unrestricted freedom comes chaos. If one constantly invents new combining forms to suit the occasion, as one can in the lambda calculus, one will not become familiar with the style or useful properties of the few combining forms that are adequate for all purposes. Just as structured programming eschews many control statements to obtain programs with simpler structure, better properties, and uniform methods for understanding their behavior, so functional programming eschews the lambda expression, subsbreastution, and multiple function types."
What ever happened to Tandem and NonStop OS 2085
That's not the same thing, and it is *a* saying, but Eric's free to promulgate a...
He has a point, but I think it is too puritan. All data has to be mapped into sequences, because there is no mechanism for defining new data types - trees, graphs, etc., and so no way of defining new HOFs that work naturally with them. So, he has a fold operator (called insert) for lists, but not one for trees, and there is no unfold operator at all. You might say that FP structures code, but not data. FL allows definition of some new HOFs, suggesting some backtracking on the original purity of the concept.
-- "What's life? Life's easy. A quirk of matter. Nature's way of keeping meat fresh."