Cocoa-Like JavaScript Framework Announced 188
TwilightSentry writes "Ars Technica reports that a group of developers has created an Objective-C-like extension to JavaScript along with a class library mirroring Cocoa. They've used these to release an impressive demo app called 280 Slides. The article notes, 'Whereas SproutCore seeks to "embrace the platform" by giving a Cocoa-like development model for developers already using HTML, CSS, and JavaScript to make a web app, Cappuccino and Objective-J take an entirely different approach. "Since Cappuccino runs entirely on the client, at run time, we're never actually generating HTML or CSS," says Boucher. "When you build an application in Cappuccino, you don't need to ever deal with HTML or CSS. All of your interface is designed in Objective-J and Cappuccino. Cappuccino focuses on application architecture more than anything else, like building applications that know how to save and open documents, or copy and paste. We also built a powerful graphics engine into Cappuccino, so you can make rich applications like 280 Slides."' The developers plan to release the framework and preprocessor as open source. No mention is made of a specific license."
Feh (Score:2, Interesting)
I've played with and written interpreted langaugesand for decades I've hels the fervent belief that the further away from C you go the worse the bloat.
And "hello world" is how many bytes in this pig?
Re:Feh (Score:4, Interesting)
That's probably true, but sometimes optimizing for programmers' convenience is more important than reducing every ounce of bloat to the bare minimum. RAM is cheap enough and reusable; programmers' time isn't either.
If you're not trying to write a high-performance scalable computing cluster app, or an operating system, or a fancy computer game, then bloat really isn't an issue.
Stolen graphics? (Score:1, Interesting)
Is it me, or are they blatantly stealing Apple's graphics (design, icons, etc)?
Re:Feh (Score:3, Interesting)
This framework is all in javascript and locally executed, however; with HTML5 local storage you should be able to run it as well as any server app once it's loaded.
If you haven't tried the demo you should, it's really quite superb, just the initial load is rough now that it's been slashdotted.
We always find fault on /. (Score:3, Interesting)
Re:Feh (Score:3, Interesting)
If you have the google gears plugin installed, google docs works offline. Offline support is not an inherent advantage of native apps. The only truly insurmountable advantage native apps have over web apps is performance, but with today's vastly overpowered multi-core machines, performance has faded into the background, and it's going to become less relevant as the browser upgrades get rolled out (javascript 2, faster layout engines, hardware-accelerated graphics api's, ...).
should be interesting in combo with XULRunner (Score:3, Interesting)
I've been playing with XULRunner quite a bit lately and though I haven't yet applied it to a "real" application, I have to say it's pretty nice and convenient to be able to design a cross-platform GUI for a local application using HTML and CSS. The trouble of course is that your application looks like a web page. (This is getting less important now that it supports native widgets of course.)
If this is open-sourced in a license-compatible manner with XULRunner, it might make for some very interesting, user-friendly (i.e., pretty), and completely cross-platform local applications.
Re:Excellent! (Score:3, Interesting)
Re:That wacky javascript (Score:3, Interesting)
Impressive, but broken (Score:3, Interesting)
I had a quick go with 280Slides. The interface was impressively slick.
Then I tried to enter some non-English text, and it totally freaked out on me. When I pressed the keyboard combination to switch input methods, 280slides inserted three capital 'A's with acute accents. When I tried to type a simple Japanese phrase, 280slides inserted a single lower-case 'a' with a little circle over it.
This is the 21st century. We live in an increasingly globalised world. Applications that can't handle Unicode and multiple input methods have no place in this day and age. Back to the drawing board, guys, and don't come back till your nice slick interface has some basic i18n features, please.
Re:SproutCore - it relies on ruby (Score:3, Interesting)
Where can I download it?
I keep hearing how phenomenal this is, but I can't find it and objective-j.org says 'coming soon'.
Come, don't push a website if it doesn't exist.
Re:Reinventing XUL... BADLY (Score:4, Interesting)
Re:Impressions (Score:4, Interesting)
As for MFC, it's a total joke compared to what you can accomplish in Cocoa with a fraction of the code and with a result in another league in terms of stability and quality.
I'm not a rabid fanboi or whatever I'll probably get accused of, but after using a number of languages and frameworks over the years (including developing my own general purpose framework in C++ for Mac) I can tell you that in my experience Cocoa is the best there is right now, and that has been the case for a while.
Re:Impressive, but broken (Score:5, Interesting)
Why would the browser need to tell you about a non-English input method? In my experience of I18N of web apps, this is completely unnecessary, since the input method is invisible to the application (rather like switching keyboard layouts) - all that's needed is for the web app to support Unicode etc. Since JavaScript uses Unicode natively, I can't quite see how 280 North has managed to break Unicode support like this.