Back to Home

Ping

program
0xd2478e534318...581a8d543d24
FrontierContract #863Exact Bytecode MatchEdit this contract
Deployed September 5, 2015 (10 years ago)Block 189,327

Inter-contract communication tutorial. Ping calls Pong to retrieve a value, demonstrating cross-contract function calls in Solidity.

Frontier EraVerified Source

Historical Significance

An early mainnet example of inter-contract communication in Solidity. Part of a systematic tutorial series that documented learning Solidity from scratch during Ethereum's first months.

Context

Deployed in September-October 2015 during the Frontier era. Cross-contract calls were a novel concept, and developers were still working out the patterns for contract-to-contract interaction.

Key Facts
Deployer
Cyrus Adkisson(0xcf684d...ad1bac)
Deployment Block
189,327
Deployment Date
Sep 5, 2015, 05:35 PM
Code Size
1.2 KB
Gas at Deploy
333,882
Transactions by Year
20152

Description

A tutorial contract from Cyrus Adkisson's solidity-baby-steps series demonstrating inter-contract communication. Ping stores a reference to a Pong contract and can call getPongvalTransactional() on it to retrieve and store the pong value locally.

The contract includes getPongvalRemote() which makes the cross-contract call, setPongAddress() to configure the target, and getter functions for both the local copy and the remote Pong address. Part of a numbered tutorial progression (contract #45) teaching Solidity fundamentals on mainnet during the Frontier era.

Cyrus deployed 5 copies of this contract between September and October 2015, each configured with a different Pong address.

Source Verified

SolidityExact bytecode match(1,277 bytes)
Compiler: soljson

Exact creation bytecode match. Author Cyrus Adkisson published source at https://github.com/cyrusadkisson/solidity-baby-steps/blob/master/contracts/45_ping.sol. Batch-matched against 357 deploy TXs from deployer 0xcf684dfb8304729355b58315e8019b1aa2ad1bac.

Heuristic Analysis

The following characteristics were detected through bytecode analysis and may not be accurate.

Detected Type: program

Bytecode Overview

Opcodes1,277
Unique Opcodes100
Jump Instructions35
Storage Operations21

External Links