Hopefully we’ll see more progress soon

  • Because there is no such thing as a universal standard for software.

    You’re imagining a way for software to talk to each other with something like Esperanto, right? Some universal library interface, a language that can be compiled for every CPU architecture, byte ordering, and operating system.

    This would require all hardware vendors to agree on what that interface is, for each type of device. It would require that the API never changes, or else old devices wouldn’t work with new OSes; the alternative is that OSes have to support years of different versions of the language. It would prevent bug fixes, unless you add the ability to flash individual chips, which would make many more expensive. It would have to be a higher level interface which would limit both innovation and performance tuning. But the biggest issue is that this universal language would have to understand every operating system to know how to access itself using the OS’s paradigm.