> On Mar 21, 2016, at 12:36 PM, Matthias Vallentin <vallen...@icir.org> wrote:
> 
> The "implementation detail" maxim lead to artifacts like PIMPL. This
> certainly made sense at the time where we considered multiple messaging
> backends. At this point, we are invested into CAF, and I don't think
> switching will happen anytime soon. Therefore, I don't think we need to
> keep up the implementation-hiding abstractions, such as PIMPL, which
> come at the cost of development productivity and performance (they are
> essentially a compiler firewall due to type erasure). 

A possible benefit to PIMPL is improving ability to maintain binary 
compatibility across releases (i.e. programs dynamically linked to Broker don’t 
need a recompile if a new release is binary compatible).  Providing stable-ish 
ABIs seems like something libraries often do, so I tried to plan that in to 
Broker.  Don’t know if I did that well, or there’s better strategies to use, or 
I was the only one worried about that to begin with, but thought I’d mention it 
just in case it wasn’t even on your radar.

- Jon

_______________________________________________
bro-dev mailing list
bro-dev@bro.org
http://mailman.icsi.berkeley.edu/mailman/listinfo/bro-dev

Reply via email to