gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GNUstep, Google Summer of Code, and an idea


From: Gregory Casamento
Subject: Re: GNUstep, Google Summer of Code, and an idea
Date: Tue, 5 Apr 2011 00:00:56 -0400

Robert,

I don't think they're inactive at all.  I've seen plenty of posts from
them on my google Buzz about Cappuccino and things being done with it.
  Don't assume it's "Dead" because there haven't been changes to the
website.   This is the same mistake people make with GNUstep.

I believe that they were on FLOSS Weekly recently and talked about new
developments.   They were recently acquired by Motorola.

GC

On Mon, Apr 4, 2011 at 8:43 PM, Robert Slover <address@hidden> wrote:
> The guys doing the Objective-J/Cappucino/280-North stuff just seem to have 
> disappeared.  No activity on any of those web sites in over a year.  These 
> tools were starting to look really great, too.
>
> Did anyone see the 'Atlas' Web-GUI Builder Demo?:  
> http://280atlas.com/what.php
>
> A web-based 'back' implementation this smooth for GNUStep would be an awesome 
> tool.
>
> --Robert
>
> On Apr 4, 2011, at 6:42 PM, David Chisnall wrote:
>
>> Hi Lars,
>>
>> On 4 Apr 2011, at 22:46, Lars Sonchocky-Helldorf wrote:
>>
>>> today a co-worker of mine brought the Cappucino-Project to my attention.
>>>
>>> http://cappuccino.org/ is a JavaScript based Web-Framework which basically 
>>> implements the Cocoa-API using "Objective-J" which is a funky JavaScript 
>>> dialect modeled after Objective-C but implemented in JavaScript itself (it 
>>> sits on top so to say.
>>
>> I've seen Cappucino before, and in part it was the inspiration for this 
>> project. I don't really like their Objective-J language, so much though, 
>> because it is just different enough from Objective-C that the differences 
>> bite you.
>>
>> It produces some really beautiful output though, and we did consider using 
>> some of their code for web apps made with Étoilé (they actually use some 
>> GNUstep code - at least according to their documentation, I've not looked at 
>> their code much), but I'm too lazy to write view classes in two languages.
>>
>>> While I consider programming in "Objective-J" itself rather weird the 
>>> existence of such a framework only points out the importance of David's 
>>> idea. The world™  seems to be in need of viable web toolkits!
>>
>> Absolutely.  There are only a few thousand.  Definitely one more is needed!
>>
>>> And I like the GWT (Google Web Toolkit)-like approach of David of compiling 
>>> to JavaScript better than writing in "Objective-J" which would IMHO only 
>>> feasible for people already living in the JavaScript-Land. Those people – 
>>> on the other hand – know the Cocoa API very rarely.
>>
>> It would also be nice if we could use the same thing with our UIKit 
>> implementation (when it exists) - compile it for the web, and let people 
>> turn iPhone apps into web apps with a simple recompile.
>>
>>> So I consider this an important project for GNUstep even if we don't find a 
>>> student for this (which means we need to implement this ourselves).
>>
>> The code is in trunk/Languages/ObjC2JS in étoilé svn currently, for anyone 
>> who wants to play with it.  In the test directory, you will find the 
>> JavaScript run-time support code (implements the C memory model and the 
>> Objective-C object model in terms of JavaScript), along with some .m files 
>> that contain tests (which all work, for me at least).  There is also a 
>> jstest.html.  This includes all of the run-time support scripts and 
>> jstest.js, then calls the main() function.  To test one of the files, just 
>> compile it to jstest.m and open this html file with your browser (tested 
>> with FireFox 4 - should also work with Chrome and the WebKit nightly 
>> builds[1]).  All of the bits of C that I have tested work, with three 
>> exceptions:
>>
>> - 64-bit integers don't work, and aren't high up my todo list (ObjC2JS uses 
>> an ILP32 model)
>> - Casting integers to pointers does not work (although pointer arithmetic 
>> does, as does casting pointers to integers).  This is basically impossible 
>> in JavaScript, so I have no plans to implement it.
>> - Bitfields.  These are horrible, but GNUstep uses them all over the place, 
>> so I'll probably get around to it soon.
>>
>> My next step is to implement some of the libc functions that we need (as 
>> wrappers around their JavaScript equivalents, or as stubs), and add some 
>> low-level classes like JSString, JSArray, JSDictionary as wrappers around 
>> JavaScript objects, so that we can use their abstract superclasses from 
>> GNUstep directly.  I also want to add either an implementation of -back, or 
>> an implementation of CoreGraphics + some event handling using the canvas 
>> tag.  We can probably implement CoreAnimation quite easily, since canvas 
>> elements themselves are effectively layers, and can be animated with a 
>> variety of techniques.
>>
>> There are also a few things I need to add in the compiler.  Declared 
>> properties as lvalues in unary and binary operations is currently broken 
>> (e.g. a.b++; or a.b += 2, where a is an object and b is a property) and 
>> exceptions are not implemented (these are trivial to do, wrapping JavaScript 
>> exceptions).
>>
>> I probably won't bother with C++ support, because it is a horrible language, 
>> unless someone wants to pay me a lot of money for it.
>>
>> Anyway, my slightly rambling point is that I plan on spending some time 
>> working on this, and patches are always welcome...
>>
>> David
>>
>> [1] I use some JavaScript stuff to implement the C object model that are 
>> added for WebGL.  It's possible to implement (slow) versions of these in 
>> pure JavaScript, which I'll probably do at some point if I need 
>> compatibility with other browsers.
>> _______________________________________________
>> Gnustep-dev mailing list
>> address@hidden
>> http://lists.gnu.org/mailman/listinfo/gnustep-dev
>
>
> _______________________________________________
> Gnustep-dev mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/gnustep-dev
>



-- 
Gregory Casamento - GNUstep Lead/Principal Consultant, OLC, Inc.
yahoo/skype: greg_casamento, aol: gjcasa
(240)274-9630 (Cell)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]