Very cool, does anyone here know the compile time differences to clang/gcc? Does compiling to Emscripten take longer than to binary?
Emscripten and asm.js: C++'s role in the modern web
21–30 of 100 posts
Re: Emscripten and asm.js: C++'s role in the modern web
#22Re: Emscripten and asm.js: C++'s role in the modern web
#23Does anyone know where/if the video of the presentation will be available ?
Re: Emscripten and asm.js: C++'s role in the modern web
#24I like how he says 'compiled c++ (to javascript) is immune to buffer overflows' yet completely sidesteps the real issue at hand: Every major javascript virtual machine is riddled with security holes. In Firefox case (no sandbox, no process-per-tab, one of the worst C++ codebases I've ever seen security-wise, _infested_ with memory leaks and UAFs) these holes can effortlessly lead to system compromise. In Chrome case,…
Re: Emscripten and asm.js: C++'s role in the modern web
#25I like how he says 'compiled c++ (to javascript) is immune to buffer overflows' yet completely sidesteps the real issue at hand: Every major javascript virtual machine is riddled with security holes. In Firefox case (no sandbox, no process-per-tab, one of the worst C++ codebases I've ever seen security-wise, _infested_ with memory leaks and UAFs) these holes can effortlessly lead to system compromise. In Chrome case,…
Now you have separate processes for each tab.
Still, considering that the underlying browsers are implemented in C++, I don't think anyone is under the impression that this is some kind of wonderful security feature.
Re: Emscripten and asm.js: C++'s role in the modern web
#26...seriously?? Normal slide decks are annoying enough, but one that doesn't have the fade ins/outs stripped and progressively adds things instead of showing the whole screen (er, slide) at once? WTF happened to usability? Slides are meant to support a talk . Putting everything on the slides, while it does let you just read from them, gives a bad UX for the talk attendees. Posting proper (ie, supporting ) slides -- li…
It uses reveal.js. You can ESC or Pinch on device to go to the overview, then click a slide that way as well. https://github.com/hakimel/reveal.js
Re: Emscripten and asm.js: C++'s role in the modern web
#27I like how he says 'compiled c++ (to javascript) is immune to buffer overflows' yet completely sidesteps the real issue at hand: Every major javascript virtual machine is riddled with security holes. In Firefox case (no sandbox, no process-per-tab, one of the worst C++ codebases I've ever seen security-wise, _infested_ with memory leaks and UAFs) these holes can effortlessly lead to system compromise. In Chrome case,…
In practice it's similar to the way NACL/pNACL can sandbox code due to the limited instruction set & validation guarantees.
Re: Emscripten and asm.js: C++'s role in the modern web
#28this is a very impressive project; also a humiliation of the field of computer science.
Re: Emscripten and asm.js: C++'s role in the modern web
#29C++'s role in the modern web is that every relevant browser since 1998 is written in it. It does not need JS wankery to be relevant, thank you very much.
Re: Emscripten and asm.js: C++'s role in the modern web
#30There was a recent article on code optimization technique in Safari involving on-the-fly javascript -> LLVM compilation. So the entire chain now will look as C++ -> LLVM -> javascript (asm.js) -> LLVM Things are getting curiouser by the day...
The LLVM phase is really an alternative to the existing DFG JIT, and more precisely to the final phase thereof: the front of the DFG JIT is still used up to CPS optimisations, then it branches right before codegen: DFG generates its code directly while FTL converts DFG to SSA, applies SSA optimisations, converts to LLVM IR and passes the IR to LLVM for codegen.