> For the complete documentation index, see [llms.txt](https://alex-robenko.gitbook.io/comms-protocols-cpp/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://alex-robenko.gitbook.io/comms-protocols-cpp/head-4.md).

# Achievements

After all this effort of creating the generic `comms` library, let's summarise what has been achieved.

* The communication protocol implementation becomes easy and straightforward

  process, using mostly declarative statements of classes and types definitions

  without unnecessary boilerplate code. The C++ compiler does all the dirty and

  boring work of generating the required code.
* The default logic, provided by the library, can easily be extended and/or

  overridden using class inheritance and virtual functions.
* The protocol implementation doesn't enforce any restrictions on data structures

  being used, and as a result it can be reused in any system, including bare-metal

  ones.
* There is no dependency on any specific I/O link and the way the data is

  being communicated.&#x20;
* The application level messages and transport data are completely independent,

  which allows usage of the same application level messages over different I/O

  links, which require different transport wrapping, at the same time.
