News for hackers. Stuff that matters.
Re:Technical Vision for Qt 6 by blub on Wednesday August 07, 2019 @12:31PM (#20636261)
I believe you're incorrect, C++ is a good language for building UIs, as proven by the plethora of UI libraries and frameworks built in C++ for pretty much all platforms. This is visible when comparing PyQt and C++: yes, PyQt is easier to get into, has nicer syntax, but C++ offers more power. Even hot-loading UIs, a typical scripting language advantage is supported.

Declarative UI languages do have some advantages compared to regular programming languages, but that's unrelated to the claim you made.

Bindings are not C++'s problem, they're the problem of the other languages which try to use UI frameworks written in C++, like Rust, which still doesn't have any decent UI library.

Re:Technical Vision for Qt 6 by jlarocco on Wednesday August 07, 2019 @12:46PM (#20636408)
> This is visible when comparing PyQt and C++: yes, PyQt is easier to get into, has nicer syntax, but C++ offers more power.

That may be true for Python, but the Common Lisp bindings for Qt4 were equally as "powerful" as the C++ bindings. It had higher level abstractions that generally made it easier to read and write, as well.

> Bindings are not C++'s problem

Actually, bindings are a problem with C++. Some features (like templates) and implementation details (like name mangling) make it very difficult to create bindings to C++.

Re:Technical Vision for Qt 6 by pjmlp on Wednesday August 07, 2019 @01:13PM (#20636720)
They have the graphics layer written in C++, but get used from managed languages.

QML, Swift, Android, UWP, WPF, Forms, Blueprints, Unity, React Native.

Re:Technical Vision for Qt 6 by jschwartzi on Wednesday August 07, 2019 @04:07PM (#20638372)
I've worked on two products with touchscreen UIs now and I can safely say this is exactly how I want to do things. Have a tight core engine but with a flexible declarative language that I can get imperative with. And make it easy for me to declare connections between the model and the view without specifying data types. And give me a way to work with a statically typed language when that's beneficial.

QML is way faster to develop in than C++. And it hides a lot of signal/slot boilerplate that doesn't matter. And I can still write C++ classes that interface with QML when I want.

Re:Technical Vision for Qt 6 by flukus on Thursday August 08, 2019 @12:59AM (#20641978)
> I believe you're incorrect, C++ is a good language for building UIs

I agree, not necessarily with c++ but it's much better to build UI's with code than declarative xml crap.

It will be a shame if Qt sticks to a pure c++ interface though, I'd hope the build something more usable from more languages so it's an option for C, Zig, Rust, etc.

Re:Technical Vision for Qt 6 by protomyth on Wednesday August 07, 2019 @12:51PM (#20636466)
I keep coming back to the differences between OPENSTEP and Taligent and believe C++ isn't the best choice.
Re:Technical Vision for Qt 6 by ptx on Wednesday August 07, 2019 @01:47PM (#20637026)
What were some of the differences? (Other than Taligent dying and OPENSTEP surviving via Mac OS X, which is all I know about the topic.)
Re:Technical Vision for Qt 6 by protomyth on Thursday August 08, 2019 @02:36PM (#20647271)
Re:Technical Vision for Qt 6 by infinite8s on Wednesday August 07, 2019 @10:05PM (#20641170)
There's a reason Qt had to invent the MOC.