[Development] Future of QBS

Jake Petroules Jake.Petroules at qt.io
Mon Oct 16 15:20:49 CEST 2017


> On Oct 16, 2017, at 2:46 PM, Konstantin Tokarev <annulen at yandex.ru> wrote:
> 
> I have no real experience with Meson, but at least it has following advantages:
> 
> * Its language is typed(!), has native support for arrays(!), and functions/methods have
> first-class return values(!)
> * Its language has native support for properties, with syntax that really looks like
> properties in another languages
> * It is target-oriented from the start and is not so burdened by legacy ways of doing
> things wrong, which plague old CMake projects and confuse newcomers
> * It is written in scripting language, so it's easier to add (and possibly distribute) new
> functionality without getting it through upstream hands first.

Basically ALL of these are key advantages of Qbs as well, and all but the third bullet point are a direct result of the language being QML.

"target-oriented from the start" is a great way to express what I have used significantly more words to express in previous discussions. I will borrow this phrase. :)

> That said, I totally dislike the idea of inventing restricted DSL language for build system
> instead of using general purpose language (like e.g. in QBS or Premake).

The DSL is still fairly restricted, because it's declarative at the top level. What's special is that the right-hand side of property bindings can be arbitrary JavaScript expressions. So it's really two languages in one, although I suppose QML implies JavaScript by definition.
-- 
Jake Petroules - jake.petroules at qt.io
The Qt Company - Silicon Valley
Qbs build tool evangelist - qbs.io




More information about the Development mailing list