|
Boost : |
Subject: Re: [boost] Announcement: Faber, a new build system based on bjam
From: Dominique Devienne (ddevienne_at_[hidden])
Date: 2017-11-22 14:33:18
On Wed, Nov 22, 2017 at 2:43 PM, Stefan Seefeld via Boost <
boost_at_[hidden]> wrote:
> On 22.11.2017 05:12, Hans Dembinski via Boost wrote:
> > and neither does Faber, it seems. The Hello World example in the Faber
> docs reminds me a lot of Makefiles, because of the $(<) and $(>) syntax.
>
> Yes, intentionally so. (Well, also because that's what bjam uses, and I
> didn't see any reason to change that.) A scheduling tool that invokes
> external tools to update artefacts needs some kind of DSL, and I think
> constructs such as $(>) seem rather intuitive. The fact that `make` (as
> the de-facto standard in UNIX land) uses the same language can only help.
>
> > # define some actions
> > compile = action('c++.compile', 'c++ -c -o $(<) $(>)')
>
Like Hans, I've also never been fond of $(<) or $(>).
You invoke Make heritage here for the terseness,
while previously you justified Boost.Build rewrite into Faber on clarity
grounds.
You can't have it both ways Stefan ;)
>From a Shell perspective, $(<) evokes input to me, and $(>) output, the
reverse
of what they likely mean above, given the -o. Playing devil's advocate I
guess.
I did have a look at the doc when you announced it, and was quickly turned
of by the syntax, to be honest.
My $0.02. --DD
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk