I’ve been doing socket programming for a while in C++, and kind of got tired of having to write the same code to handle for errors, serializing / deserializing data, etc.
Are there programming languages out there that have first-class support for distributed system?
Erlang, as described by Wikipedia:
You might also want to read the Distributed Erlang section of their manual.
However, note that Erlang is a functional language and will require a much different paradigm of thought as compared to C++.