Hacker News new | ask | show | jobs
by pjmlp 3739 days ago
I got lost at the VM references.

XAML engine is native C++ code, no VM. Since Windows 8 there isn't also a VM as such on the .NET side, given the AOT compilation support.

Similarly QML is only interpreted in the free version. Commercial Qt compiles QML into native code.

2 comments

Yes, the java comparison is not really good, I wanted to make a "runtime" analogy. I didn't know for compiled QML.
You can read about the QML compiler here

http://doc.qt.io/QtQuickCompiler/

I believe it's more correct to say that the creation of the QML object tree is compiled to C++. The rest of it is byte compiled JavaScript.
"Compiled Qt Quick is an elegant solution to these problems: .qml files as well as accompanying .js files can be translated into intermediate C++ source code. After compilation with a traditional compiler, the code is linked into the application binary. This entirely eliminates the need of deploying QML source code, it reduces the application startup time and allows for a much faster execution on platforms that do not permit Just-in-time compilation."

http://doc.qt.io/QtQuickCompiler/

So the JavaScript is compiled to C++? They implemented emscripten?