While it has many of the same advantages as languages like Simplicity, Solidity is designed specifically for use with the Ethereum blockchain network. Solidity allows programmers to write higher-level code which is then compiled down into low-level machine language.
RChain is an ongoing development project that’s in the process of building Rholang, a concurrent programming language for smart contracts. Unlike the five languages above, which are object-oriented in design, Rholang is a functional language.
Functional programming is a different way of thinking about programming. Instead of using variables to hold values, and changing these values over the course of the program’s execution, functional programming sees programs as a series of mathematical functions to be evaluated sequentially.
A vocal minority of developers prefer using functional programming languages, such as Lisp and Haskell, due to advantages like elegance and concurrency. Although RChain and Rholang will offer many of the same capabilities as languages such as Simplicity and Solidity, Rholang operates in a specifically functional context. The project caters toward those blockchain developers who prefer to work in a functional programming environment.
After reading about the six languages above, you’re undoubtedly wondering which of them is right for your project. Answering this question starts with understanding what you’re actually trying to do and what networks you’ll be working with.
If you want to implement a new cryptocurrency, you can probably start with Bitcoin and Simplicity. Bitcoin is based on a proof-of-work blockchain, which you could copy and build out using Simplicity. You can also work with the established Ethereum blockchain using Solidity.