Boost logo

Boost :

Subject: Re: [boost] [spirit] Library naming and sub-libraries
From: Joel de Guzman (joel_at_[hidden])
Date: 2009-01-03 22:24:02

Andrey Semashev wrote:
>> Obviously, having a simple, denotative name for a library is a good
>> thing,
>> but it's only really effective when the name can succinctly describe the
>> features and functionality of the library. It's also easier, when those
>> features are limited to a few well-known abstractions like FileSystem,
>> ProgramOptions, Graph, etc. This arguably isn't the case for Joel's
>> work.
>> The breadth of abstractions represented by those libraries (DSELs,
>> Parsing,
>> Generating, etc.) aren't necessarily best described by a single term.
> Why Boost.Parsing or Boost.Generating are bad? I agree, these names
> don't look as fancy as Spirit or Karma, but, personally, I usually care
> more about practical matters than exterior fancyness.

They are not bad. But they are not good either. Doug (Gregor) intuited
long ago that Spirit can host several parsing methods in addition to
recursive descent.

Ok, let me try to be more constructive:

1) The name Spirit cannot be changed. Doing so at this time will
    cause more damage than the "advantage" you claim (for which I
    am not convinced).

2) There's only one compelling reason I've heard so far, and that
    is from Dave (A): "if there are 4-5 sublibraries that also
    have non-mnemonic names, it does start to look pretty confusing."

    I am open to changing the names "Qi" and "Karma" to something
    non-abstract. The names: Spirit.RD and spirit.Gen come to mind.
    Spirit.Parsing is not a good name because there can be a Spirit.LL1,
    Spirit.LR, Spirit.Packrat.

    I am open to suggestions. At any rate, I'd want to reserve the
    right to choosing the names.

    Whether or not these new features, when they finally arrive,
    should be subject to a review, depends on what the rules are
    at that time. Right now, I stand by the current rules: A library
    can be extended without further review.

> I agree that categorized index could help a lot. However, I can't say
> that it would allow library names to be completely irrelevant to their
> purpose.

I am not against non-abstract library names. No, they are not
irrelevant. I'm just not inclined to put too much emphasis on
them. One must not judge a library by its name.


Joel de Guzman

Boost list run by bdawes at, gregod at, cpdaniel at, john at