1. Home
  2. /
  3. Developer
  4. /
  5. Technology Overview
  6. /
  7. Smart Contracts

Smart Contracts

Smart contracts are one of the central building blocks of blockchain applications. They define the protocols to facilitate, verify, or enforce negotiation and performance of decentralized communication.

Smart contracts allow the performance of credible transactions without third parties. These transactions are trackable and irreversible. On AERGO, smart contracts power all kinds of decentralized business and crypto-focused applications leveraging the AERGO Chain’s inherent trustless characteristics.

Feature Overview

Building decentralized applications requires learning new tools and languages. AERGO provides an integrated development environment for building decentralized applications that enables everyday developers to use blockchain using familiar technology.


AERGO’s smart contracts are based on Lua, with support for SQL. AERGO Lua provides a powerful, efficient, and flexible programming environment with first-class support for SQL. This makes building on the technology easy for many developers that have not yet touched a blockchain. ASCL, a separate smart contract language being developed by AERGO due for release by the end of 2019, allows developers with a basic background in SQL to pick up and start building smart contracts with a focus on easy data handling.

Data handling

Data handling through smart contracts on AERGO is seamless through a familiar key-value store. It is an optimized key-value data structure provides a familiar environment for existing smart contract developers. Developers can reuse existing data schemes and their knowledge in relational databases through first-class support for SQL and relational storage in AERGO private chains.


AERGO provides an optimized smart contract engine with just-in-time compilation for lightning fast execution. Its multi-paradigm smart contract environment provides both the performance and flexibility required for building practical decentralized applications.


AERGO provides Lua as a basic programming environment for creating smart contracts with support for SQL-like syntax. Through first-class support for SQL in Lua, developers can store and manipulate business data efficiently, infusing flexible business logics.

As a result, full-stack developers with basic knowledge in SQL can readily pick up and start creating AERGO smart contracts.

AERGO Lua allows developers to write business logic using the Lua scripting language, while accessing both key-value stores and relational data with SQL. It executes smart contracts utilizing the Lua JIT architecture.


With the AERGO IDE for Atom, developers can test and deploy smart contracts easily right inside one of the most popular code editors.

The IDE provides a rich UI that makes it easy for developers to use the AERGO blockchain without using command line tools or writing extra code.