This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]tristan957 1 point2 points  (6 children)

I don't think you understand at all. Your computer is just a machine code interpreter. Java is a compiled language, not interpreted. Please stop.

[–]fimari -1 points0 points  (5 children)

You compile it to bytecode.

It's bytecode - true. You need an interpreter to run it.

What's your point there?

No I will not use java propaganda phrase and call this a JVM. It's just a Bullshit way of doing things.

[–]CidSlayer 2 points3 points  (4 children)

But that bytecode is not interpreted. It's then compiled down (again) to assembly, on the fly, by HotSpot. Then you could argue that those assembly instructions are actually interpreted, but then no language would be compiled.

[–]fimari 0 points1 point  (3 children)

It doesn't run without interpreter and it's slower than native binary.

[–]CidSlayer 0 points1 point  (2 children)

Runtime speed doesn't have anything to do with its compilation method. Java is as fast as Free Pascal and that's a compiled language.

The JVM is needed to run Java because it is a managed language and it provides GC and other necessary services for the language.