5 ms·
although running a jvm inside of a jvm sounds fun, wouldn't this slow down an already slow interpreted application?
by jijji 6y ago
although running a jvm inside of a jvm sounds fun, wouldn't this slow down an already slow interpreted application?
- dehrmann 6y agoYes, but modern Java isn't really interpreted.
- danielscrubs 6y ago“An interpreted language is a type of programming language for which there is an interpreter which runs over a virtual machine“ I get what you are trying to say but if (!) you use JVM you are using an interpreter.
- rwoerz 6y agoAccording to this definition, C is an interpreted language because "there is" CINT. [1] [1] https://web.archive.org/web/20190911160010/http://www.hanno.jp/gotom/Cint.html https://web.archive.org/web/20190911160010/http://www.hanno....
- danielscrubs 6y agoWikipedias definition. And yes indeed!
- chrisseaton 6y ago> but if (!) you use JVM you are using an interpreter You're using an interpreter to start with, but then it dynamically compiles machine code to run instead of using the interpreter. But these terms are very fluid. I'd call HotSpot an interpreter, and a compiler, and both at the same time. It depends how you're looking at it at that moment.
- mukel 6y agoRunning on HotSpot is an advantage for the development of Java on Truffle itself; the tooling is amazing, debugger, inspectability, you can debug the VM as a normal Java application... GraalVM can compile an AOT version of Java on Truffle, then no JVM is needed.
- chrisseaton 6y agoIt's dynamically compiled to machine code - it's not 'interpreted' as you are probably thinking of it. For example there is also a Truffle implementation of C running on the JVM that runs some benchmarks faster than native C (due to runtime optimisations being better than static optimisations.)