Darwin Among the Prototypes
During the course of evaluating the various currently popular Javascript toolkits - YUI, Prototype, JQuery, Dojo, Extjs and TIBCO GI as well as the language itself - ECMAScript 4(ActionScript 3, Javascript 2.0), it’s been interesting to observe the evolution of object creation. The name of this blog is a reflection of my early embrace of the language at a time when most people didn’t think it was object-oriented. It was precisely because of my interest in prototypes that I found Javascript appealing! The name of this entry is taken from a post on my Squeak blog that traces my history of exploring prototype-based programming. One thing that most of these toolkits have in common is some kind of support for class-like objects. This is important because
Programs contain many objects. Way too many to make each of them by hand. Objects need to be mass-produced. There are basically two ways of mass producing objects.
- The industrial way - building factory objects that build other objects.
- The biological way - building prototype objects that can be cloned.
Javascript is at an interesting stage in it’s evolution now and it will be interesting to see how the toolkits evolve with the language. For now, I’m focusing on YUI and looking closely at Prototype because of it’s use in Lively Kernel and Extjs because of it’s symbiosis with AIR and Aptana.
Related Links
Brendan’s Roadmap Updates: Javascript 2 and the Open Web
Ajaxian: Brendan Eich Javascript 2 Evolution
Make It Up As You Go: Broad Comparison Chart
Prototype, Dojo, YUI, JQuery Comparison(Fall 2007)
Chris Norton: First Impressions of ExtJS
Javascript Library World Cup(Prototype, Dojo, YUI, Mochikit - Summer 2006)
Javascript Library Loading Speeds(John Resiq of JQuery)