The Birth and Death of JavaScript [video] (2014)
destroyallsoftware.com
destroyallsoftware.com
The Birth and Death of JavaScript (2014) [video] - https://news.ycombinator.com/item?id=27538040 - June 2021 (43 comments)
The Birth and Death of JavaScript - https://news.ycombinator.com/item?id=26696857 - April 2021 (1 comment)
The Birth and Death of JavaScript (2014) - https://news.ycombinator.com/item?id=26622984 - March 2021 (2 comments)
The Birth and Death of JavaScript - https://news.ycombinator.com/item?id=19147184 - Feb 2019 (1 comment)
The Birth and Death of JavaScript - https://news.ycombinator.com/item?id=11898573 - June 2016 (1 comment)
The Birth and Death of JavaScript [video] - https://news.ycombinator.com/item?id=7605687 - April 2014 (227 comments)
He also predicted a huge war after the adoption of (W)ASM and we have the possible ignition point for that in eastern Ukraine at the moment...
I went through a few of the classes and loved them!
If you’re reading this, hi Gary! You’re cool. This talk was awesome. You did a great job.
I still believe that it is a miracle that we have WASM as a standard, and that it runs smoothly across different browser vendors, but why nobody seems to be worried about lack of progress in performance?
LLVM IR would be a much better binary target. It was used in the abandoned PNaCL project. AFAIK Apple uses it (bitcode) to store apps that are later compiled for specific platforms. WASM looks like a toy compared with this technology.
If you're trying to run the same IR on 32-bit and 64-bit devices, I'd expect you'd need to freeze the word size anyway -- if a C or C++ program uses sizeof(), what value gets returned?
Blocking IO doesn't get solved by switching to LLVM either; you can't block in browser WASM because it'd block the JS thread; a WASM engine not attached to a browser has no such issues. (I wish at least one-shot continuations would get added so that this could become a bit easier in the browser, but I understand the hesitancy to do so...)
That referred to the content of Gary Bernhardt's talk, not to (current) reality.
I worked on PNaCl back in 2011. There was a growing understanding that choosing LLVM IR as the representation was a mistake. I even tried to come up with something better, but failed to do so. I was glad to see asm.js and then WebAssembly coming to the scene. In my opinion, WebAssembly is better than what PNaCl could have ever become.
update: and then there was a famous post, "LLVM IR is a compiler IR": https://groups.google.com/g/llvm-dev/c/N3r_a1Vbrog/m/8lukw1x...
So what was he wrong about?
Yet.
How did the presenter know there was going to be a war going on between 2020 and 2025 all of the way back in 2014?