Boost logo

Boost :

Subject: Re: [boost] Proposal: Add Loki Library's SafeFormat to Boost:
From: Thomas Klimpel (Thomas.Klimpel_at_[hidden])
Date: 2009-01-01 09:35:41

Tom Browder wrote:
> As far as I know, nothing in boost relies on SafeFormat. The
> advantages of adding it to boost include: (1) active maintenance [Loki
> maintenance interest is fading rapidly] and

Don't confuse active development with active maintenance. The Loki developers quickly respond to questions, which indicates active maintenance.

Adding SafeFormat to boost would probably induce some form of active development (like improving documentation and regression tests to conform to boost standards), but probably just for a limited time. Many people today seem to think that things have to constantly change to be "alive". I personally see no problems if Loki just does a release every three years. Boost currently does four releases per year, if I'm not mistaken, but so what? What would be the advantages to the users of Loki if it would have four releases per year?

> (2) boost (and thus SafeFormat) is included and supported
> with many main GNU/Linux distributions.

But I somehow got the impression that this created more problems for boost-users than it solved. People are often advised to use the distribution from instead of the one that comes with their GNU/Linux distribution, because these packages seem to have subtle issues.

> > A strength of Loki is that it is so well designed that it is possible to
> > cherry pick libraries from it. > However, actually doing this seems to
> > undermine the continued maintenance of the Loki library. Loki
> Again, Loki maintenance seems to be fading.

But adding SafeFormat to boost would not help me with this, if my code relies much more on Loki.Singleton than on Loki.SafeFormat. So again, cherry picking libraries from Loki doesn't look like a good solution for this problem to me.

> > But this would give the impression that the remaining Loki library
> > is just what wasn't good enough for inclusion into boost.
> That may be an impression, but that I don't believe should be a show
> stopper. Any remaining Loki maintainers could ensure an appropriate
> message on the Loki site.

And what about an appropriate message on the Boost site? Think about why you want to include Loki.SafeFormat into Boost. I guess because it is important to you. But then, if Loki.Singleton is important to me, should I also try to get it included into Boost? But suppose there would be another library collection called StlSoft. Should users with special interest in a specific library from that collection now try to get this specific library included into Boost? I don't think so. It may be a different story if it is the developer of the specific library that tries to get it included into Boost.

> > This thread doesn't seem to be about inclusion of SafeFormat into boost,
> Actually, the thread started earlier. The previous msg is where I
> asked about adding SafeFormat to Boost:

I did read that thread, and I came to the conclusion that you read more into Andrei's response than he has actually said.

This also made me careful with respect to your answer in another post:

> David Abrahams wrote:
> > If SafeFormat has a maintenance deficit as part of Loki, it would have
> > the same deficit as part of Boost.
> But I believe there is a wider audience here, thus possibly more
> recruits. And there is at least one other Loki supporter who supports
> a move to Boost if possible.

Do you refer to the thread

The "Loki supporter" just wrote "Loki is great and I still use it but I wish it were integrated to Boost." I don't have the impression that this "Loki supporter" has expressed his support for cherry picking libraries from Loki for inclusion into Boost. If I would have made that statement, the integration of Loki into Boost would be more related to facilities like "typelist", "functor" and "smart pointer", that are present in both Loki and Boost.

> > Does SafeFormat really contains functionality similar for scanf for parsing input?
> I can't answer because I have no need for scanf (but I don't think
> that was ever completed).

Hartmut Kaiser's answer that Spirit V2 supports both input parsing with Spirit.Qi and output formating with Spirit.Karma makes me inclined to be against the inclusion of SafeFormat into boost. In any case, I will now take a deeper look at Spirit.Karma to see whether it is really as nice as I expect.

But as indicated earlier, the reason that I replied to your post is not really related to SafeFormat. I'm more interested in the relation of boost to other library collections, because I think that there must be more option of coexistence than reinvention or inclusion.


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