Andrei Alexandrescu wrote:
Don wrote:
Andrei Alexandrescu wrote:
IUnknown wrote:
Regarding Phobos + Tango, the minimum I expect is things like
containers, algorithm and common math stuff to be in one core module.
This is already bound to be an issue because there is disagreement on
how e.g. containers should look like (Java-style vs. STL-style).
Which should be chosen? This naturally influences how algorithms are
defined.
Andrei
The analogy with KDE vs Gnome doesn't seem valid to me -- most
libraries will work regardless of which GUI library is chosen.
Programmers can still rely on the Posix and C standard libraries.
I agree.
Can we work out the math stuff at least? There's no difference between
Phobos and Tango there. All we need is an agreement on common module
naming (eg, create core.math).
That would be great. I don't think that's a major issue anyway. If I
were you, to be compatible with today's state of affairs, I'd simply put
in the makefile the code necessary for switching the module prefixes.
It means that any code which uses a library based on both Tango and a
library based on Phobos will end up with two copies of all of the
functions, and they'll have different name mangling etc. You end up with
two incompatible Bigints, for example, even though they have identical
code inside.
By the way, Andrei, this is exactly the kind of attitude which I was
ranting about. There are clear areas of duplicated code (fortunately
much of it is in druntime now), and even Tango's containers still seem
to be in a state of flux (the old container library is deprecated, and
very little of Tango is currently using containers).
Everyone -- can we be productive instead of dismissive, please?
I think you're reading significantly more into what I wrote than I meant
to put in.
Good to hear.
Andrei