So, something I mentioned in the brainstormy thing is actually relatively serious. Dmitry once confided - not sure how secretly but I am a blabbermouth - that it would take a low six-figure sum to get Excelsior to produce a headless port of their JET compiler for ARM CPUs without the JIT part.

Anyone behind the curve on the significance of this:-

1. iOS has no Java of any kind that really merits the description "Java". Anything you might reasonably cobble together, should you still have enough hair and SAN, will be slow and shit. And furthermore Apple won't let anything on their device that can execute scripts or dynamic code in any way other than the built-in Javascript engine. Even Mono has its JIT disabled so you can run it on iOS.

2. Excelsior JET produces seriously blisteringly fast code. 8 years ago when I first made Alien Flux with it, not only did I get the entire game into a 5MB download, it started up in the blink of an eye versus. about 20 seconds for ordinary Java, and ran butter-smooth on ancient creaky hardware. 8 years ago this was stuff like 600MHz Pentium 2s with Geforce 2 GPUs.

3. Objective-C, the programming language of iOS, is universally loathed, on account of its awful shitness. We all know that Java is a Very Nice Way To Code Indeed, and it'd be just lovely to be able to code for iOS in Java without all the hair-pulling etc. that C++ generally produces or the self-loathing and strange masturbatory habits that Objective C will eventually induce in you.

4. We only need Headless java as AWT is bugger all use on iOS.

5. LWJGL, er, already happens to be ported to OpenGL-ES / ARM...

So - I was wondering about whether we should get together a Kickstarter project to fund this and dump the money on Excelsior's doorstep. I'd put $10k in straight up.

Also, I actually really like Objective-C now that I have worked with it for 2 years. It's got a nice kind of elegance. There are some things that are stupid about it (nil ignoring everything, for example) but overall it's quite good.

I am really into this idea. One of the best idea's I have heard in a long time!Any site would work such as you mention KickStarter or another site.

Not only the incredibly generous contribution princec said he would, but I would bet that markus, if he caught wind of it, would probably be interested in it and might contribute a chunk. I know he always puts a lot of money into humble bundle and other indie or java things all the time.

I would be willing to commit a decent chunk of money $$$$ and I think we could find enough people to. Especially people in the woodworks or on other Java sites. Just think, if it was 100k+ ish10,000 people donating $10 or 1,000 people donating $100. Not to mention the occasion HUGE contributor like prince!

Don't forget for those hestitant, iOS offers a huge market for profit to be made. Whereas not many other platforms like PC can generate easy large quantity micro transactions. People on iOS pay a couple dollars for apps/games super easy.(relatively speaking)

Though I think we need to get Excelsior in on this 100% before any actual donations start and a semi fixed price/estimate from them.Heck, maybe even Google or Oracle would throw in some money! hah you never know.

Dmitry once confided - not sure how secretly but I am a blabbermouth - that it would take a low six-figure sum to get Excelsior to produce a headless port of their JET compiler for ARM CPUs without the JIT part.

IMO you're knocking on the wrong door, JGO just doesn't have the man power to raise that sort of money from the bottom up, at best you'd be luck to make $5,000.00 (excluding your contribution) but a 100 times that? highly unlikely.

It'd be best if you try approach someone with deeper pockets and a vested interest in Java, like Markus who could easily put down $100k (about a days worth of Minecraft sales), or even cut some sort of deal with them (Mojang) like promising them your next first born (game). Other potential targets would include Jagex and Three Rings, not many others have that sort of muscle.

Another option is for you (or Excelsior) to get some sort of venture capital or other business investor to raise/provide that sort of money.

The donation idea IMO could only work if there was a large enough audience available like that of the Humble Indie Bundle, if something like that could be arranged, I'm sure we could pull a few strings (possibly even from some LWJGL connections) and get a crack commando line up of games (at least better than the frozenbyte HIB).

However do keep in mind if its going to be community funded like that, then the community is going to expect something back, like the product being open source or free licences for us or something. Its not exactly clear if that's what Excelsior had in mind or if its just so they can create a proprietary version that they can sell on.

The donation idea IMO could only work if there was a large enough audience available like that of the Humble Indie Bundle, if something like that could be arranged, I'm sure we could pull a few strings (possibly even from some LWJGL connections) and get a crack commando line up of games (at least better than the frozenbyte HIB).

I don't know how seriously you mean that, but a "Humble Java Bundle" would certainly boost the profile of Java gaming (assuming the games are good enough).

Does that XMLVM thing that converts Java to Objective C work very good?

How much of post converting performance tweaking do you need to do? if any?

I know in the google tech talk that during the discussion of it, it does add some bloat, but some of it gets optimized away. I haven't looked at it to see how much messy the Objective C code is but it was what I was hoping to try out one of these days.

My question for cas is: considering the years you've been lamenting this, why haven't you moved to c++ yet? There are a lot of developers making games and money on ios and android with the same code base using g++, sdl, and opengl es. It's possible to use a very java like subset of c++, then you just have be careful with memory allocation. This is not meant to be snarky, I really am curious.

I personally stick with Java because its still a highly sought after language (outside of gaming) and although I'm not looking for a job, having Java experience is all I really want. I also really really like the syntax and other things over the other languages. Though I've considered several times poking at C# some more. I always enjoyed the whole linux/mac/applet thing and I personally have a huge thing against Flash.

