Brendan Eich - Toward a language-neutral browser VM

JSConf US 2013

31 May 2013
  1. The web as native code platform

AAA games - e.g. halo, etc Exercise all hardware (memory, gfx etc)

Evolution of web platform - massive improvements in recent years (webRTC, webaudio, etc)

Emscripten - compile C/C++ -> Javascript

ASM.js - near-native JS perf

Demoed Epic “Sanctuary” - insane that this is JS

ASM approach let’s you reuse existing code, not manually rewriting Mapping to JS

asm - “extraordinarily optimizable” low level subset of JS

not a new language use of bitwise operators

“use asm” hint “ahead of time” compilation (versus JIT compilation)

In general, don’t write it by hand

  1. What about blub?

trans-compilers - good for languages at or near JS’s JS is evolving to fill gaps

open issue - garbage collection HEAP vs host JS GC better to hook guest GC to host GC

Lua VM

open issue - JITS open issue - threads

  1. John Henry vs The Steam Hammer
    • don’t want handcoders who helped advance the language vs VMs racing

WebCL?

Serving two masters. Javascript is in all browsers - keep advancing the language and its usage

Evolution of language is a good thing, not everything is planned or included for the reason they are eventually found useful

“Always bet on JS”

Twitter: @BrendanEich

Video

JSConf 2013

This is a quick summary of a talk I attended at JSConf 2013. You can see a list of all those I've summarized notes from here. There's also a General thoughts during JSConf 2013 post for all the non-talk bits and pieces.

There were 3 concurrent tracks at the conference, so only those I attended myself are summarized here. Other attendees have summarized some of the talks I didn't get to due to scheduling conflicts - you can find those at jlongster.com (James Long) and Toby Ho's github repo.