[Qt5-feedback] QML-related wishlist

lars.knoll at nokia.com lars.knoll at nokia.com
Thu May 12 10:27:03 CEST 2011


2 - Improve QML performance for 'trivial' expressions (less important)

I've noticed there appear to be 2 engines used in QML (at least when I dove into the code a few months back): the standard JSC engine, and then a 'fast-path' interpreter for very simple expressions (e.g. 0+1). This is nice because from my experimentation in such simple cases the overhead of invoking the JS engine far exceeds the time required to compute the expression. However, my annoyance is that the current fast path is very, very limited and it's incredibly easy to break it so that it reverts back to the primary engine. My point: it would be great if this fast path were improved (tho I'm not sure what new tradeoffs V8 introduces... maybe the invocation overhead will be lower?)

There's work ongoing in this direction. Checkout
http://qt.gitorious.org/+qt-developers/qt/qtdeclarative-staging/trees/qtquick2/src/declarative/qml/v4


3 - Provide abstraction layer for the QML engine binding (pie-in-the-sky)

I understand this team's desire to focus 100% on Javascript. However, what I would love is for QML to expose a service provider interface that provides all the calls/callbacks required a scripting engine. Such an SPI would allow the community to introduce bindings for other languages. And yeah, I understand there is then still the editor issue - ideally QT Creator would also have an interface factored out for it's QML editor so we can introduce QML editors that accept the syntax for other languages.

That's the one thing I'm not really willing to consider. The right hand side of every binding is a JS expression. Changing that to another language would change everything in QML, confuse developers and create all together a pretty ugly looking Frankenstein. In addition, this is one of the most performance critical pieces in QML, and trying to add abstraction layers in these places is rarely a good idea.

Cheers,
Lars

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt.nokia.com/pipermail/qt5-feedback/attachments/20110512/fbf9b2bf/attachment-0001.html 


More information about the Qt5-feedback mailing list