by Rico Sta. Cruz (@rstacruz) on Tuesday, 30 August 2016

+3
Vote on this proposal
Status: Submitted
Section
Crisp talk

Technical level
Intermediate

Abstract

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 JSFoo.

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.

Requirements

An open mind

Speaker bio

Rico Sta. Cruz is the web developer/designer behind many popular open source JavaScript libraries in use today. He is one of the top contributors at GitHub, host of JSConf Asia 2013, and the head organizer of the Philippine JavaScript community Manila.js.