4 ms·
I don't think so. Browsers will catch up with what developers want. We have seen that with ActiveX, Flash, Java applets, jQuery etc. Every time tech was neede
by TekMol 9y ago
I don't think so.
Browsers will catch up with what developers want.
We have seen that with ActiveX, Flash, Java applets, jQuery etc. Every time tech was needed because "The browser alone is not good enough" the browser became better and made the additional tech obsolete.
- adamnemecek 9y agoYeah, webassembly is kinda changing this.
- FooBarWidget 9y agoYeah, except it took browsers a decade to get better enough, and the road towards getting better is mired by compatibility problems, requiring tons of expertise to deal with that sort of stuff. But developers want to build useful stuff yesterday, and users demand good experiences the day before yesterday.
- TekMol 9y agoI did build useful stuff yesterday. And I'm happy I never used any of the "additional tech". Because now that stuff still runs today and pays my bills.
- amelius 9y ago> Browsers will catch up with what developers want. Developers want everything from JavaScript to C++, Python and Haskell. There's no way a browser can specifically address all what developers want. Therefore browsers should become better virtual machines. Edit: yup, WASM is a good start.
- giancarlostoro 9y agoSounds like you need to read up just a little bit on Web Assembly which is compiled from anything including C, C++, Rust and just about any language. Including Python and others. Web Assembly will make syntax irrelevant for web scripting and JavaScript entirely optional depending on how much WebASM is allowed to access.
- Schampu 9y agoAs soon as Webassembly ships garbage collection and the authors are willed to create a Wasm backend for the given language.
- amelius 9y agoThe hope is that one day it will be possible to implement an efficient concurrent GC in WASM. However, right now it still lacks the primitives (e.g. locking primitives, shared memory, and memory barrier instructions).
- coldtea 9y ago>Web Assembly will make syntax irrelevant for web scripting and JavaScript entirely optional That's what many think, but that's not what WASM is for though. It's still a foreign world to the DOM, and not a first class citizen like JS. It's more about driving canvas games or offloading some expensive computations than actually writing your app in WASM as opposed to JS.
- chriswarbo 9y agoI think the effort going into browsers is a double-edged sword. It's nice that we've got so much work going on, pushing new standards, etc. but it's also making browsers more bloated and making it less viable to bring out new browsers. As more stuff gets done in Javascript, and Javascript gains more APIs, browsers like Lynx, Dillo, Netsurf, and umpteen yet-to-be-written ones are becoming less able to browse the Web. Likewise, the effort required to "upgrade" them would be massive. I think a consolidation of features would alleviate the situation a little: have a small "foundation" of required tech, e.g. a subset of JS (or WebAssembly) with few primitives or APIs, and have the browser pull in polyfills for everything else, including interpreters for fuller, newer JS standards, etc. If a browser is graphical, it could provide a bitmap-blitting primitive, and use polyfills for CSS, fonts, layout, etc. The Chromes and Firefoxes of the world could ignore the polyfills and keep going with their highly-tuned native implementations of these things, but it would prevent "kicking the ladder away" from everyone else.
- glebm 9y agoWhile I agree with the overall sentiment, browsers like Dillon and Lynx don't even implement HTTP caching correctly (they cache everything regardless of the headers). JavaScript is not their biggest problem, as they can plug in one of the existing engines (in fact one of the links forks does just that).
- zimpenfish 9y ago> as they can plug in one of the existing engines As someone who attempted this for Lynx back in the [~late 90s~] early 00s with the Mozilla JS engine of the time, no, they can't. Lynx has no DOM. It parses and renders the HTML to a fixed textual pane without any intermediate format - even `document.write()` is nigh-on impossible to implement because it required keeping a copy of the HTML around, jiggering it with the output, reparsing, and going through the layout again. And that only covers the most trivial uses of `document.write()`. To add Javascript to Lynx would require rewriting the entire internals of Lynx - not going to happen. [Edited to correct the time period]
- chii 9y ago
- lazyjones 9y ago> the browser became better and made the additional tech obsolete. And almost every time, a separate browser codebase died and a vendor switched to WebKit. Because with all this cruft, maintaining a browser codebase has become a nightmare only few can afford.
- amelius 9y ago> with all this cruft, maintaining a browser codebase has become a nightmare only few can afford. Perhaps this is not all too inconvenient for those few ...