[Development] As Qt contemplates its future..

Randall O'Reilly randy.oreilly at colorado.edu
Thu Apr 13 14:02:59 CEST 2017


With the recent language explosion, there are now languages to fit everyone’s biases and aesthetics.  This also means that there is an endless potential for language wars, which I’m sure nobody wants to rehash on this list.  My point is just that Go represents a particular set of choices that I think is very compatible with a certain (possibly large) segment of the Qt user-base — those who favor clarity, simplicity, readability, over e.g., extreme performance optimization or having every different kind of possible language feature at one’s disposal (aka “language bloat”).  As C++ is seemingly in a constant state of reinvention lately, and is now massively bloated and unwieldy in some people’s estimation, it might be an opportune moment to consider a “reboot” — a fresh new framework unburdened by all that cruft.  My sense is that Go has made some really excellent (and hard) choices that benefit from all the different language experiments and experience (and especially the limitations of C++), and that one major thing holding it back is lack of a decent GUI framework, so that Qt could really make a big difference there.  Furthermore, Qt itself has a kind of bloat problem of its own, having evolved in major ways over the years (Widgets vs. QML, scenegraphs, and now 3D), so it could possibly benefit from a fresh start / reboot as well.

Perhaps building from the ground-up on a core scenegraph framework that can support 2D *and* 3D, with different back-end renderers (OpenGL ES etc), using e.g., SVG syntax to do the widget etc painting in a resolution-independent, style-based manner (no more high-dpi hassles — future proof resolution independence).. I’m sure everyone could come up with a good wish list based on all the experience with Qt so far :)

- Randy

> On Apr 13, 2017, at 7:25 PM, Konstantin Tokarev <annulen at yandex.ru> wrote:
> 
> 
> 
> 13.04.2017, 13:25, "Konstantin Tokarev" <annulen at yandex.ru>:
>> 13.04.2017, 12:32, "Nikita Krupenko" <krnekit at gmail.com>:
>>>  On четверг, 13 апреля 2017 г. 08:24:39 EEST Randall O'Reilly wrote:
>>>>   In the context of all this recent discussion about modernizing Qt to
>>>>   accommodate updates to C++, has anyone given any thought to the radical
>>>>   idea of creating a brand new product using Go? Go (golang) is rapidly
>>>>   gaining in popularity, and seems to embody everything that is great about
>>>>   Qt (simplicity, elegance, strong concern for readability, etc), and it has
>>>>   many features of Qt built directly into the language (reflection, i.e.,
>>>>   moc, goroutines and channels for signal / slot functionality). One of its
>>>>   main limitations is lack of a dominant, fully-featured GUI toolkit. There
>>>>   are existing bindings to Qt and QML, but it seems like creating a brand new
>>>>   native GUI framework in the Qt mold could be a great opportunity to make a
>>>>   huge impact on a language that has a bright future. All the lessons
>>>>   learned as Qt has evolved over the years could be consolidated into a fresh
>>>>   new design, based fundamentally on a 2D & 3D scenegraph, using OpenGL ( /
>>>>   Vulkan, etc) as the underlying renderer, or something like that… Obviously
>>>>   a huge undertaking, but something that could produce transformative effects
>>>>   for future programmers (whereas it seems that continued improvements to the
>>>>   C++ product are likely to be much more incremental). Maybe some funding
>>>>   from Google could be obtained to support such an endeavor?
>>>> 
>>>>   - Randy
>>> 
>>>  Why Go? Isn't Rust more close to the C++ niche?
>> 
>> Rust does not have even GCC frontend, so is even less portable than C++
> 
> Ooops, I meant "than Go"
> 
>> 
>>>  _______________________________________________
>>>  Development mailing list
>>>  Development at qt-project.org
>>>  http://lists.qt-project.org/mailman/listinfo/development
>> 
>> --
>> Regards,
>> Konstantin
>> _______________________________________________
>> Development mailing list
>> Development at qt-project.org
>> http://lists.qt-project.org/mailman/listinfo/development
> 
> -- 
> Regards,
> Konstantin
> _______________________________________________
> Development mailing list
> Development at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/development




More information about the Development mailing list