On Tuesday, 24 February 2015 at 13:44:07 UTC, Rishub Nagpal wrote:
Is D currently mature enough to create binaries for
android/iOS? I've been researching this, but most posts predate
2013, and I wanted to know what was the current status.
Mature enough? Sure, but that doesn't mean the support is there.
D bindings for the JNI is certainly possible, so by extension
it should be possible to call D libraries with Android's NDK,
correct?
If you simply want to call a D library within an Android/iOS app,
that's possible, though there are still some rough edges.
Specifically, there is still some work to be done with certain
floating-point operations on iOS
(http://forum.dlang.org/post/m2mw4tab0w....@comcast.net) and
while Android/x86 will work fine
(http://wiki.dlang.org/Build_DMD_for_Android), Android/ARM
doesn't currently support TLS. That lack of TLS support means
you'd have to run a slightly patched druntime and I'm fairly
certain phobos wouldn't work.
Is is possible to write android apps purely in D similar to
mono for android?
http://developer.xamarin.com/guides/android/getting_started/hello,android/hello,android_quickstart/
I have ported a simple, purely C GUI app to D on Android/x86, as
you can see in my wiki link. However, there is a pthreads issue
that needs to be fixed for bigger apps and there is no pre-baked
GUI support yet for D on Android, certainly not anything like
Xamarin. You could call the OpenGL ES APIs yourself or port some
GUI library that targets them, but I don't know of anybody who
has done so on Android or iOS.