Qt 5's QML engine implements automatic data bindings on top of the Qt property system using dynamic data structures and change notifications through notifier signals.
Through research we have learned that it should be possible to implement a more efficient data binding system by encapsulating the property data itself in a type, which can intercept reading and writing.
This will allow us to support automatic data bindings from C++ and significantly reduce our memory and initialization overhead. It will also form the basis of a new compilation of QML to C++.
The API could look a little bit like this: