nodeconf / EU-CFP

Call for participation for NodeConf.eu 2015
10 stars 6 forks source link

Building a JavaScript compiler #10

Open rstacruz opened 9 years ago

rstacruz commented 9 years ago

Hi! I'm the author of js2coffee, a JavaScript to CoffeeScript compiler, among many other JS projects. I had a lot of fun writing a JavaScript compiler (or "transpiler" to be more specific), I learned a lot, and would love to share the story of building it at NodeConf.

Tentative outline

  1. What is a compiler? A short recap on the components of a compiler today explaining tokenizers, parsers, and generators.
  2. About the JS AST Let's look at a brief history touching Mozilla's Narcissus project, as well as the emergence of the estree spec used today by Esprima, Babel, Acorn, and many other tools.
  3. JavaScript transpiling I'll explain the first iteration of js2coffee, the problems that plagued it, and how it was solved by Babel, Traceur, and js2coffee 2.0.
  4. The future Given the emergence of new developments like estree and es6, I'll share my thoughts on what this means for the future of JavaScript.

    Links