Imagine Python fan fiction written in C, read with a Lisp: Code lingo Nim gets cash injection
Development of new language funded to boost Ethereum client
Status.im, the makers of the Status mobile Ethereum client app, has allied with the team developing the Nim programming language, promising funding to support at least two full-time developers.
The arrangement follows the launch last week of a research project called Nimbus to develop a Nim-based sharding client for Ethereum, said to be the second most valuable cryptocurrency after Bitcoin.
Ethereum, like Bitcoin, relies on a distributed database – these days called a blockchain – where each node stores all transactions. While advantageous for security, this particular architecture limits scalability. Sharding breaks the database into pieces so that only a subset of the nodes will be involved in transaction verification, thereby allowing the blockchain to handle more transactions at any given time.
Will it blend?
"Status has a unique blend of hardware and licensing restrictions, together with a desire for rapid development and good performance," said Jacek Sieka, head of research development at Status.im, in an email to The Register. "Nim provides a lightweight and efficient language for said devices."
"With existing popular implementations being licensed under the GPL, we faced having to make clean room implementations of many of the core Ethereum libraries, given licensing compatibility restrictions on the hardware platforms we intend to use (including Apple)," he said. "This opened up the possibility of using a new language, with Nim being a top contender due to its native C backend giving us good technical reach in terms of platform support."
We are the knights who say, Nim!
The language was introduced a decade ago by Andreas Rumpf, who bears the title Nim BDFL – Benevolent Dictator For Life – an open-source honorific Python creator Guido van Rossum also held until he abdicated last month.
Until now, Nim has been supported through community-driven development and donations. With resources from Status.im, the project will get full-time attention, in the hope that it can advance more rapidly toward the planned 1.0 release.
"Unfortunately the donations are not currently enough for any of us to commit to working on Nim full-time," the Nim team said in a blog post on Tuesday. "With Status' help this is no longer the case. We will now be able to stay focused on the development of the Nim programming language."
The hired guns will hunt bugs and improve Nim's compiler, standard library, and tooling.
There's no release date for version 1.0 yet. About two-thirds of the outstanding issues listed still need to be resolved before that happens. Those interested in advancing Nim can always lend a hand via GitHub. ®