3 ms·
I'm curious--by what criteria is Java a "lower" level language than, say Python? You don't really get more access to the machine with Java than with Python and
by tikhonj 15y ago
I'm curious--by what criteria is Java a "lower" level language than, say Python? You don't really get more access to the machine with Java than with Python and both have similar reflection capabilities. Java is obviously statically typed where Python is dynamically typed, but that is orthogonal to how low-level a programming language is.
- kingkilr 15y agoIf absolutely nothing else (and there are many others), Java has primitives.
- lihaoyi 15y agoJava's arrays[] and primitives are part of the underlying implementation poking through with special syntax and behavior, as compared to arrays/lists/numbers in python/c#/scala which are full fledged objects. That's basically the crux of it. In python/c#/scala, a for loop looks the same whether you use ints, longs, bigInts or complex numbers as the iterator. In java, you have special, relatively compact syntax for the close-to-the-metal types like ints or longs, but using anything higher level suddenly becomes ridiculously verbose. Writing BigIntegers as for-loop iterators is no fun!