Smart contracts are self-executing programs stored on the blockchain that run exactly as written. On Ethereum Classic, smart contracts benefit from the network's commitment to immutability — once deployed, a contract's code cannot be altered by any party.
How Smart Contracts Work
Compilation
Developers write contracts in high-level languages like Solidity or Vyper. The compiler translates this code into EVM bytecode — the low-level instruction set that the Ethereum Virtual Machine understands.
Deployment
The bytecode is included in a special transaction sent to the network. When miners include this transaction in a block, the contract is assigned an address and becomes part of the permanent blockchain state.
Execution
When a user sends a transaction to a contract's address, nodes execute the bytecode against the current state. Each operation consumes gas — a unit of computational effort that prevents infinite loops and ensures fair resource allocation.
Determinism
Every node executes the same bytecode with the same inputs and must arrive at the same result. This deterministic execution is what allows a decentralized network to agree on state without a central authority.
Gas and Execution Costs
Every EVM operation has a gas cost:
- Simple transfer: 21,000 gas
- Storage write: 20,000 gas (new slot) or 5,000 gas (update)
- Computation: Varies by opcode (ADD = 3 gas, MUL = 5 gas)
Users set a gas limit and gas price per transaction. If execution exceeds the gas limit, the transaction reverts but the gas is still consumed.
ERC Standards
Smart contracts on ETC follow the same token standards as Ethereum:
- ERC-20: Fungible tokens (currencies, utility tokens)
- ERC-721: Non-fungible tokens (unique digital assets)
- ERC-1155: Multi-token standard (batch operations)
Why ETC for Smart Contracts
ETC's immutability guarantee means deployed contracts will execute as written indefinitely. The blockchain has never undergone an irregular state change since the 2016 fork, making it a reliable platform for contracts that must remain unchanged.