Boost logo

Boost :

From: Andrei Alexandrescu (andrewalex_at_[hidden])
Date: 2001-11-28 18:19:46


From: "Mark Rodgers" <mark.rodgers_at_[hidden]>
> From: "Andrei Alexandrescu" <andrewalex_at_[hidden]>
> >
> > I explained at length why I believe it's not a good idea to port
> > Loki's facilities to mpl. I believe that is possible, though.
> >
> Did you? You said that you found mpl complex and you preferred
> a simpler implementation, but I don't recall any reason why you
> wouldn't want to *use* MPL if it were available. Is there such
> a big difference between writing loki::length and mpl::size that
> the latter would be a problem? It's shorter for one thing. :-)
>
> I'm sad to see this degenerate into a Loki vs MPL debate.

Me too, that's a bummer. I had expected I'd go through trouble once I'll
start submitting Loki to boost, but really I hadn't expected that much
trouble and that early on :o).

As of using mpl in Loki, sure, that's not a big deal on the face of it.
There are issues, though. So please allow me to state my viewpoint in
submitting Loki to boost, viewpoint that I find reasonable. Again, I start
from the assumption that the process is worthwhile and that Loki would add
value to boost. Not everybody seems to think so; in case this is a general
opinion around boost, I'd be glad to hear that, no hard feelings, so as not
to waste everybody's time.

So again, here's my view:

* If boost has a facility that does the same as a facility of Loki, and is
better designed, Loki will gladly use boost's. This is the case with, for
example, type_traits; Vesa Karvonen convinced me a while ago that boost's
type traits are better designed.

Actually the latest version of Loki (not committed yet to sourceforge)
assumes existence of boost and uses boost's type_traits everywhere.

* If Loki has a facility that has a similar design as boost's but sports
minor differences, Loki will use boost's facility on a case-by-case basis.
In addition, if I think details in Loki's implementation are slightly better
than boost's, I'll lobby the group for changing them. This is the case with
conversion_traits which, I think, don't have a good name. (More on that
later.)

* If Loki has a facility that I consider better that boost's, I will submit
Loki's facility. This is the case of mpl.

In addition, I think it is not good to make gratuitous changes to Loki. It
is well documented and has a growing user base. The names in loki ring bells
to C++ programmers. So for example if we don't find a clearly better name
for int2type and type2type I would suggest we keep them the same.

Andrei


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk