6-Dec

JavaScript

The people behind JavaScript: Allen Wirfs-Brock

The people behind JavaScript is a series of interviews with the members of TC39. The committee consists of JavaScript enthusiasts and language experts who get together to define how new versions of JavaScript should work.

3 min read

·

By Svein Petter Gjøby

·

December 6, 2019

const keyInformation = { name: "Allen Wirfs-Brock", residence: "Near Portland, Oregon USA", firstProgrammingLanguage: "Burroughs-205", work: "Semi-retired, Independent Researcher", yearsInTC39: 13, favoriteMusic: "Classic acid rock" } 

:point_right: Make sure to follow Allen on Twitter

Who are you and what do you do?

I'm a software architect and developer specializing in dynamic programming languages. In the 1980s and 90s I was deeply involved in trying to make Smalltalk an industrial strength programming language. It almost worked. I've been recognized as an ACM Distinguished Engineer and an Ecma International Fellow. I was the editor for the ES5, ES5.1, ES2015.

How did you get into programming?

I became intrigued with them in 6th grade, when small computers filled large rooms.

What do you like about JavaScript?

Its ubiquity. JavaScript is the language of the web and is likely to outlive us all.

How did you get involved in the development of ECMAScript?

In early 2007, I was working as a software architect at Microsoft. At the time, nobody at MSFT cared very much about JavaScript. I saw a need and opportunity to improve JavaScript/ECMAScript for the long term and positioned myself to lead Microsoft's reengagement with TC39.

What contribution are you most proud of?

Producing the ECMAScript 2015 Language Specification and contributing to the design of the language it defines. Part of my role as editor was making sure that all the good ideas actually fit together coherently.

Which upcoming proposal are you most excited about, and why?

The Realms API and closely-related Secure ECMAScript proposals. These are foundational proposals that enable building secure sandboxing of untested JavaScript code within JavaScript applications.

What is the most fun about being a part of the development of ECMAScript?

Impact – knowing that you are having a direct impact of the world's most widely used programming language. You are touching people everywhere.

What is the hardest part about developing a programming language?

Throwing out all the good ideas that that would make the language too complex – then trying to make sure that the features you keep play nicely with each other.

Do you think JS is a complex language now? Think what it would be like if hundreds of additional good feature ideas where incorporated into it.

What do you wish you knew before you started contributing to the development of ECMAScript?

The full history of the language and its standardization efforts. What was the reasoning behind past decisions.

That's why I've spent most of the last two years working on an in depth technical history of the evolution of JavaScript/ECMAScript from 1995 through 2015. It will be completed and available around the middle of 2020.

How do you hope JavaScript will evolve in the future?

I hope that TC39 fills in a few key fundamental holes (for example, Realms) and slows down accretion of faddish surface features.

JavaScript is unlikely to ever be the world's best programming language but its role on the web means that it is likely to be one of the world's longest-lived programming languages.

We need to make sure that in 2119 somebody who wants to get a glimpse of what software development was like in the past can open the "2019 JavaScript Advent Calendar" and it will just work!