Polkadot Implementations
There are Polkadot implementations developed in Rust, C++, Go, and JavaScript.
Parity Polkadot - The Rust client is developed by Parity Technologies in concert with their work on Substrate.
Kagome - C++ implementation of the Polkadot Runtime Environment being built by Soramitsu, a Japanese digital identity company that previously developed Hyperledger Iroha. They were awarded a grant from the Web3 Foundation and plan to release Kagome by November 2019. As part of the process they are developing a libp2p networking layer in C++.
Gossamer - A Go implementation being built by ChainSafe Systems, a 23-person development team in Toronto that is also building an Eth2.0 Serenity client. Grant announcement.
Polkadot-JS - A JavaScript client and tool set developed by Polkadot JS.
Why build multiple implementations?
As stated in the Soramitsu grant announcement:
It is critically important to have multiple implementations of the Polkadot protocol for a number of reasons, including decentralization, knowledge dispersion, and better definitions of the protocol... Multiple implementations of Polkadot improves network resilience and adds to the decentralization of the network. The governance of the network is more democratized when multiple teams build clients which run the nodes in the network.