I'm not an expert so I can't comment on the Beast (other than to say that IMO it is a poor choice of name), but it would be helpful (including to people like me) to add structure to your criticisms; e.g. this is what the library does now, but this is a bad idea for this and that reason, and it would be better to do it this way, rather than "dude, this is so 10 years out of date!" :)
I did add considerable structure to what I think he should do instead. To sum it up: 1. Consume blobs of structured data. Produce blobs of structured data. 2. Facilitate i/o rather than implement i/o. 3. Be inspired by the Ranges TS rich suite of concepts, but failing that iterator pairs will do. ... and I went into a fair bit of implementation detail of how you'd arrange things differently, so I mentioned by name what customisation points in ASIO you'd use to tell ASIO about your types representing a block of structured data and so on. What I didn't do was write essays of detail. It would take too long, it's not my place, and I'm pretty sure Vinnie knows ASIO internals as well as I do, so I am assuming he understands everything I'm writing. Niall -- ned Productions Limited Consulting http://www.nedproductions.biz/ http://ie.linkedin.com/in/nialldouglas/