> Can you think of any other domain where this is expected?
Mathematics? A keyboard?
> People have different needs.
I don't believe that. I believe that most needs are created as a side-effect of telling people they can have unique needs. Truth is, most people have the same needs.
> How would you expect one system to provide for everything? How would such things be developed? Have some standard that everyone needs to conform to? How would you be able to improve such a system if everyone is expected to use the same one? If I'm working on something new, I'm not using the same system as anyone else.
I don't expect a system to provide everything on day one. Most things will be added, not as features but as content.
Take something like the English language. It's general purpose enough to be used to communicate almost anything. I want to apply the same idea to software, make a general-purpose app/UI that can be used to communicate almost everything. Imagine a language like English, but communicated through an interactive interface rather than through static words.
Yes, there will be standards that people will need to conform to in order to use the system.
We're all using English. We're all using the Internet. Yet, they're flexible enough to allow creativity a wide range of content to be created.
> What OS would you use? Which architecture? Which hardware? Which toolchain? Which programming language?
Ultimately, I intend to replace the entire stack, down to the hardware. For now, I will live with the hardware and OS we have, and only create the language. It will heavily borrow logic programming and dependent typing ideas from Prolog and Idris. Hopefully, it will be an interactive language, not just text files.
> Look at the heated discussions that occur just here on HN. Different domains often need very different tools. I can't imagine that there's one ideal system that fits all of these needs, and one that tries to incorporate all of them would surely be unwieldy.
I don't buy it. Heated debates happen between idealists and realists. I'm an idealist, and I'm sure other idealists will agree with the vision. Realists are selfish and simply don't want to get out of their comfort zone to improve the world.
I don't see why the systems and languages should make any compromise. We're dealing with a digital/dynamic medium here, there's no reason it can't adapt to all contexts.
> If you have some thought that you can distinguish between developers and users, remember every developer is in turn a user of some system.
I find the developer/user dichotomy idiotic. I want to eliminate the distinction between consuming and creating software. It should be completely seamless. This is a prerequisite for such a system to even be considered.