Boost logo

Boost :

From: Giovanni P. Deretta (lordshoo_at_[hidden])
Date: 2005-04-24 22:46:32


David Abrahams wrote:
>>
>>- C++ is a static language, let's leave these niceties to more dynamic
>>languages. I have found myself weeks hunting a bug in the http code
>>because i thought that it would be cool if i could access http
>>properties using a map instead of proper accessor functions. I spent
>>weeks hunting persistent connection bug. It was a simple typo inside a
>>http property string that would have been caught immediately by the
>>compiler if i were using functions or costants [1].
>
>
> Right. If you need to do dynamic polymorphism, add a layer of type
> erasure in a separate component. I think that's what you meant by
> "external polymorphism," but that's not a great term because it
> doesn't distinguish the static from the dynamic.
>

Yes, I meant type erasure. I used the term "external polymorphism
pattern" because it is described with this name in the ACE patterns
documentation.

>
> That's a very convincing argument.
>
> I don't know much about networking, but from what I've heard here I
> like your design instincts very much. I'll try to look at your docs.
> Is this in the same design space as a "sockets library?"
>

Yes, it is, mostly. It doesn't really have a socket concept and it also
  deals with disk i/o, thus it is not completelly network centric.

--
Giovanni P. Deretta

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