3 ms·
I agree with you there. Another thought from my experiences: The only way I've seen to scale up the "expressiveness" in a programming language in a way that's
by codewright 14y ago
I agree with you there.
Another thought from my experiences:
The only way I've seen to scale up the "expressiveness" in a programming language in a way that's generally applicable is to make it more declarative. I have mixed feelings about this.
Two primary ways of doing so are functional idioms for "iteration" and concatenative programming.
Things like juxt, mapcat, et al have their equivalents in languages like J, K, Factor, etc.
The only way to elevate yourself above loops and manually assigning intermediates is to flow the data through high-level descriptions of what you want.
Whether that takes the form of a concatenative or functional langauge depends on the coder.
OOP is more about scaling up procedural idioms so that state management and code reuse aren't a total Vietnam. They aren't really more "expressive" with the exception of some of the idioms Smalltalk tossed about.
All that's left otherwise is "ecosystem leverage" such as Mathematica exhibits here. That's not really about the semantics of the programming language, but it's still worth noting if the leverage is relevant to the problem you're solving.