Also an easy thing to point out... Minecraft.(obviously has been more successful than any java game developer could hope for) Although I know it's an extreme rarity. Having a good idea and design is what truly matters.(that is obviously second to actually implementing/marketing) What language you write it i is rather irrelevant(from my view). All languages have their own set of obstacles to overcome.

My question for cas is: considering the years you've been lamenting this, why haven't you moved to c++ yet? There are a lot of developers making games and money on ios and android with the same code base using g++, sdl, and opengl es. It's possible to use a very java like subset of c++, then you just have be careful with memory allocation. This is not meant to be snarky, I really am curious.

While I am not cas I would like to say that many c++ games use lua. So, for me I just chose Java instead of Lua. Not that Lua is bad. C/C++ is behind almost all Java implementations anyways. So, I just treat it is as a scripting vm language. So you can choose C/C++ without developing much in it. So you really can't escape ASM -> C/C++ -> Java/Lua anyways. Unless you just love wasting time with ASM and C/C++ all the time. Java and Lua are just to good.

Wasting time is the whole problem. Wouldn't it just be nice to just code in Java and genuinely be able to run stuff without having to jump through crazy hoops, worry about crappy performance, and deal with strange bugs?

The minute you write a JVM that runs actual Java classes on iOS, Apple will block it at the AppStore level - they killed Adobe and they'd kill Java. Put as much money as you want into building a VM - wasted time. Better bet would be improve the automated conversion approaches.

The minute you write a JVM that runs actual Java classes on iOS, Apple will block it at the AppStore level - they killed Adobe and they'd kill Java. Put as much money as you want into building a VM - wasted time. Better bet would be improve the automated conversion approaches.

Kev

Apple is a horrible company, I agree, but I don't see a big difference between a real JVM and the automated approaches. Both get your Java apps on iOS. Both could be blocked.

Did you see the links pitbuller and I posted? Avian is a JVM that runs on iOS. It does JIT so only runs on jailbroken iShit, but AOT compilation can be done.

but I don't see a big difference between a real JVM and the automated approaches. Both get your Java apps on iOS. Both could be blocked.

You're missing the point. The automated conversions are not Java programs, they are native iOS programs. Adobe Flash got killed because Apple does not want a platform-in-the-middle, which is a category JVM also falls under.

In fact Adobe themselves are adding iOS as a compile target for applications built with their upcoming Flash development suites.

Maybe with Steve Jobs out of the picture, new guy might be more open to a few changes.

Also sometime in 08 and 09, google did build an entire VM to run java on iOS and it worked really great, but apple changed mind about approving it. However I think it still stayed a VM and JIT compiling and not AOT. I ¿thought¿ it was the JIT compiling that apple didnt like. Though I know very little about it and my information is old/fragmented

but I don't see a big difference between a real JVM and the automated approaches. Both get your Java apps on iOS. Both could be blocked.

You're missing the point. The automated conversions are not Java programs, they are native iOS programs. Adobe Flash got killed because Apple does not want a platform-in-the-middle, which is a category JVM also falls under.

In fact Adobe themselves are adding iOS as a compile target for applications built with their upcoming Flash development suites.

No, you are missing the point. Avian compiles Java to native code that runs on iOS.

All the examples I can see on the Avian website are about using it as a JVM, i.e. embedding it in your application and packaging your JARs along with it. If thats the case, Apple will reject it based on it being a "scripting" language (their words).

As to whether it's a native application or not (and from what I can see, it's not), on every submission Apple scan the symbols in the object files. There are particular names they're looking for. I doubt Avian is on their scope yet but if once it is, it's blocked for everyone - and anyone using it already will get pulled. I've tried a few different routes so far and they get hit in similar ways.

Trying to trick Apple into letting your application onto the AppStore isn't a way to run a business. XMLVM have had the thumbs up from Apple so far (not that they couldn't change their mind in a second).

With respect to GCJ, I tried for a few days on the Mac and couldn't get anything to actually target ARM correctly. I'm sure it's possible I just haven't see it yet.

All the examples I can see on the Avian website are about using it as a JVM, i.e. embedding it in your application and packaging your JARs along with it. If thats the case, Apple will reject it based on it being a "scripting" language (their words).

I was under the impression that Apple had relaxed this restriction? Certainly I hear of several games using Lua as a scripting language that aren't having any trouble.

"In particular, we are relaxing all restrictions on the development tools used to create iOS apps, as long as the resulting apps do not download any code," Apple said in a statement released to the press. "This should give developers the flexibility they want, while preserving the security we need."

All the examples I can see on the Avian website are about using it as a JVM, i.e. embedding it in your application and packaging your JARs along with it. If thats the case, Apple will reject it based on it being a "scripting" language (their words).

Bootimage (i.e.ahead-of-time-compiled) builds are not yet supported because Avian can'tcurrently build a bootimage targeting a different architecture than thebuild system, and I haven't tried installing GCC on the iPhone to donative builds. The lack of cross-architecture build support forbootimages is something I've wanted to address for a while, and this maybe a good time to finally do it.

Quote

Trying to trick Apple into letting your application onto the AppStore isn't a way to run a business.

Being at the complete mercy of such a nasty company isn't a way to run a business.

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org