May 12, 2006

Update: JavaScript to take cues from Python

Eich reflects on JavaScript's beginnings and its future during keynote presentation at the AJAX Experience conference

As it evolves, JavaScript will take its cues from the Python language, Brendan Eich, the creator of JavaScript, said at The AJAX Experience conference on Friday afternoon.

JavaScript is a lynchpin of the popular AJAX (Asynchronous JavaScript and XML) technology for Web development. During his keynote presentation, Eich reflected on JavaScript's beginnings as well as its future. The language was designed to get a lot of mileage out of a few ideas and has not always been such a hot topic, Eich said.

"It's been over ten years, hard to believe. It was the Rodney Dangerfield of languages," said Eich, CTO of Mozilla.

For the future, JavaScript will follow Python. "We're going to learn from Python. JavaScript is pretty close to Python," Eich said. Python 2.5 is being tracked, he said.

JavaScript is borrowing iteration, generators and array comprehensions, with changes in syntax, from Python, Eich later clarified. Not all of the new features planned for JavaScript, however, are part of Python.

An attendee at the conference applauded the Python bent. "Python's a great language and seeing them pattern it after Python is really exciting," said Thabo Fletcher, a software engineer with Front Page, which provides online ad services.

Fletcher noted the impacts of Eich's JavaScript. "He's invented something that pushed Microsoft to do things," Fletcher said.

Improvements to JavaScript are eyed in areas such as type systems, name spaces, block statements, and structural types. Object types will be nullible by default.

"We're adding a lot of fun features," said Eich.

Backward compatibility is critical, Eich stressed. "Any evolution of JavaScript has to be backward-compatible. It can't force you to change the way you write code," he said.

Developers of JavaScript 2 seek scalability and extensibility. "We definitely want it to be extensible because I don't plan on doing this amount of work again," Eich said.

Thread support is not planned, however. Threads are less common in browser implementations and "it's very hard to program with threads," Eich said.

New competition in browsers, from Mozilla's Firefox specifically, has prompted efforts to improve JavaScript. Macromedia's work on ActionScript also was a factor, Eich said.

"Why the long freeze in JavaScript development? A lot of it had to do with the long freeze on browsers due to the IE [Internet Explorer] takeover," Eich said.

Eich noted JavaScript's ability to program browsers. "The way you program things that weren't hardwired into browsers like HTML is with JavaScript."

"More and more people are just using JavaScript because it's certainly fast enough and it's powerful enough now with help from all the surrounding APIs that are in browsers," said Eich.

"I think there is an important point to make here and that is that you can argue stagnation was good on the browser side," Eich said. This enabled work on the server side and development of good frameworks for server content. But that time is past.

"It's time to get back to innovating in the browser space," Eich said.

"Browsers are going to be more and more important because they're going to be on cell phones in great numbers," he said.

He laid out a road map for releases of JavaScript.

"If it all holds, we'll end up in the middle of next year with JavaScript 2 implemented," said Eich.

Prior to JavaScript 2, JavaScript 1.7 is set for implementation in the Firefox 2 browser this fall. JavaScript 1.9 is planned for Firefox 3 in early 2007.

JavaScript 2 is likely to fully displace JavaScript 1 in approximately four years, Eich said.

Paul Krill is an editor at large at InfoWorld.
Close

On Twitter now

Application development

Powered by Twitter

White Paper

D2D Virtual Tape Library Replication Primer

This whitepaper explains the terminology and concepts behind Data Replication technologies and establishes some sizing rules through worked examples. Learn the new paradigm in disaster tolerance—protect data anywhere.

Download now »

White Paper

An Alternative to Virtualization for Datacenter Cost Savings

Server virtualization is a popular option for dealing with mounting datacenter costs. Another equally promising approach is the use of an Application Delivery Controller. Citrix NetScaler provides a low-cost way for organizations to reduce their server count and accrue cost savings from a reduction in space, cooling, power and personnel.

Download now »

White Paper

Why Your Firewall, VPN, and IEEE 802.11i Aren't Enough to Protect Your Network

The emergence of WLANs has created a new breed of security threats to enterprise networks.

Included in HP ProCurve WLAN solutions is security technology that alleviates threats from WLANs through:
* Monitoring wireless activity inside and out of the enterprise
* Classifying WLAN transmissions into harmful and harmless
* Preventing transmissions that pose a security threat to the enterprise network
* Locating participating devices for physical remediation

Download now »

White Paper

Bringing the Edge to the Data Center

Effectively address data protection challenges, implementing solutions that help store and protect business–critical data while cutting costs and improving efficiency and reliability.

Download now »

Sign up to receive InfoWorld Resource Alerts

Subscribe to the Developer World Newsletter

Receive a weekly roundup about the art and science of software development.

©1994-2009 Infoworld, Inc.