Test results from base Linux/PPC
Running the tests on a freshly installed Ubuntu Lucid Lynx, I got 5671 Passed tests 14 Dashed hopes 3 Failed tests The three failed tests are --- Running tests in base/coding --- base/coding/decoding.m: Failed test: decoding.m:197 ... decoding version 0 of class NSData Failed test: decoding.m:197 ... decoding version 0 of class NSMutableData --- Running tests in base/NSNumber --- base/NSNumber/test00.m: Failed test: test00.m:111 ... NSDecimalNumber charValue works The latter of these fails due to a mismatch between signed and unsigned char. The test uses (char)200 == [val1 charValue] The result of charValue is signed char, but char is unsigned by default on powerpc. For the former I don't know the cause (and can't debug ATM, since gdb simply crashes on this system). Wolfgang ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: Test results from base Linux/PPC
On 4 Apr 2011, at 15:56, Wolfgang Lux wrote: --- Running tests in base/NSNumber --- base/NSNumber/test00.m: Failed test: test00.m:111 ... NSDecimalNumber charValue works The latter of these fails due to a mismatch between signed and unsigned char. The test uses (char)200 == [val1 charValue] The result of charValue is signed char, but char is unsigned by default on powerpc. Thanks ... I just changed the test to be '(signed char)200 == [val1 charValue]' since, for consistency, charValue always returns a signed char. ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: GNUstep, Google Summer of Code, and an idea
Am 28.03.2011 um 11:52 schrieb David Chisnall: Thanks Fred, Projects that I'd be interested in mentoring: - Porting GNUstep to the browser. I committed an Objective-C to JavaScript compiler to Étoilé svn over the weekend. Many GNUstep classes should work as-is, some will want reimplementing wrapping their JavaScript equivalents (e.g. GSDictionary, GSString, GSArray), and the drawing-related classes will need tweaking to draw on a canvas. The final step would be implementing DO-over-WebSocket, so you can run view and maybe controller classes in the browser, model classes on the server, and have stuff Just Work™ Hi David and everybody else, 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. 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! 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. 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). cheers, Lars ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: GNUstep, Google Summer of Code, and an idea
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 Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: GNUstep, Google Summer of Code, and an idea
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 rjslo...@me.com 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