Hello, As I was the beta-tester of the lablqml, I can share some of my experience :) I've written an example[1] that creates a couple of views on top of OCaml-created data models, emits signals from OCaml, calls OCaml callbacks from QML and so on. It can be taken into account as some proof of concept. At first, as Dmitry said there's some simple hardcoded startup, but it was added on behalf of my request (I wanted one to be able to use GUI without writing any line of C++ code). However one can still put their own startup in C++. Second, the developer still must deal with C++ compilation and linking OCaml object files with C++ ones. AFAIK, Dmitry intends to improve the process in some future, but currently it a bit tricky. I haven't tried native OCaml build systems (such as ocamlbuild or omake) with it yet, but using the Makefile one can see, that they have to manually resolve all the Qt libraries to link with. Third, there're still some issues. E.g. creating the data item object used in view, I was unable to create a mutable property that can be used on top level of delegate[2] so I had to expose[3] the object itself and access its property, otherwise property changes weren't revealed to QML. But anyway while lablqt is still to be considered as some beta release, I claim that it is already more usable than e.g. lablgtk. [1] https://github.com/torkve/melange-seawar [2] https://github.com/torkve/melange-seawar/blob/master/gui.qml#L85 [3] https://github.com/torkve/melange-seawar/blob/master/gui.ml#L43 Best wishes and have a nice day, Vsevolod Velichko 2013/12/19 Kakadu > Paolo, > > At the moment I have tested main use case of C++ in QtQuick: > implementing business logic which expected to work fast. > > I can name three limitations: > > 1) If you need complex GUI control (that doesn't suit well into > QtQuick paradigm) you will probably need to implement it in C++ by > subclassing QQuickItem. The only example of this I have seen is pie > chart using QPainter from Qt Docs. > Reason: I don't clearly understand when this complex controls are > needed. QML itself is rather powerful one. > > 2) At this moment startup process is a little bit hardcoded in one C++ > function. i.e. some features are unavailable. It was made for > simplicity but I don't see any theoretical reason against rewriting it > in more verbose way in 1 weekend. > > 3) I have working demo with main GUI thread and some OCaml threads > that do some work and report changes in main thread. It seems that it > works OK but I'm not sure what will happen if we construct more > interesting examples. > > Kind regards, > Kakadu > > > On Thu, Dec 19, 2013 at 7:53 AM, Paolo Donadeo > wrote: > > At present, what are the limitation in using OCaml/QT compared to using > > C++/QT? > > > > > > -- > > Paolo Donadeo, sent with Gmail on Android > > > > Il 15/dic/2013 22:12 "Kakadu" ha scritto: > >> > >> Salut, > >> > >> From today lablqt is available in opam. With it you can create user > >> interfaces in declarative manner in QML and connect it with OCaml > >> using `mocml` code generator and `lablqml` ocamlfind package. Qt 5.2 > >> is required for compilation > >> > >> More information you can get at [1]. There is mine opam repo where > >> demo application is included. It is called QOCamlBrowser -- > >> application similar to default ocamlbrowser. > >> > >> All comments will be appreciated. > >> > >> Kind regards, > >> Dmitrii Kosarev aka Kakadu > >> > >> [1] http://kakadu.github.io/lablqt > >> > >> -- > >> Caml-list mailing list. Subscription management and archives: > >> https://sympa.inria.fr/sympa/arc/caml-list > >> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > >> Bug reports: http://caml.inria.fr/bin/caml-bugs >