

J2ObjC: A Java to iOS Objective-C translator by Google - PierreMage
http://google-opensource.blogspot.co.uk/2012/09/j2objc-java-to-ios-objective-c.html

======
Xuzz
Previous submission (still on the front page right now, at least):
<http://news.ycombinator.com/item?id=4518588>

------
invalidname
Its a joke. It translates Java to Objective-C code without GC support (uses
reference counting which you need to annotate). It doesn't define any UI so
effectively you need to work on a Mac just without all the wonderful tools for
UI building that apple provides and without any of the WORA you get from Java.
When something doesn't work you are still stuck debugging in Objective-C. And
googling stack overflow trying to understand how to translate Objective-C code
to your problem.

Codename One solves all of the above issues by giving "actual WORA" which is
the true value of Java.

~~~
klausa
Isn't GC deprecated in favour of ARC?

~~~
invalidname
Nope. ARC is just slightly better pools but its no GC alternative and won't
work with Java code. Java can't be used without a GC so these guys came up
with special annotations for reference counting which is very iOS specific. So
essentially you write Objective-C code in Java, I fail to see the benefit
here? You have to learn objective-c anyway and use all of the toolchains from
Apple. So why add an extra step and not go directly to Objective-C? The
benefit of a solution like Codename One is clear, it allows you to forgo
Apple's tools almost entirely and work exclusively in Java (which I personally
prefer to Objective-C).

------
dhconnelly
To save time for those who won't read the wiki:

This is not a tool to convert Java apps to iOS apps. This is a tool that helps
you write _business logic_ in one language so it can be shared without
duplication between Android, web (via GWT), and iOS apps. Write your
presentation logic with the native tools, ie. Interface Builder, etc. Cross-
platform mobile UI support is explicitly avoided. Xcode is great--use it!

------
RealCasually
This seems a lot like a rebrand of XMLVM (<http://xmlvm.org/overview/> \--
also a Google-employee-run project) with some missing UI features.

~~~
invalidname
XMLVM is an academic project and not run by google employees.

