Boost logo

Boost-Build :

Subject: Re: [Boost-build] [future] Implementation language(s)..
From: Klemens Morgenstern (klemens.morgenstern_at_[hidden])
Date: 2016-10-25 10:30:00


Am 25.10.2016 um 16:08 schrieb Stefan Seefeld:
> On 25.10.2016 09:58, Rene Rivera wrote:
>> On Tuesday, October 18, 2016, Stefan Seefeld <stefan_at_[hidden]
>> <mailto:stefan_at_[hidden]>> wrote:
>>
>> On 18.10.2016 10:28, Klemens Morgenstern wrote:
>> > I'd provide both C++ and Python extensions, otherwise I do
>> agree. I'll
>> > see if I can come up wiht a way to build a plugin-system that may
>> > understand more than one language, but with one interface; if that
>> > works providing more than one language for extensions shouldn't be a
>> > problem at all.
>>
>> I'd caution against that. A build system consisting of plugins written
>> in many different languages is just begging for trouble for
>> maintenance.
>>
>>
>> After some thought for the past week.. I agree. Multiple languages at
>> the plugin level would make it a nightmare for users to know what they
>> need as far a requirements.
> I was actually more thinking of the community as a whole. Even if it's
> easy for the implementer to add new plugins in the language of his
> choice, having a plethora of plugins written in many different languages
> is is hard for others to embrace. (I'm assuming here that plugins aren't
> just written by a user for his own consumption, but to be shared and
> collaboratively maintained). It's much better for the community to have
> a project with few "lingua francas" to focus on, and I think that the
> combination of C++ and Python are an excellent choice in that domain.
The reason I proposed that, is that I think it would have several
applications:

1. small, local extensions, e.g. some project-specific code generator
2. complete toolsets, i.e. plugins that should be shipped with the build
system

I'd prefer to have the first stuff in a small scripting language and the
second C++. I would not be mixing the langauges in the shipped plugins
(pure C++ there), but provide the scripting language for user-extensions
if you will.
If we only used python, we'd have a slow build system; if we'd only used
C++, the extensions would be painful for the users.


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk