← Back to team overview

ubuntu-phone team mailing list archive

Re: Memory question

 

Java is hardly the major multicore programming language. Let's get that out
of the way first. Also, libreoffice has been rewritten into C++ over the
last few years. If any Java remains, it is rapidly becoming
inconsequential. I do agree it has been the dominant platform for dumbphone
apps, but that has zero impact on Ubuntu. As far as smartphone apps... No.
The java language is being used on Android, but it's using the Dalvik VM,
not standard Java libraries and all that. We couldn't support those apps
even if we wanted to. It would be a terrible plan. This has been discussed
numerous times on the mailing list -- use Google to search the mailing list
if you have to. Why would you have to use JavaScript web workers? Why would
those even be helpful? JavaScript is not Java, at all. It's actually
ECMAScript even though it goes by the misnomer of JavaScript, but I still
don't see why those would be necessary when you can simply write some
multicore C++, or C, or whatever. Go and Rust are perfectly capable
multicore oriented languages too.

Java is unnecessary, but more importantly, it has bad performance
characteristics. It needs significant amounts of RAM to avoid the garbage
collector thrashing the CPU. This article goes into great depth about why
Java and JavaScript naturally perform poorly on mobile devices:
http://sealedabstract.com/rants/why-mobile-web-apps-are-slow/

The guy is very wrong about some of the hardware aspects in that article,
particularly regarding the relative speeds of ARM and x86, but his analysis
of the software side of things is fairly competent.

Ubuntu touch is centered around Qt, being coded in a combination of QML,
JavaScript, and C++, with any combination of those languages or just one.
On Jul 14, 2013 6:01 PM, "Luke Bryan" <luke32j@xxxxxxx> wrote:

> What do you mean by, Ubuntu won't use Java? Java has been *the* major
> multi-core programming language, *the* platform for smartphone and
> "dumb-phones" apps, and has come with Ubuntu by default, for a long time
> now. So will Java, and apps like LibreOffice now be unsupported? Will we
> have to use Javascript web-workers instead, for high performance multicore
> applications?
>
> Best regards
> Luke
>
> ------------------------------
> Date: Sat, 13 Jul 2013 21:15:03 +0200
> Subject: Re: [Ubuntu-phone] Memory question
> From: gianguidorama@xxxxxxxxx
> To: coder543@xxxxxxxxx
> CC: ubuntu-phone@xxxxxxxxxxxxxxxxxxx; luke32j@xxxxxxx
>
> And after all Ubuntu doesn't use Java, so I think that memory consumption
> will remain at a reasonable level.
> Il giorno 13/lug/2013 21:06, "Josh Leverette" <coder543@xxxxxxxxx> ha
> scritto:
>
> Android only does that when it has to, meaning devices with low memory
> available. I'm sure Ubuntu will kill apps when it has to, and not a moment
> sooner.
>
> Sincerely,
> Josh
> On Jul 13, 2013 11:28 AM, "Luke Bryan" <luke32j@xxxxxxx> wrote:
>
> Greetings,
>
> I was wondering about apps for Ubuntu-touch regarding memory. Will
> ubuntu-touch have the (somewhat annoying) feature of killing off apps that
> go over 16 or 20 mb (or whatever limit set on the device), as Android does?
> This enforces app developers to not make memory-hogging applications, but
> it's annoying for the user. Maybe there should be a developer-option to
> warn when much memory is used?
>
> Best regards,
> Luke
>
> --
> Mailing list: https://launchpad.net/~ubuntu-phone
> Post to     : ubuntu-phone@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~ubuntu-phone
> More help   : https://help.launchpad.net/ListHelp
>
>
> --
> Mailing list: https://launchpad.net/~ubuntu-phone
> Post to     : ubuntu-phone@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~ubuntu-phone
> More help   : https://help.launchpad.net/ListHelp
>
>
> --
> Mailing list: https://launchpad.net/~ubuntu-phone
> Post to     : ubuntu-phone@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~ubuntu-phone
> More help   : https://help.launchpad.net/ListHelp
>
>

Follow ups

References