Rethinking Blockchain: Should it Have Been Written In Erlang From The Start?
Under the hood, every Blockchain has a mix of different mechanisms to make it work, depending on what programmers believe is the right way to tackle problems. There’s usually no right or wrong solution—there are only better ones. Even forks—carbon copies of existing blockchains—will differ in some ways as developers pursue what they perceive are better ways to deal with scale, speed, and other aspects of distributed systems.
At the very core of blockchains is the engineers’ programming language of choice. Bitcoin was written in C++; Ethereum was written in Go, C++, and now Rust. To build smart contracts on Ethereum, there’s Solidity. Most would have heard of these languages; even casual enthusiasts would have encountered these at one point or another in their daily reads.
Yet there is one language that has been making its way into the discussion. Erlang, despite not being a household name, was actually created 33 years ago. As a matter of fact, it’s an active part of the infrastructure that powers the Internet we use today. Despite not having the same popularity as other more commonly known programming languages, Tobias Lindahl asserts that Erlang is the perfect programming language—and disciplinary foundation, for building a Blockchain.
Lindahl, a 20-year Erlang veteran with a Masters of Science in Engineering Physics, spent several years doing research and work on virtual machines (VM). He’s currently part of the star-studded developer team of æternity, alongside other programming legends—with one of Erlang’s co-creators, Robert Virding among them.
From Scratch: Engineering a Better Blockchain
“Since blockchains are so heavily reliant on communication, it would have been natural to have it in Erlang in the first place,” Lindah