We need alternative or supplemental standards. One-size-fits-all NOT. Could something like Java Applets and Flash have been "done right"? I suspect it's worth trying again, but applying lessons learned, being DOM is dragging us down.
Keep in mind that Java Applets didn't require programming in Java, only that a language compiler generate Java bytecode. Thus, this is not exchanging JavaScript for Java. And Web-Assembly doesn't appear to get us away from the friggen DOM; it only solves the language half of the problem, not the UI side.
https://www.reddit.com/r/programming/comments/otixwo/comment...
Summary of list:
* Statefulness tied to session
* Predictable & consistent text positioning
* Split-panels/frames (HTML5 butchered them)
* Combo-boxes
* Nested drop-down menus
* MDI/dialog ability tied to session
* Tabbed panels
* Tool-bars
* Sliders and turn-knobs
* Editable data-grid
* Expandable trees
* "Normal" multi-select
* Status bar (newer browsers screwed them up)
* Fuller keyboard shortcuts
* Graphic/art elements & data inputs at same time
* Consistent & biz-friendly number & date inputs
So at the core, you probably need:
* Something like an assembly specification
* Something like a memory model specification
* lots of other stuff like a common binary program format, but I digress
The JVM and WASM provide those. Flash did that too... sorta, just without a formal or open specification (not so great).
The final piece missing is probably a way to render 'stuff', probably in a vector format, so the device could rasterize it. So yeah, another formal specification here, something 'like' SVG.
So maybe if browsers only supported SVG and said SVG data could be produced by executing some sort of pluggable backend (like a JVM or WASM environment), you'd have a pretty cool system that could do anything.
But this sorta misses the whole point of HTML. Originally back in like 1997, all stuff on the web was supposed to look alike; eg: your browser would render all submit buttons the same for every site. HTML was an abstraction language for essentially native UI elements on the computing system.
But as the web grew towards an advertising model and away from a scientific purpose, it became important to be able to style things _exactly_ the way the marketing department wanted. So along comes CSS and years of other changes that allow you to customize literally everything.
So then we'll swing back hard the other way: not everyone needs a virtual machine and SVG graphics. If Grandma's catering on the web just needs a simple submit form that POSTs orders to her email account via postfix, we shouldn't need more than a few basic common elements. So yeah, we probably need some ways to markup text on a page... and we're back to where we started.
Really we probably need both approaches available, but we're stuck with JavaScript being the worst of so many worlds but is the unfortunate official language over the internet, and ugly HTML elements that need a facelift.
Everything above is an opinion. Fire away.
At some point you might as well drop down to OS widgets and go native.