Skip to content

Latest commit

 

History

History
17 lines (11 loc) · 1.55 KB

README.md

File metadata and controls

17 lines (11 loc) · 1.55 KB

About

The lab10 token (symbol: lab10) contract is deployed on ARTIS Σ1.
lab10 are periodically issued to lab10 collective members as a complement to conventional (fiat) payments.
It is designed to be a flexible means for rewarding contributors. Its value/utility is not predefined. Instead it's supposed to be swappable/redeemable for lab10 related valuables/services whenever the lab10 collective decides so through its internal governance processes.

The first lab10 use case is that of swapping it for ATS, the blockchain-native token of ARTIS.

Technical

We decided to make lab10 an ERC777 token which is ERC20 compatible.
ERC777 reflects a lot of the lessons learned with ERC20 and defines interfaces which are similar to that of the blockchain-native token.

The choice of ERC777 already facilitated implementation of the first use case for lab10:
the swap contract (which allows to swap 1 lab10 for 75 ATS) uses ERC777 hooks as an elegant mechanism for a contract to act upon a token transfer. This allows the swap operation to be implemented as an atomic transaction which is triggered by a simple ERC20 transfer, as is supported by any Ethereum wallet.

The code is based on the ERC777 reference implementation, with some refactoring and simplifications added.