View Single Post
Posts: 1,341 | Thanked: 708 times | Joined on Feb 2010
#100
Originally Posted by vi_ View Post
java is for noobz. oh noes, your phone doesnt have a prescot core p4!! how are you going to run my java appz??

wake up! this is a mobile platform and battery life is king. c++ is more efficient than java.

only an idiot would argue.
I recommend you read some of the studies, papers "the idiots" have created about the future of C.S. and programming languages:

"A Survey of Adaptive Optimization in Virtual Machines"
http://www.research.ibm.com/people/h....html#survey05

"Java will be faster than C++"
http://portal.acm.org/citation.cfm?id=345105.352548

When there is an application, which needs lots of "short" living dynamic memory, and needs to run relatively long time, for example www-browser with tab-support; JIT-interpreted code (Java) will be eventually faster than fully compiled code (C, C++).

Most of the already known running-time profiling+optimizing techniques are not yet implemented nor in use in VMs. Just think VM able to reorganize memory objects in heap memory so L2-cache usage is optimized. That trick cannot be made to fully compiled code, but can be made to bytecode based running programs.

In device drivers and such, or in parts of a 3D-game-engine, where dynamic memory can be controlled very tightly, asm/C/C++ modules are more efficient and in the time critical tasks should be used instead of JIT-code with GC.

Most of the apps nowadays are not time critical, so Java or Python are better choices than C/C++.

(Python cannot be as JIT-optimized as Java because it uses dynamic typing, but I guess some day there will be Python-IDE which lets to define typing in to separate file for optimizing in JIT, if automatic heuristic typing guessing needs help.)
 

The Following User Says Thank You to zimon For This Useful Post: