4 Comments
User's avatar
Christian Lynbech's avatar

If a paradigm is on the level of (say) functional programming, one might discuss how many paradigms that can exist before you have essentially covered the entire PL space. There are only so many ways you can fruitfully carve it up.

If the question is more like what it would take to make another PL as successfull as JavaScript (noting that any new paradigm obviously would need to ride along some PL demonstrating it), the problem is probably more about the scale it would take to make a new PL a success. New PLs arrive all the time (one such was even mentioned here in the comments) but achieving success at scale is getting increasingly hard. Big companies like Microsoft, Google and Apple can do it, since they control vast platforms on which they can (more or less) dictate the lingua franca; it is close to impossible for a research group to do today what the Smalltalk people were able to do back in the 80s, simply beacuse there is so much software around already, to achieve anything but niche success is virtually impossible.

Expand full comment
Istvan Dobos's avatar

What you wrote Eric made me think, AI writing in human programming languages is the same why humanoid robots exist. Of course, there are industrial robots which look nothing like that. Similarly, AI might make its own languages, at which point we'll lose any oversight.

Anyway, just like you, I'd be sad if we humans ceded programming languages entirely to the robots. On the flipside, it may turn into a hobby research, freed from having to stick with legacy, clunky languages. As I find with AI, any speculation and its opposite may become true at the same time.

Expand full comment
Sean Corfield's avatar

We had several tools in the 4GL/5GL space, back in the day, that generated lower-level code, and we still had to read (and sometimes modify!) the code that was produced. I think of AI as being yet another promise of 4GL/5GL-style code generation, that increasingly will need less and less handholding.

If you think of it in that regard, then Java and JavaScript would be that "lower-level code" which we would all need to be familiar with to check (and maybe tweak) the output of the AI tools. That still seems like a big win to me, and the "paradigm" shift is that we finally get that promised code generation from high-level language/actions.

If we have comprehensive code generation, whether it's FP or OOP under the hood really doesn't matter -- as long as we can make sense of it as needed -- and at the level we "program" the AI tooling, we're in the domain world for the most part and that's neither FP nor OOP: those are "stylistic" implementation details.

Expand full comment
Steve Jackson's avatar

"One counterargument to this is that we have not seen any new ways of programming in about 50 years anyway. "

Eventz is a new way of programming! It presents the first law for software: y = F ( Y , e ) where e is some new event, F is the Function that codes the rules for e, y is the resulting immutable data tuple and Y is the immutable tuple set that is the sole data persistence ( no database). The sole code is in the F. AI can easily code the rules into the Functions. EventzAPI.com

Expand full comment