« App Store - I'm Still Using | Main | Django 1.0 »
Thursday
04Sep2008

Cappucino / Objective-J

Another release for which I've been waiting: Cappucino / Objective-J. Objective-J is a new language that is to Javascript what Objective-C is to C. For those that don't know, Objective C runs on top of plain old C (ANSI C, I believe) and provides a dynamic runtime and an object-oriented programming model inspired by Smalltalk (message based, with keywords as part of the message).

Objective-J and Cappucino run the web site / application 280 Slides, a PowerPoint/Keynote style presentation tool. With Objective J (the language) and Cappucino (the framework), they were able to deliver a desktop style application on the web, using classes and syntax very similar to desktop application development on Mac OS X / Cocoa.

Which means we now have at least two Cocoa inspired Javascript frameworks, with the other being SproutCore. SproutCore, however, is pure Javascript and doesn't have the Objective J component. Whether we need new languages written in and interpreted in Javascript is something one could put up for debate, but I'm personally quite fascinated by what has been accomplished with Objective J, whereas SproutCore is far less interesting to me in a sea of Dojo, YUI, ExtJS, and so on.

Plus - last time I tried to use SproutCore, it seemed rather tied to Ruby and/or Rails, which immediately put a damper on my exploration of it. It claims to be agnostic, but it then felt like a heavier burden was on me as a Python programmer to figure out how I might try to integrate it into my system.

I don't yet know what Cappucino and Objective J provide and require for development.