JSON's Crockford envisions a post-JavaScript world

JSON's Crockford envisions a post-JavaScript world

What lies ahead for programmers in a theoretical post-JavaScript world? Developer Douglas Crockford, best known for his work on JSON, believes the web development staple needs a successor that can fix multiple programming nuances.

Speaking at the recent Oracle Code conference in San Francisco, Crockford called JavaScript the most popular programming language in the world. But, he asked, what happens after JavaScript? Taking swipes at JavaScript and sometimes programming in general, Crockford covered a laundry list of what he would like to see in a future language, noting that "it would be sad if JavaScript turns out to be the last language."

Crockford griped about systems clutter and confusion in programming, offering a litany of examples. As an example, he mentioned the ongoing disagreement among developers over whether to use tabs or spaces. "Get programmers together and ask, tabs or spaces, and they will have very strongly held opinions and no data to support those opinions," he lamented. "So we spend a lot of time arguing and having problems interoperating." He proposed getting rid of tabs as a solution.

Furthermore, JavaScript as of the ECMAScript 2015 specification has both let and var statements but both are not needed, he said. Var declares a variable in a function, while let is for declaring variables in a block. He prefers let because var confuses Java programmers, and he prefers the const statement, which is similar to let but does not accept assignments.

Crockford criticized JavaScript for having two bottom values: null and undefined. "There's an argument among language designers, should we have bottom values at all? But there's nobody who thinks you should have two of them," he said. Crockford advises not using null, as null is associated with some "terrible" design errors. He believes that the next language should not have null pointers, but nullness maybe should be in it, possibly as an immutable empty object.

He also presented a scenario with JavaScript being turned into a purely functional programming language by getting rid of "impurities" like date, the delete operation, math.random and object.assign. Afterward, he stressed replacing JavaScript rather than adding functional capabilities to it.

Crockford emphasized security as well, noting that it should be built into the structure of a language to stifle the exploits that have been happening frequently. The next language also should be better able to deal with multiple cores. Most languages have followed the sequential model of Fortran, executing one operation after another, he said. "That's not how the world works anymore. We now have lots of cores available to us, which all want to be running at the same time."

IDG Insider

PREVIOUS ARTICLE

«Analytics 50: Call for 2017 entries

NEXT ARTICLE

HackerOne offers bug bounty service for free to open-source projects»
author_image
IDG Connect

IDG Connect tackles the tech stories that matter to you

Add Your Comment

Most Recent Comments

Our Case Studies

IDG Connect delivers full creative solutions to meet all your demand generatlon needs. These cover the full scope of options, from customized content and lead delivery through to fully integrated campaigns.

images

Our Marketing Research

Our in-house analyst and editorial team create a range of insights for the global marketing community. These look at IT buying preferences, the latest soclal media trends and other zeitgeist topics.

images

Poll

Should companies have Bitcoins on hand in preparation for a Ransomware attack?