Boost logo

Boost :

From: David Bergman (davidb_at_[hidden])
Date: 2005-09-30 09:53:13


Arkadiy wrote:

> Since the whole conversation started from Andy's statement
> that GUI is an important factor of Java's success, I just
> specified a few other areas where
> C++ and Boost, IMO, are far behind Java, the areas I consider far more
> important than GUI. I also couldn't resist to supply my
> understanding of _why_ the things are in such state. If I
> did this in inappropriately emotional way, I am sorry. I did
> not mean to offend anybody, and if I still did, I appologize
> once again.

I happen to agree with you, Arkadiy, and share what I think is your idea
that C++ in itself is a much better tool for solving problems than bare bone
Java. The problem is that Java does not come bare bone.

So, what can Boost do in order to create, or encourage the creation of, a
"Java-like" library for C++, perhaps without the GUI part, since that is
intrinsically hard to make cross-platform, and is not needed for a lot of
applications?

The C++ Standard will probably never explode into Javaeqsque proportions.
But remember that the Java library actually consists of a lot of interfaces
as well, where it is up to vendors to implement them - this is especially
true with Java 2 Enterprise Edition, obviously. Perhaps the C++ Standard, or
at least Boost, could define such API's, but leave the implementation to
others?

I would definitely love to see proper interfaces for

1. XML Parsing & Output - and perhaps "sample" implementation based on
Xerces?

2. Network - yep, it is scary that a language does not come with a proper
TCP/IP implementation these days. Even toy languages like Lua do, with a
total footprint of 300 kB...

3. Serialization - we have a quite good candidate "in-house", although it is
a bit trickier without proper reflection in the language ;-)

4. Regular Expressions - also a good candidate "in-house"

5. Database Access - I personally like the style of DTL

So, the Standard (be it C++ Standard or Boost) should define these
interfaces, but skip implementations. Boost should, and could, become the
Sun of C++ ;-)

Some 15 years ago, I was excited to see the abstract streams of C++ and
hoped they would provide for the foundation of a lot of "data transfer"
applications, such as serialization and SGML. I.e., a realization of Abelson
and Sussman's ubiquitous streams. That never came to be. Now we have even
more abstract streams and without the type-coupling. Hopefully, we could do
better this time.

/David


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