You can subscribe to this list here.
2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(29) |
Aug
(75) |
Sep
(32) |
Oct
(147) |
Nov
(31) |
Dec
(49) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2010 |
Jan
(46) |
Feb
(35) |
Mar
(148) |
Apr
(33) |
May
(53) |
Jun
(46) |
Jul
(60) |
Aug
(44) |
Sep
(135) |
Oct
(23) |
Nov
(68) |
Dec
(42) |
2011 |
Jan
(94) |
Feb
(55) |
Mar
(114) |
Apr
(78) |
May
(64) |
Jun
(10) |
Jul
(31) |
Aug
(2) |
Sep
(25) |
Oct
(13) |
Nov
(8) |
Dec
(24) |
2012 |
Jan
(5) |
Feb
(33) |
Mar
(31) |
Apr
(19) |
May
(24) |
Jun
(23) |
Jul
(14) |
Aug
(15) |
Sep
(12) |
Oct
(3) |
Nov
(4) |
Dec
(19) |
2013 |
Jan
(8) |
Feb
(20) |
Mar
(4) |
Apr
(2) |
May
(1) |
Jun
(2) |
Jul
|
Aug
(1) |
Sep
(2) |
Oct
(1) |
Nov
(4) |
Dec
|
2014 |
Jan
|
Feb
|
Mar
(6) |
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2015 |
Jan
(7) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(6) |
2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2019 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Panayotis K. <pan...@pa...> - 2009-10-05 00:58:24
|
On 05 Οκτ 2009, at 3:05 π.μ., blake miller wrote: > I don't know much about the licenses out there. Does XMLVM being > under GPL mean I cannot use it to create an application that I charge > for? Of course you can, but you have to give the source code of your program freely available. |
From: blake m. <bla...@gm...> - 2009-10-05 00:05:47
|
I don't know much about the licenses out there. Does XMLVM being under GPL mean I cannot use it to create an application that I charge for? The point of my current development project would be to eventually put it on the App Store (iPhone). I would be happy to make a donation to the project however, instead, if this is a possibility? What are my options in this regard? Thanks Blake Miller |
From: Panayotis K. <pan...@pa...> - 2009-10-04 23:15:09
|
On 03 Οκτ 2009, at 7:21 μ.μ., Wolfgang Korn wrote: > We carefully decided to put our project under GPL. And there have > already been some discussions on the mailing list concerning this > topic. > > Usually people are having problems with the GPL if they want to build > software which is not open source - mostly because they want to do > commercial apps and want to make money out of it. There is nothing > wrong > with writing commercial apps based on open source tools. But our point > of view is, that in such a case something has to be given back to the > open source community. In our case we want to be given something back > which helps us to further improve our project. This can be monetary > funding or hardware sponsoring as well as providing a significant > contribution to the project. In turn we provide something called a > linking exception, which allows you to use XMLVM without putting your > project under GPL as well. > > -- Wolfgang Yes, I understand your point of view. I am too an open source developer and I have experienced more than once the situation you are describing. I was even offered some kind of "payment" to implement a couple of commercial features, which (payment) was retracted later on (and I was really pissed off). Still, I don't feel comfortable to use at the heart of my (possible future) application something that is not, at the end of the day, as free as it sounds. There is not any (popular) open source library (not to mention part of a build tool-chain) that is still under the restrictive GPL License. Please let me remind you QT (and of course KDE), and how many developers left this camp to ride the Gnome/GTK wagon -- even when TrollTech decided to give it under a dual license, it was already too late. Of course, giving back to the community is something that I not only vote for, but it's also something I try to do it (and persuade others to do it) as much as I can. That's why I talked about LGPL which exactly ensures that. I know that the core code of this project belongs to you (as a group), and you can do whatever you want with it. But, believe me, I am looking at the whole situation with great skepticism and I have the feeling that there a lot of people like me. I just can't trust an alpha/beta open source project which does not provide any warranty (it's GPL, right?), only because my favorite language is Java (with Obj-C being my second choice). You project sounds really promising, but it's really not known at all. I strongly believe that you'll give a great boost on your project if only you have a more friendly license even from commercial applications. Just imagine the history of Linux, if GCC and it's products and libraries were stuck to GPL. |
From: Inderjeet S. <ind...@gm...> - 2009-10-04 22:44:50
|
Any takers for starting a XMLVM compatible library (for Java classes) under an Apache style license hosted at code.google.com? I will be happy to contribute some code seeding it. Thanks Inder On Sat, Oct 3, 2009 at 9:21 AM, Wolfgang Korn <wol...@xm...> wrote: > We carefully decided to put our project under GPL. And there have > already been some discussions on the mailing list concerning this topic. > > Usually people are having problems with the GPL if they want to build > software which is not open source - mostly because they want to do > commercial apps and want to make money out of it. There is nothing wrong > with writing commercial apps based on open source tools. But our point > of view is, that in such a case something has to be given back to the > open source community. In our case we want to be given something back > which helps us to further improve our project. This can be monetary > funding or hardware sponsoring as well as providing a significant > contribution to the project. In turn we provide something called a > linking exception, which allows you to use XMLVM without putting your > project under GPL as well. > > -- Wolfgang > > > Panayotis Katsaloulis wrote: > > Hello ! > > > > I am thinking, why this tool-chain/library is under the GPL License, > > and not something more appropriate for a library, such as LGPL or BSD? > > > > I have this question since usually such tools have a more relaxed > > license, on who is linking on what. > > > > Thanks > > > > > ------------------------------------------------------------------------------ > > Come build with us! The BlackBerry® Developer Conference in SF, CA > > is the only developer event you need to attend this year. Jumpstart your > > developing skills, take BlackBerry mobile applications to market and stay > > ahead of the curve. Join us from November 9-12, 2009. Register > now! > > http://p.sf.net/sfu/devconf > > _______________________________________________ > > xmlvm-users mailing list > > xml...@li... > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > > > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9-12, 2009. Register now! > http://p.sf.net/sfu/devconf > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > |
From: Wolfgang K. <wol...@xm...> - 2009-10-03 16:22:56
|
Blake, currently we do not support file access. The only API we currently offer is reading and writing of key/value pairs using the NSUserDefaults class. Especially the NSFileHandle/Manager classes are not supported by now. The same is true for the NSPersistentStore class. -- Wolfgang blake miller wrote: > I'm trying to find the best way (if there is any currently) to store > data on the iPhone. I'm having trouble figuring out the Java API for > Cocoa, particularly with how to do something like save and read a file > to the device. Can someone provide a code sample for this, or direct > me to the correct Java classes? > > Thanks > Blake > bla...@gm... > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9-12, 2009. Register now! > http://p.sf.net/sfu/devconf > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > |
From: Wolfgang K. <wol...@xm...> - 2009-10-03 16:22:09
|
We carefully decided to put our project under GPL. And there have already been some discussions on the mailing list concerning this topic. Usually people are having problems with the GPL if they want to build software which is not open source - mostly because they want to do commercial apps and want to make money out of it. There is nothing wrong with writing commercial apps based on open source tools. But our point of view is, that in such a case something has to be given back to the open source community. In our case we want to be given something back which helps us to further improve our project. This can be monetary funding or hardware sponsoring as well as providing a significant contribution to the project. In turn we provide something called a linking exception, which allows you to use XMLVM without putting your project under GPL as well. -- Wolfgang Panayotis Katsaloulis wrote: > Hello ! > > I am thinking, why this tool-chain/library is under the GPL License, > and not something more appropriate for a library, such as LGPL or BSD? > > I have this question since usually such tools have a more relaxed > license, on who is linking on what. > > Thanks > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9-12, 2009. Register now! > http://p.sf.net/sfu/devconf > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > |
From: Wolfgang K. <wol...@xm...> - 2009-10-03 14:16:49
|
Pasquale, yes - you're right. As you already figured out: There also have to be some png files in the root of your classpath. These are battery.png, chassis.png and wifi.png, which can be found in the project's var/iphone subfolder. If you run the ant script provided by xmlvm there are a couple of sample apps being build by the build script. Especially the demos in the dist/demo/iphone subfolder show how to set your classpath correctly. And finally one last thing: Please post future questions to our mailing list at xml...@li.... -- Wolfgang On Thu, Oct 1, 2009 at 3:20 PM, Pasquale Di Rienzo <pa...@ya...> wrote: > Hi,I'm trying xmlvm for the first time but I can't get it to work(I want to > develop an Iphone application using java). > I use eclipse as IDE and I did this: > 1)I build xmlvm using ant. > 2)From dist directory I added to my project the objc-compat.jar. > 3)I made the exemple of the documentation (Hello Worlds). > 4)I got these exceptions: > java.lang.NoClassDefFoundError: org/lwjgl/LWJGLException > at > org.xmlvm.iphone.internal.SimulatorGUI.addDevice(SimulatorGUI.java:37) > at org.xmlvm.iphone.internal.SimulatorGUI.<init>(SimulatorGUI.java:28) > at > org.xmlvm.iphone.internal.SimulatorDesktop.<init>(SimulatorDesktop.java:54) > at org.xmlvm.iphone.UIApplication.<init>(UIApplication.java:19) > .... > > Could you help me out please?Tutorial is not very exaustive...thanks you in > advance. > Greetings > Pasquale > > |
From: blake m. <bla...@gm...> - 2009-10-03 01:22:02
|
I'm trying to find the best way (if there is any currently) to store data on the iPhone. I'm having trouble figuring out the Java API for Cocoa, particularly with how to do something like save and read a file to the device. Can someone provide a code sample for this, or direct me to the correct Java classes? Thanks Blake bla...@gm... |
From: Panayotis K. <pan...@pa...> - 2009-10-03 00:21:38
|
Hello ! I am thinking, why this tool-chain/library is under the GPL License, and not something more appropriate for a library, such as LGPL or BSD? I have this question since usually such tools have a more relaxed license, on who is linking on what. Thanks |
From: Sascha H. <sa...@xm...> - 2009-10-01 19:47:43
|
Hello Bjoern, thanks for asking, and excuse me for not replying earlier. We did in fact get your patch at http://xmlvm-reviews.appspot.com/ and are processing it right now. Thank you for your contribution. Expect feedback on the weekend. Again sorry for the delay, we promise to react fast in the future :) // Sascha On Wed, Sep 30, 2009 at 8:15 PM, Björn Caroll <bj...@ca...>wrote: > Hi! > Many weeks ago I submitted a patch on a link found on the xmlvm.org > site. Then there was another submission but I can not find either nor > are they merged into the main. > > What is the correct way to submit a patch? > > Regards Björn > > > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9-12, 2009. Register now! > http://p.sf.net/sfu/devconf > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > |
From: Björn C. <bj...@ca...> - 2009-09-30 18:36:10
|
Hi! Many weeks ago I submitted a patch on a link found on the xmlvm.org site. Then there was another submission but I can not find either nor are they merged into the main. What is the correct way to submit a patch? Regards Björn |
From: Jacob N. <jac...@gm...> - 2009-09-21 09:07:49
|
Hi Arno and Kevin, thanks for your great replies. As Objective-C and its classes are new to me (as well as XMLVM) another possibility just occured to me - converting "my" extra time spending into money and paying you guys (or someone you know and trust), the money for improving XMLVM. Thas is, a months salary or so, for making these improvements in a way that allows us to use arrays of simple types with more or less the performance in we have in Java. I would love to contribute somehow to this open source project, and perhaps you know someone who would like to get more involved, and already knows XMLVM and Objective-C ? Yours, Jacob 2009/9/21 Jacob Nordfalk <jac...@gm...> > Hello Sascha, > > thanks for your quick reply. > > In our case the hope was to use 170 hours on preparing and porting our Java > code, withing one calendar month. > We have now changed that estimate to the double - 340 hours, within 1 1/2 > calendar month. > > We are proficient Java coders (Objective-C is new, but for array > manopulations it probably wouldnt seem to give too much headache :-) and one > (I) has understanding of XML, bytecode and virtual machines. I could > allocate up to 60 hours for improving XMLVM during the next month if that > could solve our problems. > > I know 60 hours isnt much, but as economy is a concern here must weight it > against finding another way of porting the application (eventually by hand). > If you, within these time contraint, would recommend spending some time > improving XMLVM and your'e willing to guide me and engage yourselves in the > project too, then lets consider it. > > However, it seems to me that there is another performance problem here, and > that is the usage of NSMutableArray of objects instead of a byte[] array ? > > I would be very thankfull if you could comment with your best guess on, > whether the factor 20 somes from the stack-based model used for generating > Objective-C code, or from the usage of NSMutableArray of objects instead of > byte[] arrays? > > Another important questions is then: How much effort would be required to > make a version of XMLVM that generated code using arrays of simple type > instead of arrays ? > > Thank you, > Jacob > > 2009/9/21 Sascha Haeberling <sa...@xm...> > > Hello Jacob, >> thank you for your great analysis and question. >> >> You are absolutely right. As you can see, we are trying to mimic a JVM as >> close as possible. While we think that the performance is fine for most use >> cases, some use cases (like yours) can actually perform much worse when >> being cross-compiled with XMLVM. Therefore, one of our current tasks is to >> look at converting our stack-bases model to a register-based one, so that >> languages like Objective-C can benefit. >> >> However, we are still in the planning stage of this and I cannot give you >> any deadlines. Would this be something you are interested in contributing to >> or do you have any other ideas? >> >> Thank you >> // Sascha >> >> On Sun, Sep 20, 2009 at 11:29 PM, Jacob Nordfalk < >> jac...@gm...> wrote: >> >>> Hi, >>> >>> I am considering porting an image manipulation program in Java to iPhone >>> using XMLVM. >>> >>> However, code such as >>> >>> public byte[] xxx(byte[] rgb) { >>> >>> for (int i = 0; i<rgb.length; i+=3) { >>> rgb[i] += 1; >>> rgb[i+1]/=2; >>> rgb[i+2]/=2; >>> } >>> >>> return rgb; >>> } >>> >>> seems to run 20 times slower than JIT-enabled Java when compiling xmlvm >>> generated objective-C. >>> >>> When I looked at the code I understood why - the generated objective-C is >>> something like 26 lines >>> per line of Java (here below is for the line: rgb[i+1]/=2). >>> >>> >>> - (NSMutableArray*) optimize___byte_ARRAYTYPE :(NSMutableArray*)n1 >>> { >>> XMLVMElem _stack[4]; >>> XMLVMElem _locals[5]; >>> int _sp = 0; >>> XMLVMElem _op1, _op2, _op3; >>> ... >>> >>> *// rgb[i+1]/=2;* >>> _stack[_sp++].o = _locals[1].o; >>> _op1.i = _locals[4].i; >>> _stack[_sp++].i = _op1.i; >>> _stack[_sp++].i = 1; >>> _op2.i = _stack[--_sp].i; >>> _op1.i = _stack[--_sp].i; >>> _stack[_sp++].i = _op1.i + _op2.i; >>> _op1 = _stack[_sp - 2]; >>> _op2 = _stack[_sp - 1]; >>> _stack[_sp++] = _op1; >>> _stack[_sp++] = _op2; >>> _op1.i = _stack[--_sp].i; >>> _op2.o = _stack[--_sp].o; >>> _stack[_sp++].i = [[_op2.o objectAtIndex: _op1.i] intValue]; >>> _stack[_sp++].i = 2; >>> _op2.i = _stack[--_sp].i; >>> _op1.i = _stack[--_sp].i; >>> _stack[_sp++].i = _op1.i / _op2.i; >>> _op1.i = _stack[--_sp].i; >>> _stack[_sp++].i = (int) (_op1.i & 0xFF); >>> _op1.i = _stack[--_sp].i; >>> _op2.i = _stack[--_sp].i; >>> _op3.o = _stack[--_sp].o; >>> [_op3.o replaceObjectAtIndex: _op2.i withObject: [NSNumber >>> numberWithInt: _op1.i]]; >>> >>> >>> Now, I understand that the speed factor 20 is becaurse XMLVM is emulating >>> the stack-based JVM in Objective-C, >>> but I as I have really LOT of array manipulation code I am asking you: >>> >>> >>> Do you have any advice or ideas on how to make Java code using simple >>> array manipulations run relatively fast on the iPhone ? >>> >>> >>> >>> Thanks you, >>> Jacob Nordfalk >>> >>> -- >>> Jacob Nordfalk >>> एस्पेरान्तो के हो? http://www.esperanto.org.np/. >>> Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ >>> >>> >>> ------------------------------------------------------------------------------ >>> Come build with us! The BlackBerry® Developer Conference in SF, CA >>> is the only developer event you need to attend this year. Jumpstart your >>> developing skills, take BlackBerry mobile applications to market and stay >>> ahead of the curve. Join us from November 9-12, 2009. Register >>> now! >>> http://p.sf.net/sfu/devconf >>> _______________________________________________ >>> xmlvm-users mailing list >>> xml...@li... >>> https://lists.sourceforge.net/lists/listinfo/xmlvm-users >>> >>> >> > > > -- > Jacob Nordfalk > एस्पेरान्तो के हो? http://www.esperanto.org.np/. > Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ > -- Jacob Nordfalk एस्पेरान्तो के हो? http://www.esperanto.org.np/. Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ |
From: Kevin G. <ke...@co...> - 2009-09-21 08:59:40
|
In that case the buffer stuff contributed as part of the OpenGL patch might be a good starting place. The IntBuffer/FloatBuffer etc are essentially wrapped arrays as it stands. Kev 2009/9/21 Arno Puder <ar...@pu...> > > certainly a good question. There is even one other problem: who > deallocates the array? The nice effect of using an NSMutableArray is > that it ends up on the autorelease pool, so it will eventually be > released. This is not the case if you allocate something that is not > derived from NSObject. > > I think the solution to both problems is to create a new class > XMLVMPrimitiveArray that acts as a wrapper to an efficiently maintained > array. This way you can store the size of the array and you can also > properly dealloc it. This should still be more efficient than using > NSMutableArray. > > Arno > > > Kevin Glass wrote: > > How would you copy with array.length in Java if you're using primitive > > arrays in ObjC? > > > > Statically created arrays would work with sizeof, but don't you end up > > with dynamically allocated arrays during the conversion process? > > > > Kev > > > > 2009/9/21 Arno Puder <ar...@pu... <mailto:ar...@pu...>> > > > > > > Jacob, > > > > it would be nice if you could contribute to XMLVM. As Sascha pointed > > out, we have been thinking for quite some time to add a > > stack-to-register machine transformation at the end of the processing > > pipeline. > > > > You are right that we don't handle arrays very efficiently (this is > > independent of the register machine). There are two byte code > > instructions to create new arrays: newarray and anewarray. The latter > is > > for object references and the former for primitive types. Currently > > XMLVM treats those two byte code instructions the same (i.e., we use > a > > NSMutableArray to store an array of primitive types). I think you > would > > already get a lot of performance boost if we handled this in a > > better way. > > > > Would you be interested to give this a try? You basically would need > to > > change the xmlvm2objc.xsl stylesheet and modify all array related > byte > > codes. newarray would create an efficient Objective-C array and the > > accessor instructions such as iastore directly access the array > without > > a NSMutableArray. > > > > Arno > > > > > > Jacob Nordfalk wrote: > > > Hello Sascha, > > > > > > thanks for your quick reply. > > > > > > In our case the hope was to use 170 hours on preparing and > > porting our > > > Java code, withing one calendar month. > > > We have now changed that estimate to the double - 340 hours, > within 1 > > > 1/2 calendar month. > > > > > > We are proficient Java coders (Objective-C is new, but for array > > > manopulations it probably wouldnt seem to give too much headache > > :-) and > > > one (I) has understanding of XML, bytecode and virtual machines. > > I could > > > allocate up to 60 hours for improving XMLVM during the next month > if > > > that could solve our problems. > > > > > > I know 60 hours isnt much, but as economy is a concern here must > > weight > > > it against finding another way of porting the application > > (eventually by > > > hand). > > > If you, within these time contraint, would recommend spending > > some time > > > improving XMLVM and your'e willing to guide me and engage > > yourselves in > > > the project too, then lets consider it. > > > > > > However, it seems to me that there is another performance problem > > here, > > > and that is the usage of NSMutableArray of objects instead of a > > byte[] > > > array ? > > > > > > I would be very thankfull if you could comment with your best > > guess on, > > > whether the factor 20 somes from the stack-based model used for > > > generating Objective-C code, or from the usage of NSMutableArray > of > > > objects instead of byte[] arrays? > > > > > > Another important questions is then: How much effort would be > > required > > > to make a version of XMLVM that generated code using arrays of > simple > > > type instead of arrays ? > > > > > > Thank you, > > > Jacob > > > > > > 2009/9/21 Sascha Haeberling <sa...@xm... > > <mailto:sa...@xm...> <mailto:sa...@xm... > > <mailto:sa...@xm...>>> > > > > > > Hello Jacob, > > > > > > thank you for your great analysis and question. > > > > > > You are absolutely right. As you can see, we are trying to > > mimic a > > > JVM as close as possible. While we think that the performance > is > > > fine for most use cases, some use cases (like yours) can > actually > > > perform much worse when being cross-compiled with XMLVM. > > Therefore, > > > one of our current tasks is to look at converting our > stack-bases > > > model to a register-based one, so that languages like > Objective-C > > > can benefit. > > > > > > However, we are still in the planning stage of this and I > cannot > > > give you any deadlines. Would this be something you are > > interested > > > in contributing to or do you have any other ideas? > > > > > > Thank you > > > // Sascha > > > > > > On Sun, Sep 20, 2009 at 11:29 PM, Jacob Nordfalk > > > <jac...@gm... <mailto:jac...@gm...> > > <mailto:jac...@gm... <mailto:jac...@gm...>>> > > wrote: > > > > > > Hi, > > > > > > I am considering porting an image manipulation program in > > Java > > > to iPhone using XMLVM. > > > > > > However, code such as > > > > > > public byte[] xxx(byte[] rgb) { > > > > > > for (int i = 0; i<rgb.length; i+=3) { > > > rgb[i] += 1; > > > rgb[i+1]/=2; > > > rgb[i+2]/=2; > > > } > > > > > > return rgb; > > > } > > > > > > seems to run 20 times slower than JIT-enabled Java when > > > compiling xmlvm generated objective-C. > > > > > > When I looked at the code I understood why - the generated > > > objective-C is something like 26 lines > > > per line of Java (here below is for the line: > rgb[i+1]/=2). > > > > > > > > > - (NSMutableArray*) optimize___byte_ARRAYTYPE > > :(NSMutableArray*)n1 > > > { > > > XMLVMElem _stack[4]; > > > XMLVMElem _locals[5]; > > > int _sp = 0; > > > XMLVMElem _op1, _op2, _op3; > > > ... > > > > > > *// rgb[i+1]/=2;* > > > _stack[_sp++].o = _locals[1].o; > > > _op1.i = _locals[4].i; > > > _stack[_sp++].i = _op1.i; > > > _stack[_sp++].i = 1; > > > _op2.i = _stack[--_sp].i; > > > _op1.i = _stack[--_sp].i; > > > _stack[_sp++].i = _op1.i + _op2.i; > > > _op1 = _stack[_sp - 2]; > > > _op2 = _stack[_sp - 1]; > > > _stack[_sp++] = _op1; > > > _stack[_sp++] = _op2; > > > _op1.i = _stack[--_sp].i; > > > _op2.o = _stack[--_sp].o; > > > _stack[_sp++].i = [[_op2.o objectAtIndex: _op1.i] > > intValue]; > > > _stack[_sp++].i = 2; > > > _op2.i = _stack[--_sp].i; > > > _op1.i = _stack[--_sp].i; > > > _stack[_sp++].i = _op1.i / _op2.i; > > > _op1.i = _stack[--_sp].i; > > > _stack[_sp++].i = (int) (_op1.i & 0xFF); > > > _op1.i = _stack[--_sp].i; > > > _op2.i = _stack[--_sp].i; > > > _op3.o = _stack[--_sp].o; > > > [_op3.o replaceObjectAtIndex: _op2.i withObject: > > [NSNumber > > > numberWithInt: _op1.i]]; > > > > > > > > > Now, I understand that the speed factor 20 is becaurse > > XMLVM is > > > emulating the stack-based JVM in Objective-C, > > > but I as I have really LOT of array manipulation code I am > > > asking you: > > > > > > > > > Do you have any advice or ideas on how to make Java code > > using > > > simple array manipulations run relatively fast on the > > iPhone ? > > > > > > > > > > > > Thanks you, > > > Jacob Nordfalk > > > > > > -- > > > Jacob Nordfalk > > > एस्पेरान्तो के हो? http://www.esperanto.org.np/. > > > Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ > > > > > > > > > ------------------------------------------------------------------------------ > > > Come build with us! The BlackBerry® Developer > > Conference in > > > SF, CA > > > is the only developer event you need to attend this year. > > > Jumpstart your > > > developing skills, take BlackBerry mobile applications to > > market > > > and stay > > > ahead of the curve. Join us from November 9-12, 2009. > > > Register now! > > > http://p.sf.net/sfu/devconf > > > _______________________________________________ > > > xmlvm-users mailing list > > > xml...@li... > > <mailto:xml...@li...> > > > <mailto:xml...@li... > > <mailto:xml...@li...>> > > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > > > > > > > > > > > > > > > -- > > > Jacob Nordfalk > > > एस्पेरान्तो के हो? http://www.esperanto.org.np/. > > > Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ > > > > > > > > > > > > ------------------------------------------------------------------------ > > > > > > > > > ------------------------------------------------------------------------------ > > > Come build with us! The BlackBerry® Developer Conference in > > SF, CA > > > is the only developer event you need to attend this year. > > Jumpstart your > > > developing skills, take BlackBerry mobile applications to market > > and stay > > > ahead of the curve. Join us from November 9-12, 2009. > > Register now! > > > http://p.sf.net/sfu/devconf > > > > > > > > > > > > ------------------------------------------------------------------------ > > > > > > _______________________________________________ > > > xmlvm-users mailing list > > > xml...@li... > > <mailto:xml...@li...> > > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > > ------------------------------------------------------------------------------ > > Come build with us! The BlackBerry® Developer Conference in SF, > CA > > is the only developer event you need to attend this year. Jumpstart > your > > developing skills, take BlackBerry mobile applications to market and > > stay > > ahead of the curve. Join us from November 9-12, 2009. Register > > now! > > http://p.sf.net/sfu/devconf > > _______________________________________________ > > xmlvm-users mailing list > > xml...@li... > > <mailto:xml...@li...> > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > > > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9-12, 2009. Register now! > http://p.sf.net/sfu/devconf > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > |
From: Arno P. <ar...@pu...> - 2009-09-21 08:48:35
|
certainly a good question. There is even one other problem: who deallocates the array? The nice effect of using an NSMutableArray is that it ends up on the autorelease pool, so it will eventually be released. This is not the case if you allocate something that is not derived from NSObject. I think the solution to both problems is to create a new class XMLVMPrimitiveArray that acts as a wrapper to an efficiently maintained array. This way you can store the size of the array and you can also properly dealloc it. This should still be more efficient than using NSMutableArray. Arno Kevin Glass wrote: > How would you copy with array.length in Java if you're using primitive > arrays in ObjC? > > Statically created arrays would work with sizeof, but don't you end up > with dynamically allocated arrays during the conversion process? > > Kev > > 2009/9/21 Arno Puder <ar...@pu... <mailto:ar...@pu...>> > > > Jacob, > > it would be nice if you could contribute to XMLVM. As Sascha pointed > out, we have been thinking for quite some time to add a > stack-to-register machine transformation at the end of the processing > pipeline. > > You are right that we don't handle arrays very efficiently (this is > independent of the register machine). There are two byte code > instructions to create new arrays: newarray and anewarray. The latter is > for object references and the former for primitive types. Currently > XMLVM treats those two byte code instructions the same (i.e., we use a > NSMutableArray to store an array of primitive types). I think you would > already get a lot of performance boost if we handled this in a > better way. > > Would you be interested to give this a try? You basically would need to > change the xmlvm2objc.xsl stylesheet and modify all array related byte > codes. newarray would create an efficient Objective-C array and the > accessor instructions such as iastore directly access the array without > a NSMutableArray. > > Arno > > > Jacob Nordfalk wrote: > > Hello Sascha, > > > > thanks for your quick reply. > > > > In our case the hope was to use 170 hours on preparing and > porting our > > Java code, withing one calendar month. > > We have now changed that estimate to the double - 340 hours, within 1 > > 1/2 calendar month. > > > > We are proficient Java coders (Objective-C is new, but for array > > manopulations it probably wouldnt seem to give too much headache > :-) and > > one (I) has understanding of XML, bytecode and virtual machines. > I could > > allocate up to 60 hours for improving XMLVM during the next month if > > that could solve our problems. > > > > I know 60 hours isnt much, but as economy is a concern here must > weight > > it against finding another way of porting the application > (eventually by > > hand). > > If you, within these time contraint, would recommend spending > some time > > improving XMLVM and your'e willing to guide me and engage > yourselves in > > the project too, then lets consider it. > > > > However, it seems to me that there is another performance problem > here, > > and that is the usage of NSMutableArray of objects instead of a > byte[] > > array ? > > > > I would be very thankfull if you could comment with your best > guess on, > > whether the factor 20 somes from the stack-based model used for > > generating Objective-C code, or from the usage of NSMutableArray of > > objects instead of byte[] arrays? > > > > Another important questions is then: How much effort would be > required > > to make a version of XMLVM that generated code using arrays of simple > > type instead of arrays ? > > > > Thank you, > > Jacob > > > > 2009/9/21 Sascha Haeberling <sa...@xm... > <mailto:sa...@xm...> <mailto:sa...@xm... > <mailto:sa...@xm...>>> > > > > Hello Jacob, > > > > thank you for your great analysis and question. > > > > You are absolutely right. As you can see, we are trying to > mimic a > > JVM as close as possible. While we think that the performance is > > fine for most use cases, some use cases (like yours) can actually > > perform much worse when being cross-compiled with XMLVM. > Therefore, > > one of our current tasks is to look at converting our stack-bases > > model to a register-based one, so that languages like Objective-C > > can benefit. > > > > However, we are still in the planning stage of this and I cannot > > give you any deadlines. Would this be something you are > interested > > in contributing to or do you have any other ideas? > > > > Thank you > > // Sascha > > > > On Sun, Sep 20, 2009 at 11:29 PM, Jacob Nordfalk > > <jac...@gm... <mailto:jac...@gm...> > <mailto:jac...@gm... <mailto:jac...@gm...>>> > wrote: > > > > Hi, > > > > I am considering porting an image manipulation program in > Java > > to iPhone using XMLVM. > > > > However, code such as > > > > public byte[] xxx(byte[] rgb) { > > > > for (int i = 0; i<rgb.length; i+=3) { > > rgb[i] += 1; > > rgb[i+1]/=2; > > rgb[i+2]/=2; > > } > > > > return rgb; > > } > > > > seems to run 20 times slower than JIT-enabled Java when > > compiling xmlvm generated objective-C. > > > > When I looked at the code I understood why - the generated > > objective-C is something like 26 lines > > per line of Java (here below is for the line: rgb[i+1]/=2). > > > > > > - (NSMutableArray*) optimize___byte_ARRAYTYPE > :(NSMutableArray*)n1 > > { > > XMLVMElem _stack[4]; > > XMLVMElem _locals[5]; > > int _sp = 0; > > XMLVMElem _op1, _op2, _op3; > > ... > > > > *// rgb[i+1]/=2;* > > _stack[_sp++].o = _locals[1].o; > > _op1.i = _locals[4].i; > > _stack[_sp++].i = _op1.i; > > _stack[_sp++].i = 1; > > _op2.i = _stack[--_sp].i; > > _op1.i = _stack[--_sp].i; > > _stack[_sp++].i = _op1.i + _op2.i; > > _op1 = _stack[_sp - 2]; > > _op2 = _stack[_sp - 1]; > > _stack[_sp++] = _op1; > > _stack[_sp++] = _op2; > > _op1.i = _stack[--_sp].i; > > _op2.o = _stack[--_sp].o; > > _stack[_sp++].i = [[_op2.o objectAtIndex: _op1.i] > intValue]; > > _stack[_sp++].i = 2; > > _op2.i = _stack[--_sp].i; > > _op1.i = _stack[--_sp].i; > > _stack[_sp++].i = _op1.i / _op2.i; > > _op1.i = _stack[--_sp].i; > > _stack[_sp++].i = (int) (_op1.i & 0xFF); > > _op1.i = _stack[--_sp].i; > > _op2.i = _stack[--_sp].i; > > _op3.o = _stack[--_sp].o; > > [_op3.o replaceObjectAtIndex: _op2.i withObject: > [NSNumber > > numberWithInt: _op1.i]]; > > > > > > Now, I understand that the speed factor 20 is becaurse > XMLVM is > > emulating the stack-based JVM in Objective-C, > > but I as I have really LOT of array manipulation code I am > > asking you: > > > > > > Do you have any advice or ideas on how to make Java code > using > > simple array manipulations run relatively fast on the > iPhone ? > > > > > > > > Thanks you, > > Jacob Nordfalk > > > > -- > > Jacob Nordfalk > > एस्पेरान्तो के हो? http://www.esperanto.org.np/. > > Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ > > > > > ------------------------------------------------------------------------------ > > Come build with us! The BlackBerry® Developer > Conference in > > SF, CA > > is the only developer event you need to attend this year. > > Jumpstart your > > developing skills, take BlackBerry mobile applications to > market > > and stay > > ahead of the curve. Join us from November 9-12, 2009. > > Register now! > > http://p.sf.net/sfu/devconf > > _______________________________________________ > > xmlvm-users mailing list > > xml...@li... > <mailto:xml...@li...> > > <mailto:xml...@li... > <mailto:xml...@li...>> > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > > > > > > > > > -- > > Jacob Nordfalk > > एस्पेरान्तो के हो? http://www.esperanto.org.np/. > > Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ > > > > > > > ------------------------------------------------------------------------ > > > > > ------------------------------------------------------------------------------ > > Come build with us! The BlackBerry® Developer Conference in > SF, CA > > is the only developer event you need to attend this year. > Jumpstart your > > developing skills, take BlackBerry mobile applications to market > and stay > > ahead of the curve. Join us from November 9-12, 2009. > Register now! > > http://p.sf.net/sfu/devconf > > > > > > > ------------------------------------------------------------------------ > > > > _______________________________________________ > > xmlvm-users mailing list > > xml...@li... > <mailto:xml...@li...> > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and > stay > ahead of the curve. Join us from November 9-12, 2009. Register > now! > http://p.sf.net/sfu/devconf > _______________________________________________ > xmlvm-users mailing list > xml...@li... > <mailto:xml...@li...> > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > |
From: Kevin G. <ke...@co...> - 2009-09-21 08:42:31
|
How would you copy with array.length in Java if you're using primitive arrays in ObjC? Statically created arrays would work with sizeof, but don't you end up with dynamically allocated arrays during the conversion process? Kev 2009/9/21 Arno Puder <ar...@pu...> > > Jacob, > > it would be nice if you could contribute to XMLVM. As Sascha pointed > out, we have been thinking for quite some time to add a > stack-to-register machine transformation at the end of the processing > pipeline. > > You are right that we don't handle arrays very efficiently (this is > independent of the register machine). There are two byte code > instructions to create new arrays: newarray and anewarray. The latter is > for object references and the former for primitive types. Currently > XMLVM treats those two byte code instructions the same (i.e., we use a > NSMutableArray to store an array of primitive types). I think you would > already get a lot of performance boost if we handled this in a better way. > > Would you be interested to give this a try? You basically would need to > change the xmlvm2objc.xsl stylesheet and modify all array related byte > codes. newarray would create an efficient Objective-C array and the > accessor instructions such as iastore directly access the array without > a NSMutableArray. > > Arno > > > Jacob Nordfalk wrote: > > Hello Sascha, > > > > thanks for your quick reply. > > > > In our case the hope was to use 170 hours on preparing and porting our > > Java code, withing one calendar month. > > We have now changed that estimate to the double - 340 hours, within 1 > > 1/2 calendar month. > > > > We are proficient Java coders (Objective-C is new, but for array > > manopulations it probably wouldnt seem to give too much headache :-) and > > one (I) has understanding of XML, bytecode and virtual machines. I could > > allocate up to 60 hours for improving XMLVM during the next month if > > that could solve our problems. > > > > I know 60 hours isnt much, but as economy is a concern here must weight > > it against finding another way of porting the application (eventually by > > hand). > > If you, within these time contraint, would recommend spending some time > > improving XMLVM and your'e willing to guide me and engage yourselves in > > the project too, then lets consider it. > > > > However, it seems to me that there is another performance problem here, > > and that is the usage of NSMutableArray of objects instead of a byte[] > > array ? > > > > I would be very thankfull if you could comment with your best guess on, > > whether the factor 20 somes from the stack-based model used for > > generating Objective-C code, or from the usage of NSMutableArray of > > objects instead of byte[] arrays? > > > > Another important questions is then: How much effort would be required > > to make a version of XMLVM that generated code using arrays of simple > > type instead of arrays ? > > > > Thank you, > > Jacob > > > > 2009/9/21 Sascha Haeberling <sa...@xm... <mailto:sa...@xm...>> > > > > Hello Jacob, > > > > thank you for your great analysis and question. > > > > You are absolutely right. As you can see, we are trying to mimic a > > JVM as close as possible. While we think that the performance is > > fine for most use cases, some use cases (like yours) can actually > > perform much worse when being cross-compiled with XMLVM. Therefore, > > one of our current tasks is to look at converting our stack-bases > > model to a register-based one, so that languages like Objective-C > > can benefit. > > > > However, we are still in the planning stage of this and I cannot > > give you any deadlines. Would this be something you are interested > > in contributing to or do you have any other ideas? > > > > Thank you > > // Sascha > > > > On Sun, Sep 20, 2009 at 11:29 PM, Jacob Nordfalk > > <jac...@gm... <mailto:jac...@gm...>> wrote: > > > > Hi, > > > > I am considering porting an image manipulation program in Java > > to iPhone using XMLVM. > > > > However, code such as > > > > public byte[] xxx(byte[] rgb) { > > > > for (int i = 0; i<rgb.length; i+=3) { > > rgb[i] += 1; > > rgb[i+1]/=2; > > rgb[i+2]/=2; > > } > > > > return rgb; > > } > > > > seems to run 20 times slower than JIT-enabled Java when > > compiling xmlvm generated objective-C. > > > > When I looked at the code I understood why - the generated > > objective-C is something like 26 lines > > per line of Java (here below is for the line: rgb[i+1]/=2). > > > > > > - (NSMutableArray*) optimize___byte_ARRAYTYPE > :(NSMutableArray*)n1 > > { > > XMLVMElem _stack[4]; > > XMLVMElem _locals[5]; > > int _sp = 0; > > XMLVMElem _op1, _op2, _op3; > > ... > > > > *// rgb[i+1]/=2;* > > _stack[_sp++].o = _locals[1].o; > > _op1.i = _locals[4].i; > > _stack[_sp++].i = _op1.i; > > _stack[_sp++].i = 1; > > _op2.i = _stack[--_sp].i; > > _op1.i = _stack[--_sp].i; > > _stack[_sp++].i = _op1.i + _op2.i; > > _op1 = _stack[_sp - 2]; > > _op2 = _stack[_sp - 1]; > > _stack[_sp++] = _op1; > > _stack[_sp++] = _op2; > > _op1.i = _stack[--_sp].i; > > _op2.o = _stack[--_sp].o; > > _stack[_sp++].i = [[_op2.o objectAtIndex: _op1.i] intValue]; > > _stack[_sp++].i = 2; > > _op2.i = _stack[--_sp].i; > > _op1.i = _stack[--_sp].i; > > _stack[_sp++].i = _op1.i / _op2.i; > > _op1.i = _stack[--_sp].i; > > _stack[_sp++].i = (int) (_op1.i & 0xFF); > > _op1.i = _stack[--_sp].i; > > _op2.i = _stack[--_sp].i; > > _op3.o = _stack[--_sp].o; > > [_op3.o replaceObjectAtIndex: _op2.i withObject: [NSNumber > > numberWithInt: _op1.i]]; > > > > > > Now, I understand that the speed factor 20 is becaurse XMLVM is > > emulating the stack-based JVM in Objective-C, > > but I as I have really LOT of array manipulation code I am > > asking you: > > > > > > Do you have any advice or ideas on how to make Java code using > > simple array manipulations run relatively fast on the iPhone ? > > > > > > > > Thanks you, > > Jacob Nordfalk > > > > -- > > Jacob Nordfalk > > एस्पेरान्तो के हो? http://www.esperanto.org.np/. > > Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ > > > > > ------------------------------------------------------------------------------ > > Come build with us! The BlackBerry® Developer Conference in > > SF, CA > > is the only developer event you need to attend this year. > > Jumpstart your > > developing skills, take BlackBerry mobile applications to market > > and stay > > ahead of the curve. Join us from November 9-12, 2009. > > Register now! > > http://p.sf.net/sfu/devconf > > _______________________________________________ > > xmlvm-users mailing list > > xml...@li... > > <mailto:xml...@li...> > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > > > > > > > > > -- > > Jacob Nordfalk > > एस्पेरान्तो के हो? http://www.esperanto.org.np/. > > Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ > > > > > > ------------------------------------------------------------------------ > > > > > ------------------------------------------------------------------------------ > > Come build with us! The BlackBerry® Developer Conference in SF, CA > > is the only developer event you need to attend this year. Jumpstart your > > developing skills, take BlackBerry mobile applications to market and stay > > ahead of the curve. Join us from November 9-12, 2009. Register > now! > > http://p.sf.net/sfu/devconf > > > > > > ------------------------------------------------------------------------ > > > > _______________________________________________ > > xmlvm-users mailing list > > xml...@li... > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9-12, 2009. Register now! > http://p.sf.net/sfu/devconf > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > |
From: Arno P. <ar...@pu...> - 2009-09-21 08:33:09
|
Jacob, it would be nice if you could contribute to XMLVM. As Sascha pointed out, we have been thinking for quite some time to add a stack-to-register machine transformation at the end of the processing pipeline. You are right that we don't handle arrays very efficiently (this is independent of the register machine). There are two byte code instructions to create new arrays: newarray and anewarray. The latter is for object references and the former for primitive types. Currently XMLVM treats those two byte code instructions the same (i.e., we use a NSMutableArray to store an array of primitive types). I think you would already get a lot of performance boost if we handled this in a better way. Would you be interested to give this a try? You basically would need to change the xmlvm2objc.xsl stylesheet and modify all array related byte codes. newarray would create an efficient Objective-C array and the accessor instructions such as iastore directly access the array without a NSMutableArray. Arno Jacob Nordfalk wrote: > Hello Sascha, > > thanks for your quick reply. > > In our case the hope was to use 170 hours on preparing and porting our > Java code, withing one calendar month. > We have now changed that estimate to the double - 340 hours, within 1 > 1/2 calendar month. > > We are proficient Java coders (Objective-C is new, but for array > manopulations it probably wouldnt seem to give too much headache :-) and > one (I) has understanding of XML, bytecode and virtual machines. I could > allocate up to 60 hours for improving XMLVM during the next month if > that could solve our problems. > > I know 60 hours isnt much, but as economy is a concern here must weight > it against finding another way of porting the application (eventually by > hand). > If you, within these time contraint, would recommend spending some time > improving XMLVM and your'e willing to guide me and engage yourselves in > the project too, then lets consider it. > > However, it seems to me that there is another performance problem here, > and that is the usage of NSMutableArray of objects instead of a byte[] > array ? > > I would be very thankfull if you could comment with your best guess on, > whether the factor 20 somes from the stack-based model used for > generating Objective-C code, or from the usage of NSMutableArray of > objects instead of byte[] arrays? > > Another important questions is then: How much effort would be required > to make a version of XMLVM that generated code using arrays of simple > type instead of arrays ? > > Thank you, > Jacob > > 2009/9/21 Sascha Haeberling <sa...@xm... <mailto:sa...@xm...>> > > Hello Jacob, > > thank you for your great analysis and question. > > You are absolutely right. As you can see, we are trying to mimic a > JVM as close as possible. While we think that the performance is > fine for most use cases, some use cases (like yours) can actually > perform much worse when being cross-compiled with XMLVM. Therefore, > one of our current tasks is to look at converting our stack-bases > model to a register-based one, so that languages like Objective-C > can benefit. > > However, we are still in the planning stage of this and I cannot > give you any deadlines. Would this be something you are interested > in contributing to or do you have any other ideas? > > Thank you > // Sascha > > On Sun, Sep 20, 2009 at 11:29 PM, Jacob Nordfalk > <jac...@gm... <mailto:jac...@gm...>> wrote: > > Hi, > > I am considering porting an image manipulation program in Java > to iPhone using XMLVM. > > However, code such as > > public byte[] xxx(byte[] rgb) { > > for (int i = 0; i<rgb.length; i+=3) { > rgb[i] += 1; > rgb[i+1]/=2; > rgb[i+2]/=2; > } > > return rgb; > } > > seems to run 20 times slower than JIT-enabled Java when > compiling xmlvm generated objective-C. > > When I looked at the code I understood why - the generated > objective-C is something like 26 lines > per line of Java (here below is for the line: rgb[i+1]/=2). > > > - (NSMutableArray*) optimize___byte_ARRAYTYPE :(NSMutableArray*)n1 > { > XMLVMElem _stack[4]; > XMLVMElem _locals[5]; > int _sp = 0; > XMLVMElem _op1, _op2, _op3; > ... > > *// rgb[i+1]/=2;* > _stack[_sp++].o = _locals[1].o; > _op1.i = _locals[4].i; > _stack[_sp++].i = _op1.i; > _stack[_sp++].i = 1; > _op2.i = _stack[--_sp].i; > _op1.i = _stack[--_sp].i; > _stack[_sp++].i = _op1.i + _op2.i; > _op1 = _stack[_sp - 2]; > _op2 = _stack[_sp - 1]; > _stack[_sp++] = _op1; > _stack[_sp++] = _op2; > _op1.i = _stack[--_sp].i; > _op2.o = _stack[--_sp].o; > _stack[_sp++].i = [[_op2.o objectAtIndex: _op1.i] intValue]; > _stack[_sp++].i = 2; > _op2.i = _stack[--_sp].i; > _op1.i = _stack[--_sp].i; > _stack[_sp++].i = _op1.i / _op2.i; > _op1.i = _stack[--_sp].i; > _stack[_sp++].i = (int) (_op1.i & 0xFF); > _op1.i = _stack[--_sp].i; > _op2.i = _stack[--_sp].i; > _op3.o = _stack[--_sp].o; > [_op3.o replaceObjectAtIndex: _op2.i withObject: [NSNumber > numberWithInt: _op1.i]]; > > > Now, I understand that the speed factor 20 is becaurse XMLVM is > emulating the stack-based JVM in Objective-C, > but I as I have really LOT of array manipulation code I am > asking you: > > > Do you have any advice or ideas on how to make Java code using > simple array manipulations run relatively fast on the iPhone ? > > > > Thanks you, > Jacob Nordfalk > > -- > Jacob Nordfalk > एस्पेरान्तो के हो? http://www.esperanto.org.np/. > Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in > SF, CA > is the only developer event you need to attend this year. > Jumpstart your > developing skills, take BlackBerry mobile applications to market > and stay > ahead of the curve. Join us from November 9-12, 2009. > Register now! > http://p.sf.net/sfu/devconf > _______________________________________________ > xmlvm-users mailing list > xml...@li... > <mailto:xml...@li...> > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > > > -- > Jacob Nordfalk > एस्पेरान्तो के हो? http://www.esperanto.org.np/. > Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ > > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9-12, 2009. Register now! > http://p.sf.net/sfu/devconf > > > ------------------------------------------------------------------------ > > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users |
From: Jacob N. <jac...@gm...> - 2009-09-21 07:30:24
|
Hello Sascha, thanks for your quick reply. In our case the hope was to use 170 hours on preparing and porting our Java code, withing one calendar month. We have now changed that estimate to the double - 340 hours, within 1 1/2 calendar month. We are proficient Java coders (Objective-C is new, but for array manopulations it probably wouldnt seem to give too much headache :-) and one (I) has understanding of XML, bytecode and virtual machines. I could allocate up to 60 hours for improving XMLVM during the next month if that could solve our problems. I know 60 hours isnt much, but as economy is a concern here must weight it against finding another way of porting the application (eventually by hand). If you, within these time contraint, would recommend spending some time improving XMLVM and your'e willing to guide me and engage yourselves in the project too, then lets consider it. However, it seems to me that there is another performance problem here, and that is the usage of NSMutableArray of objects instead of a byte[] array ? I would be very thankfull if you could comment with your best guess on, whether the factor 20 somes from the stack-based model used for generating Objective-C code, or from the usage of NSMutableArray of objects instead of byte[] arrays? Another important questions is then: How much effort would be required to make a version of XMLVM that generated code using arrays of simple type instead of arrays ? Thank you, Jacob 2009/9/21 Sascha Haeberling <sa...@xm...> > Hello Jacob, > thank you for your great analysis and question. > > You are absolutely right. As you can see, we are trying to mimic a JVM as > close as possible. While we think that the performance is fine for most use > cases, some use cases (like yours) can actually perform much worse when > being cross-compiled with XMLVM. Therefore, one of our current tasks is to > look at converting our stack-bases model to a register-based one, so that > languages like Objective-C can benefit. > > However, we are still in the planning stage of this and I cannot give you > any deadlines. Would this be something you are interested in contributing to > or do you have any other ideas? > > Thank you > // Sascha > > On Sun, Sep 20, 2009 at 11:29 PM, Jacob Nordfalk <jac...@gm... > > wrote: > >> Hi, >> >> I am considering porting an image manipulation program in Java to iPhone >> using XMLVM. >> >> However, code such as >> >> public byte[] xxx(byte[] rgb) { >> >> for (int i = 0; i<rgb.length; i+=3) { >> rgb[i] += 1; >> rgb[i+1]/=2; >> rgb[i+2]/=2; >> } >> >> return rgb; >> } >> >> seems to run 20 times slower than JIT-enabled Java when compiling xmlvm >> generated objective-C. >> >> When I looked at the code I understood why - the generated objective-C is >> something like 26 lines >> per line of Java (here below is for the line: rgb[i+1]/=2). >> >> >> - (NSMutableArray*) optimize___byte_ARRAYTYPE :(NSMutableArray*)n1 >> { >> XMLVMElem _stack[4]; >> XMLVMElem _locals[5]; >> int _sp = 0; >> XMLVMElem _op1, _op2, _op3; >> ... >> >> *// rgb[i+1]/=2;* >> _stack[_sp++].o = _locals[1].o; >> _op1.i = _locals[4].i; >> _stack[_sp++].i = _op1.i; >> _stack[_sp++].i = 1; >> _op2.i = _stack[--_sp].i; >> _op1.i = _stack[--_sp].i; >> _stack[_sp++].i = _op1.i + _op2.i; >> _op1 = _stack[_sp - 2]; >> _op2 = _stack[_sp - 1]; >> _stack[_sp++] = _op1; >> _stack[_sp++] = _op2; >> _op1.i = _stack[--_sp].i; >> _op2.o = _stack[--_sp].o; >> _stack[_sp++].i = [[_op2.o objectAtIndex: _op1.i] intValue]; >> _stack[_sp++].i = 2; >> _op2.i = _stack[--_sp].i; >> _op1.i = _stack[--_sp].i; >> _stack[_sp++].i = _op1.i / _op2.i; >> _op1.i = _stack[--_sp].i; >> _stack[_sp++].i = (int) (_op1.i & 0xFF); >> _op1.i = _stack[--_sp].i; >> _op2.i = _stack[--_sp].i; >> _op3.o = _stack[--_sp].o; >> [_op3.o replaceObjectAtIndex: _op2.i withObject: [NSNumber >> numberWithInt: _op1.i]]; >> >> >> Now, I understand that the speed factor 20 is becaurse XMLVM is emulating >> the stack-based JVM in Objective-C, >> but I as I have really LOT of array manipulation code I am asking you: >> >> >> Do you have any advice or ideas on how to make Java code using simple >> array manipulations run relatively fast on the iPhone ? >> >> >> >> Thanks you, >> Jacob Nordfalk >> >> -- >> Jacob Nordfalk >> एस्पेरान्तो के हो? http://www.esperanto.org.np/. >> Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ >> >> >> ------------------------------------------------------------------------------ >> Come build with us! The BlackBerry® Developer Conference in SF, CA >> is the only developer event you need to attend this year. Jumpstart your >> developing skills, take BlackBerry mobile applications to market and stay >> ahead of the curve. Join us from November 9-12, 2009. Register >> now! >> http://p.sf.net/sfu/devconf >> _______________________________________________ >> xmlvm-users mailing list >> xml...@li... >> https://lists.sourceforge.net/lists/listinfo/xmlvm-users >> >> > -- Jacob Nordfalk एस्पेरान्तो के हो? http://www.esperanto.org.np/. Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ |
From: Sascha H. <sa...@xm...> - 2009-09-20 22:16:46
|
Hello Jacob, thank you for your great analysis and question. You are absolutely right. As you can see, we are trying to mimic a JVM as close as possible. While we think that the performance is fine for most use cases, some use cases (like yours) can actually perform much worse when being cross-compiled with XMLVM. Therefore, one of our current tasks is to look at converting our stack-bases model to a register-based one, so that languages like Objective-C can benefit. However, we are still in the planning stage of this and I cannot give you any deadlines. Would this be something you are interested in contributing to or do you have any other ideas? Thank you // Sascha On Sun, Sep 20, 2009 at 11:29 PM, Jacob Nordfalk <jac...@gm...>wrote: > Hi, > > I am considering porting an image manipulation program in Java to iPhone > using XMLVM. > > However, code such as > > public byte[] xxx(byte[] rgb) { > > for (int i = 0; i<rgb.length; i+=3) { > rgb[i] += 1; > rgb[i+1]/=2; > rgb[i+2]/=2; > } > > return rgb; > } > > seems to run 20 times slower than JIT-enabled Java when compiling xmlvm > generated objective-C. > > When I looked at the code I understood why - the generated objective-C is > something like 26 lines > per line of Java (here below is for the line: rgb[i+1]/=2). > > > - (NSMutableArray*) optimize___byte_ARRAYTYPE :(NSMutableArray*)n1 > { > XMLVMElem _stack[4]; > XMLVMElem _locals[5]; > int _sp = 0; > XMLVMElem _op1, _op2, _op3; > ... > > *// rgb[i+1]/=2;* > _stack[_sp++].o = _locals[1].o; > _op1.i = _locals[4].i; > _stack[_sp++].i = _op1.i; > _stack[_sp++].i = 1; > _op2.i = _stack[--_sp].i; > _op1.i = _stack[--_sp].i; > _stack[_sp++].i = _op1.i + _op2.i; > _op1 = _stack[_sp - 2]; > _op2 = _stack[_sp - 1]; > _stack[_sp++] = _op1; > _stack[_sp++] = _op2; > _op1.i = _stack[--_sp].i; > _op2.o = _stack[--_sp].o; > _stack[_sp++].i = [[_op2.o objectAtIndex: _op1.i] intValue]; > _stack[_sp++].i = 2; > _op2.i = _stack[--_sp].i; > _op1.i = _stack[--_sp].i; > _stack[_sp++].i = _op1.i / _op2.i; > _op1.i = _stack[--_sp].i; > _stack[_sp++].i = (int) (_op1.i & 0xFF); > _op1.i = _stack[--_sp].i; > _op2.i = _stack[--_sp].i; > _op3.o = _stack[--_sp].o; > [_op3.o replaceObjectAtIndex: _op2.i withObject: [NSNumber > numberWithInt: _op1.i]]; > > > Now, I understand that the speed factor 20 is becaurse XMLVM is emulating > the stack-based JVM in Objective-C, > but I as I have really LOT of array manipulation code I am asking you: > > > Do you have any advice or ideas on how to make Java code using simple array > manipulations run relatively fast on the iPhone ? > > > > Thanks you, > Jacob Nordfalk > > -- > Jacob Nordfalk > एस्पेरान्तो के हो? http://www.esperanto.org.np/. > Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ > > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9-12, 2009. Register now! > http://p.sf.net/sfu/devconf > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > |
From: Jacob N. <jac...@gm...> - 2009-09-20 21:30:12
|
Hi, I am considering porting an image manipulation program in Java to iPhone using XMLVM. However, code such as public byte[] xxx(byte[] rgb) { for (int i = 0; i<rgb.length; i+=3) { rgb[i] += 1; rgb[i+1]/=2; rgb[i+2]/=2; } return rgb; } seems to run 20 times slower than JIT-enabled Java when compiling xmlvm generated objective-C. When I looked at the code I understood why - the generated objective-C is something like 26 lines per line of Java (here below is for the line: rgb[i+1]/=2). - (NSMutableArray*) optimize___byte_ARRAYTYPE :(NSMutableArray*)n1 { XMLVMElem _stack[4]; XMLVMElem _locals[5]; int _sp = 0; XMLVMElem _op1, _op2, _op3; ... *// rgb[i+1]/=2;* _stack[_sp++].o = _locals[1].o; _op1.i = _locals[4].i; _stack[_sp++].i = _op1.i; _stack[_sp++].i = 1; _op2.i = _stack[--_sp].i; _op1.i = _stack[--_sp].i; _stack[_sp++].i = _op1.i + _op2.i; _op1 = _stack[_sp - 2]; _op2 = _stack[_sp - 1]; _stack[_sp++] = _op1; _stack[_sp++] = _op2; _op1.i = _stack[--_sp].i; _op2.o = _stack[--_sp].o; _stack[_sp++].i = [[_op2.o objectAtIndex: _op1.i] intValue]; _stack[_sp++].i = 2; _op2.i = _stack[--_sp].i; _op1.i = _stack[--_sp].i; _stack[_sp++].i = _op1.i / _op2.i; _op1.i = _stack[--_sp].i; _stack[_sp++].i = (int) (_op1.i & 0xFF); _op1.i = _stack[--_sp].i; _op2.i = _stack[--_sp].i; _op3.o = _stack[--_sp].o; [_op3.o replaceObjectAtIndex: _op2.i withObject: [NSNumber numberWithInt: _op1.i]]; Now, I understand that the speed factor 20 is becaurse XMLVM is emulating the stack-based JVM in Objective-C, but I as I have really LOT of array manipulation code I am asking you: Do you have any advice or ideas on how to make Java code using simple array manipulations run relatively fast on the iPhone ? Thanks you, Jacob Nordfalk -- Jacob Nordfalk एस्पेरान्तो के हो? http://www.esperanto.org.np/. Memoraĵoj de KEF -. http://kef.saluton.dk/memorajoj/ |
From: Benjamin A. <bar...@gm...> - 2009-09-15 14:22:04
|
On Sun, Sep 13, 2009 at 7:06 PM, Benjamin Aranguren <bar...@gm...>wrote: > On Sun, Sep 13, 2009 at 3:28 PM, Brian Schimmel < > bri...@go...> wrote: > >> @Sascha: >> Just in case you (or someone else at XMLVM) is going to "fix" it by >> changing the file name case in the repository, let me warn you that a >> case-only rename in a repository breaks some SVN clients on Windows. I >> experienced problems with that in multimple mixed OS X / Windows >> projects, especially with Tortoise SVN. I think it tries to create the >> "new" file before deleting the "old" one, which does not work if both >> have the "same" name from the FS' perspective. >> >> @Benjamin: >> Besides the case problem you posted, is it really possible to compile >> the iPhone App on Ubuntu? I'm not even talking about creating a >> complete Application package that runs on actual devices, I'd be happy >> to compile just to check for errors without needing a Mac. So how did >> you manage? Just copy the SDK over to the Ubuntu machine? If you have >> any hints or links to share, I'd be happy. >> >> Brian >> > > I basically followed steps as outlined by saurik. > You can find it here: > http://www.saurik.com/id/4 > > Luckily, there is a shell script that automates all the steps > http://svn.saurik.com/repos/menes/trunk/iphone/iptc.sh > > Since I wanted to understand what was going on in the script, I ended up > running just parts of it. Most were ran manually. So your mileage may vary > if you choose to run the script. > > It took me a while to compile everything since my eee pc is a little under > powered. > > Give it a try. Maybe we can also start another thread detailing your > experience and I will help as much as I can. > > Just post any questions you may have here, that is, if the group doesn't > mind. > @Brian Found this project on google code http://code.google.com/p/iphonedevonlinux/wiki/Installation It simplifies building toolchain but I have not tried it yet. > > >> 2009/9/13, Sascha Haeberling <sa...@xm...>: >> > Hi Benjamin, >> > >> > so you are actually compiling the iPhone app on Ubuntu and not on OSX? I >> > have never actually tried this and wonder if this can be done >> successfully. >> > >> > However, what you describe makes sense, as OSX's filesystem is not case >> > sensitive, whereas most Linux file systems like ext3 are. This explains >> why >> > you see a problem and we didn't on OSX. >> > >> > // Sascha >> > >> > On Tue, Sep 8, 2009 at 8:42 AM, Benjamin Aranguren < >> bar...@gm...> >> > wrote: >> > >> > > I am using Ubuntu and was just wondering if anybody else has seen this >> > problem when compiling with the generated xmlvm.h. >> > > >> > > >> > > xmlvm.h:14:27: error: UIKit/UiScreen.h: No such file or directory >> > > >> > > >> > > Changing UiScreen.h to UIScreen.h in xmlvm.h fixes the problem (upper >> case >> > I). >> > > #import <UIKit/UiScreen.h> => #import <UIKit/UIScreen.h> >> > > >> > > >> > > I also checked the headers that comes with the iPhone SDK and it is >> also >> > upper case I. >> > > >> > >> ------------------------------------------------------------------------------ >> > > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 >> > 30-Day >> > > trial. Simplify your report design, integration and deployment - and >> focus >> > on >> > > what you do best, core application coding. Discover what's new with >> > > Crystal Reports now. http://p.sf.net/sfu/bobj-july >> > > _______________________________________________ >> > > xmlvm-users mailing list >> > > xml...@li... >> > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users >> > > >> > > >> > >> > >> > >> ------------------------------------------------------------------------------ >> > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 >> 30-Day >> > trial. Simplify your report design, integration and deployment - and >> focus >> > on >> > what you do best, core application coding. Discover what's new with >> > Crystal Reports now. http://p.sf.net/sfu/bobj-july >> > _______________________________________________ >> > xmlvm-users mailing list >> > xml...@li... >> > https://lists.sourceforge.net/lists/listinfo/xmlvm-users >> > >> > >> > > |
From: Benjamin A. <bar...@gm...> - 2009-09-14 14:14:00
|
On Sep 14, 2009, at 3:55 AM, Sascha Haeberling <sa...@xm...> wrote: > I just wanted to fix it and saw that a fix for this has already been > submitted with revision @496, so when you update, it should work now. > Thanks Sascha. It looks like it ws updated when OpenGL support was added. I have updated my source copy but never had the chance to try it yet. Now i just need to spend time and update Makefile. It looks like adding preferred compiler in Makevars would do the trick. Probably better to add an option to xmlvm.jar to specify host env that would in turn write the corresponding compiler options. Sweet! > @Brian: > Thanks for that hint, you are absolutely right that changing > filename cases can lead to problem with svn cients running on case- > insensitive filesystems. However, in this case the fix wasn't about > changing an actual filename. UIScreen.h is part of the iPhone SDK, > and we just pull it in. So the fix was simply to change the > reference in a header file. > > // Sascha > > On Mon, Sep 14, 2009 at 12:28 AM, Brian Schimmel <bri...@go... > > wrote: > @Sascha: > Just in case you (or someone else at XMLVM) is going to "fix" it by > changing the file name case in the repository, let me warn you that a > case-only rename in a repository breaks some SVN clients on Windows. I > experienced problems with that in multimple mixed OS X / Windows > projects, especially with Tortoise SVN. I think it tries to create the > "new" file before deleting the "old" one, which does not work if both > have the "same" name from the FS' perspective. > > @Benjamin: > Besides the case problem you posted, is it really possible to compile > the iPhone App on Ubuntu? I'm not even talking about creating a > complete Application package that runs on actual devices, I'd be happy > to compile just to check for errors without needing a Mac. So how did > you manage? Just copy the SDK over to the Ubuntu machine? If you have > any hints or links to share, I'd be happy. > > Brian > > 2009/9/13, Sascha Haeberling <sa...@xm...>: > > Hi Benjamin, > > > > so you are actually compiling the iPhone app on Ubuntu and not on > OSX? I > > have never actually tried this and wonder if this can be done > successfully. > > > > However, what you describe makes sense, as OSX's filesystem is not > case > > sensitive, whereas most Linux file systems like ext3 are. This > explains why > > you see a problem and we didn't on OSX. > > > > // Sascha > > > > On Tue, Sep 8, 2009 at 8:42 AM, Benjamin Aranguren <bar...@gm... > > > > wrote: > > > > > I am using Ubuntu and was just wondering if anybody else has > seen this > > problem when compiling with the generated xmlvm.h. > > > > > > > > > xmlvm.h:14:27: error: UIKit/UiScreen.h: No such file or directory > > > > > > > > > Changing UiScreen.h to UIScreen.h in xmlvm.h fixes the problem > (upper case > > I). > > > #import <UIKit/UiScreen.h> => #import <UIKit/UIScreen.h> > > > > > > > > > I also checked the headers that comes with the iPhone SDK and it > is also > > upper case I. > > > > > > --- > --- > --- > --------------------------------------------------------------------- > > > Let Crystal Reports handle the reporting - Free Crystal Reports > 2008 > > 30-Day > > > trial. Simplify your report design, integration and deployment - > and focus > > on > > > what you do best, core application coding. Discover what's new > with > > > Crystal Reports now. http://p.sf.net/sfu/bobj-july > > > _______________________________________________ > > > xmlvm-users mailing list > > > xml...@li... > > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > > > > > > > > > > --- > --- > --- > --------------------------------------------------------------------- > > Let Crystal Reports handle the reporting - Free Crystal Reports > 2008 30-Day > > trial. Simplify your report design, integration and deployment - > and focus > > on > > what you do best, core application coding. Discover what's new with > > Crystal Reports now. http://p.sf.net/sfu/bobj-july > > _______________________________________________ > > xmlvm-users mailing list > > xml...@li... > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > > |
From: Sascha H. <sa...@gm...> - 2009-09-14 12:41:35
|
Thanks you Steve for your bug report. I will take a look at it as soon as possible. // Sascha On Tue, Sep 1, 2009 at 7:54 AM, Steve Huntley <st...@xh...> wrote: > I generated a Javascript file from a Java class file using XMLVM. When I > tried to load the Javascript file into the Spidermonkey command-line > Javascript interpreter, I got the following error: > > js> load('org_ibex_nestedvm_UnixRuntime.js'); > org_ibex_nestedvm_UnixRuntime.js:4567: SyntaxError: syntax error: > org_ibex_nestedvm_UnixRuntime.js:4567: __stack[__sp++] = > (__objectref instanceof String[]) ? 1 : 0; > org_ibex_nestedvm_UnixRuntime.js:4567: > .....................................................^ > > Executed on an Ubuntu Hardy computer, with Spidermonkey version 1.7.0 > installed from the standard package repository. > > The Javascript file, as well as the original java file and class file are > attached to a bug report on sourceforge. > > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus > on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > |
From: Sascha H. <sa...@xm...> - 2009-09-14 10:55:59
|
I just wanted to fix it and saw that a fix for this has already been submitted with revision @496, so when you update, it should work now. @Brian:Thanks for that hint, you are absolutely right that changing filename cases can lead to problem with svn cients running on case-insensitive filesystems. However, in this case the fix wasn't about changing an actual filename. UIScreen.h is part of the iPhone SDK, and we just pull it in. So the fix was simply to change the reference in a header file. // Sascha On Mon, Sep 14, 2009 at 12:28 AM, Brian Schimmel < bri...@go...> wrote: > @Sascha: > Just in case you (or someone else at XMLVM) is going to "fix" it by > changing the file name case in the repository, let me warn you that a > case-only rename in a repository breaks some SVN clients on Windows. I > experienced problems with that in multimple mixed OS X / Windows > projects, especially with Tortoise SVN. I think it tries to create the > "new" file before deleting the "old" one, which does not work if both > have the "same" name from the FS' perspective. > > @Benjamin: > Besides the case problem you posted, is it really possible to compile > the iPhone App on Ubuntu? I'm not even talking about creating a > complete Application package that runs on actual devices, I'd be happy > to compile just to check for errors without needing a Mac. So how did > you manage? Just copy the SDK over to the Ubuntu machine? If you have > any hints or links to share, I'd be happy. > > Brian > > 2009/9/13, Sascha Haeberling <sa...@xm...>: > > Hi Benjamin, > > > > so you are actually compiling the iPhone app on Ubuntu and not on OSX? I > > have never actually tried this and wonder if this can be done > successfully. > > > > However, what you describe makes sense, as OSX's filesystem is not case > > sensitive, whereas most Linux file systems like ext3 are. This explains > why > > you see a problem and we didn't on OSX. > > > > // Sascha > > > > On Tue, Sep 8, 2009 at 8:42 AM, Benjamin Aranguren <bar...@gm... > > > > wrote: > > > > > I am using Ubuntu and was just wondering if anybody else has seen this > > problem when compiling with the generated xmlvm.h. > > > > > > > > > xmlvm.h:14:27: error: UIKit/UiScreen.h: No such file or directory > > > > > > > > > Changing UiScreen.h to UIScreen.h in xmlvm.h fixes the problem (upper > case > > I). > > > #import <UIKit/UiScreen.h> => #import <UIKit/UIScreen.h> > > > > > > > > > I also checked the headers that comes with the iPhone SDK and it is > also > > upper case I. > > > > > > ------------------------------------------------------------------------------ > > > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 > > 30-Day > > > trial. Simplify your report design, integration and deployment - and > focus > > on > > > what you do best, core application coding. Discover what's new with > > > Crystal Reports now. http://p.sf.net/sfu/bobj-july > > > _______________________________________________ > > > xmlvm-users mailing list > > > xml...@li... > > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > > > > > > > > > > ------------------------------------------------------------------------------ > > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 > 30-Day > > trial. Simplify your report design, integration and deployment - and > focus > > on > > what you do best, core application coding. Discover what's new with > > Crystal Reports now. http://p.sf.net/sfu/bobj-july > > _______________________________________________ > > xmlvm-users mailing list > > xml...@li... > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > > |
From: Kevin G. <ke...@co...> - 2009-09-14 07:24:20
|
>From recent experienece I've found it's quicker and more enjoyable to do just enough objc to provide the porting of the APIs you want rather than learn into objc enough to write your whole project in it. I went a learnt how to use objc in detail, then found XMLVM, never looked back. I only have to do the bits of objc that absolutely have to be done. :) Kev 2009/9/14 Wolfgang Korn <wol...@xm...> > Tobias, > > currently only parts of the Cocoa API have been ported to XMLVM. > Networking and HTTP support is one of the next things that will be added > to XMLVM. Camera and GPS are not ported yet. > > What do you think of doing the port and contribute it back to the XMLVM > project? XMLVM is open source and grows with the community's support. > More details on contributing to XMLVM can be found at > http://xmlvm.org/contribute/ . > > -- Wolfgang > > > > Tobias Hill wrote: > > Hi, > > > > I am trying to decide wheter to try to implement a few of my iPhone- > > ideas using xmlvm (I know every corner of java) or if I should invest > > time in obj-c + cocoa + service frameworks + xCode. Needless to say: > > I'd be happy to go with the former IFF it is sufficient for my needs. > > > > Which leads me to: I think it is hard to tell (reading on the project > > page) which iPhone specifics have been mapped over to java currently. > > > > For instance, what about the following: > > - Camera functionality? > > - Positioning, GPS? > > - Net IO (to be able to post an retrieve restonses over http) > > > > Could someone shed a little light? > > > > Thanks, > > Tobias > > > > > > > ------------------------------------------------------------------------------ > > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 > 30-Day > > trial. Simplify your report design, integration and deployment - and > focus on > > what you do best, core application coding. Discover what's new with > > Crystal Reports now. http://p.sf.net/sfu/bobj-july > > _______________________________________________ > > xmlvm-users mailing list > > xml...@li... > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus > on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > |
From: Wolfgang K. <wol...@xm...> - 2009-09-14 06:16:56
|
Tobias, currently only parts of the Cocoa API have been ported to XMLVM. Networking and HTTP support is one of the next things that will be added to XMLVM. Camera and GPS are not ported yet. What do you think of doing the port and contribute it back to the XMLVM project? XMLVM is open source and grows with the community's support. More details on contributing to XMLVM can be found at http://xmlvm.org/contribute/ . -- Wolfgang Tobias Hill wrote: > Hi, > > I am trying to decide wheter to try to implement a few of my iPhone- > ideas using xmlvm (I know every corner of java) or if I should invest > time in obj-c + cocoa + service frameworks + xCode. Needless to say: > I'd be happy to go with the former IFF it is sufficient for my needs. > > Which leads me to: I think it is hard to tell (reading on the project > page) which iPhone specifics have been mapped over to java currently. > > For instance, what about the following: > - Camera functionality? > - Positioning, GPS? > - Net IO (to be able to post an retrieve restonses over http) > > Could someone shed a little light? > > Thanks, > Tobias > > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > |