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.

Prototype-based Ruby 

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

Beyond Feature Comparisions

Prototype, Dojo, YUI, JQuery Comparison(Fall 2007)

Ajaxian Roundup Nov 2007

JS OO Ruby style

Chris Norton: First Impressions of ExtJS

Javascript Library World Cup(Prototype, Dojo, YUI, Mochikit - Summer 2006)

Javascript Library Loading Speeds(John Resiq of JQuery)