Has anyone thought about or written about malleable software + LLM:s? I feel that it is an area that could be quite interesting, but I haven't got yet a clear understanding on what this will lead to.
I think that pretty soon most of end-user code will be generated with the help of LLM:s. Some thoughts/questions I've been thinking about:
1. How to generate programming languages, libraries and abstractions that LLM:s can use well? Is that different from generating libraries etc for humans?
a. LLM:s are faster than humans in processing data, so API:s can be really wide and probably more complex than what would be practical for devs.
b. LLM:s can probably handle more condensed/optimized representation better, too.
c. And be able to infer system affordances directly from code.
2. How to support creating good and maintainable code from LLM:s? And will that matter? Or will actual code become irrelevant?
3. How to modularize apps so that they can be easily composed by LLM:s?
a. My hunch: making apps modular and composable would work really well with LLM:s already now and even better in the future. Doesn't matter if functional or OOP, as long as the LLM can understand the logic.
4. What kinds of new apps and malleable software will LLM:s enable?
5. Also: LLM:s could finally enable removing some boundaries between different programming tools, library ecosystems, etc, by enabling translations/bridges automatically.
Any thoughts?