On Friday, May 29, 2015 at 11:22:49 AM UTC, Simon Danisch wrote:
>
> > For now OpenGL ES is not supported and then no 3D for Android?
>
> What do you mean by that? Not yet supported in Julia?
>
Yes, or strictly your package (yet). And that is no criticism. Besides:
It's supported on Android, and Julia support could be achieved fairly
> quickly.
>
Yes, as far as I know, OpenGL ES (in various versions) are the only 3D
options in Android (and something on top of that, RenderScript and WebGL in
browser and probably hybrid apps). I know the dis/similarity with regular
OpenGL - probably a low bar to jump, unlike Vulkan?
> I personally first tried to get 3D under control, as it has higher
> performance demands and therefore shapes the infrastructure more...But
> slowly the 2D support is dripping in.
>
While 2D is a subset of 3D [in OpenGL] I think people use other APIs
generally for 2D work [on Android]?
Anyway, I wanted this thread to not only be about 3D/2D/GUIs on Android but
the frameworks that are already there.. and how to support them. They are
also for say, sound, GPS, networking etc. For a start ("a scientific
calculator on steroids"..) it would not matter. Or what? I wander what is
needed for minimal Julia [REPL] functionality. Julia uses git and then
networking to get packages (and even compilers for [C] code..). Are there
any assumptions in Julia that say, the shell has to be bash or wget
available etc. [anyone know the full set of those "dependencies" - may not
be need to know as we will just out when running.. "halting-problem"..).
These could all just be bundled with? If bash you have GPL (as a "mere
aggregation").
> And while we're dreaming, hopefully we will be able to create fairly nice
> native GUI's with Julia. We will see...
> I'm pretty sure, that we'll be able to nail high performance and
> cross-platform abilities, but I'm a little worried if the usability also
> works out.
> But looking at other tools, it seems that the bar is not set very high :D
>
Not clear what you mean, to make apps *for* Android, not *on* (for "on" (or
"for"..), there are not that many and all visual style?)? Yes, Java is
perceived as the best option and I think Julia would be better in every way
except the [legacy] framework problem. Even Google with Go, considers the
framework a problem..
> QT seems to offer a huge ecosystem with a lot of convenient tools. I
> wonder, if people will always prefer QT, or if one would prefer a
> lightweight Julia solution in the end (If both are available).
> My main reason against using QT is probably the complexity...
>
I'm not saying it has to be QT. GUI in Android is "different" anyway than
for desktop. I'm however thinking, can we use what is already supported by
Julia, not to avoid (writing new) native Julia, but also so there is a
possibility of making something that works in Android but also
cross-platform to desktops. It's probably a stretch anyway, in any
language. The web has that in a way.. Only reason I would consider that as
a quicker way to Android and get iOS and Firefox OS for free. It would
however have lots of limitations on Android and elsewhere and miss out on
Julia stuff..
Say you would want to support iOS (or Windows Phone) additionally, would
you consider that much additional work? Apple doesn't allow GPL v3 and
maybe GPL v2, that Julia uses but the GPL libraries (except libgit) are
optional. Not sure they would consider Julia a VM and ban it on those
grounds. I guess when Julia flies on Android they will want the same apps
on iOS..
A Julia wrapper for QT would probably be already more complex than my whole
> 3D library :D
> And extending it can be done by Julia programmers easily, so we would have
> more freedom to evolve the GUI ecosystem in our way, specialized for Julia
> and scientific computing.
>
>
Some trivia you might be interested in (to support..):
http://www.androidcentral.com/you-can-now-buy-googles-project-tango-developer-tablet-without-invite-512
> Am Donnerstag, 28. Mai 2015 16:17:08 UTC+2 schrieb Páll Haraldsson:
>>
>>
>> I've noticed: "I guess we can announce alpha support for arm in 0.4 as
>> well." (and the other thread on Julia on ARM).
>>
>> Now, Android runs on x86 (already covered, then if you have that kind of
>> device, no need to wait for ARM support), ARM, and MIPS (actually do not
>> know of a single device that uses it..).
>>
>>
>> I would like to know the most promising way to support Android and..
>>
>> A. For Firefox OS and the web in general, and hybrid apps, compiling to
>> JavaScript (or Dart and then to JavaScript) would be a possibility, with
>> asm.js/Emscripten.
>>
>> B. Just making native Android apps is probably easier. Assuming the ARM
>> CPU is solved, it seems easier. And iOS would be very similar.. But would
>> not work for Firefox OS - not a priority for now, but the web in general
>> would be nice..
>>
>>
>> B. seems more promising except for the tiny/non-existent MIPS "problem"..
>> Also better long term, for full Android framework support and full Julia
>> support (concurrency/BLAS etc. that JavaScript would not handle).
>>
>>
>> 1. Just getting Julia to work on Android is the first step. Just the
>> REPL, wouldn't have to be Juno IDE etc. or GUI stuff.
>>
>> 2. You could to a lot with just the REPL and a real keyboard or just an
>> alternative programmers virtual keyboard.. However, graphing would be nice,
>> and what would be needed? What are the most promising GUI libraries already
>> supported by Julia (or not..)? Say Qt, supported by Julia and Android.
>> Would it just work?
>>
>> 3. Long term, making apps, even standalone (Julia "supports" that) with
>> Julia. If GUIs work for graphing, is then really anything possible? I know
>> Android/Java has a huge framework. Google is already supporting Android
>> with Go (without any Java) as of version 1.4 and with Dart (for hybrid
>> apps). For Go they have a "framework problem" going to support games at
>> first. Some people are sceptical about Julia and games because of GC (I'm
>> not so much). I note Go also has GC..
>>
>> JavaCall.jl only works for JVM not Dalvik or ART. Would it be best to
>> just use the native C support on Android or somehow go through Go? Anyone
>> already tried to call Go from Julia? Rust is possible, but doesn't have GC.
>> Go should be possible, just as Java, but have similar problems..
>>
>> Do/could macros somehow help with supporting the full Android framework?
>> Julia already has "no overhead" calling, could you generate bindings from
>> automatically from some metadata and/or on the fly?
>>
>>
>> This could be a cool pet project - anyone else working along these lines?
>>
>> Any reason plan B couldn't succeed relatively quickly? There are some
>> ways to make apps *on* Android already, I think all crappy, Julia wouldn't
>> be..?
>>
>>
>> Thanks in advance,
>> --
>> Palli.
>>
>>