data copying, minimise the use of resources like threads, and so on.
</p>
<p>
- Unsafe and error prone aspects of the BSD socket API not included. For
- example, the use of <code class="computeroutput">int</code> to represent all sockets lacks type
- safety. The socket representation in Boost.Asio uses a distinct type for
- each protocol, e.g. for TCP one would use <code class="computeroutput">ip::tcp::socket</code>,
+ Unsafe and error prone aspects of the BSD socket API are not included.
+ For example, the use of <code class="computeroutput">int</code> to represent all sockets lacks
+ type safety. The socket representation in Boost.Asio uses a distinct type
+ for each protocol, e.g. for TCP one would use <code class="computeroutput">ip::tcp::socket</code>,
and for UDP one uses <code class="computeroutput">ip::udp::socket</code>.
</p>
<p>