EOSCommunity.org Forums

Why Go Smart Contracts?

Why Go Smart Contracts?

I’m here to introduce Go Smart Contracts Development Kit, a toolkit for supporting write Smart Contracts in Golang.

Eos yet has one fundamental problem to solve: the developer-friendly of writing Smart Contracts.

As you know currently Eos Smart Contracts can only be written in C++. C++ is good at performance, but not very developer-friendly.

So here comes Go Smart Contracts.

Comparing to C++ Smart Contracts, Go Smart Contracts have the following advantages.

  1. “Flat learning curve” VS “steep learning curve”

Because Golang is easier to learn than C++, there are more Go developers than C++ developers all around the world. That means we can onboarding more developers more quickly to the Eos ecosystem. And the flourish of the Eos ecosystem depends on developers. And thanks to the developer-friendly of Golang, developers make few mistakes and make the work more efficient. That also means few potential bugs and more security for Smart Contracts.

  1. Small code size

Under my experience, the compiled size of Go Smart Contracts is much smaller than C++ Smart Contracts. That means lower costs for Smart Contracts developers. Take the token contract at

for example, the compiled code size is about 13KB, and the compiled official token contract is about 20KB.

  1. Lots of high-quality source packages ready for developers to use.

  2. Mature Go community

That means you can solve your programming problems more easily and more efficiently from online resources.

Works still need to be done:

  1. Keep improving Go Smart Contracts Development Kit

In the coming weeks, I will keep improving the Go Smart Contracts compiler, the chain module of Go Smart Contracts and release a stable version.

  1. Code audit

When the code is stable enough, the code has to be audited to prove it’s mature enough and ready to be used by developers.

  1. Teaching course.

Tutorials are important for new developers. I will record a serial of videos to bring new developers on board quickly.

  1. Since Smart Contracts are fundamental elements of blockchain. It needs to keep maintaining and evolving

Source Code:

Go Smart Contracts Development Kit:

chain module for Go Smart Contracts:


  1. Will you keep improving Go Smart Contracts?

I’ve been working on Smart Contracts improvement for three years. I don’t mind taking another three years. And I have other ideas for improving the Eos ecosystem undertake.