Working on the Future of Compile-to-Web Applications

At Microsoft, we strongly believe that the compile-to-web story has a promising future. Working towards this future, we are adding special optimizations for asm.js in Edge on Windows 10. We think this is the start of an exciting path for having your non-JavaScript source code run quickly and harmoniously with the rest of the web, and we can continue building on what we’ve done with asm.js to make compiling to the web even better.

With that in mind, we have recently been talking with developers from Firefox, Chromium, and WebKit about how to iterate on the current compile-to-web story, and what we think is important for this scenario. We have come to a general agreement on a shared set of goals, and for Microsoft we most importantly want:

  • Interoperability with JavaScript: The web already has a vibrant ecosystem, and anything we add should interface nicely with it.
  • Broad language support: We should be able to compile your code from your language of choice.
  • High performance: To be a viable way to bring your programs to the web, we need close to native performance.

Right now we are working under the WebAssembly W3C Community Group, and experimentation/design ideas are being discussed on GitHub. (It’s early in the process, so the actual design is still incomplete and likely to change.)

We’re looking forward to working with Firefox, Chromium, WebKit, and the rest of the community in achieving these goals!

Also, I suggest you check out Luke Wagner’s blog, JF Bastien’s twitter, or WebKit’s bug for perspectives from our colleagues.

Mike Holman

Comments (3)

  1. Anonymous says:

    what is the overlap or link to the Khronos Vulcan SPIRV bytecode?

  2. Anonymous says:

    At long last, the end of the tunnel is finally in sight. Javascript is the IT industry's form of sadomasochism. It's time to bury it and let the healing begin.

  3. Philip says:

    And what about something really evident, like Xaml / c# ?

    … to definitively replace Silverlight !