Skip to content
This repository has been archived by the owner on May 17, 2022. It is now read-only.

Commit

Permalink
minor typo corrections:
Browse files Browse the repository at this point in the history
misspelling of "it's"
improper capitalization of "ether"
other minor typos
  • Loading branch information
JohnDoe389 committed Aug 18, 2016
1 parent ee23c55 commit ee0683f
Show file tree
Hide file tree
Showing 23 changed files with 107 additions and 108 deletions.
4 changes: 2 additions & 2 deletions old-docs-for-reference/go-ethereum-wiki.rst/Mutan-0.2.rst
Expand Up @@ -196,7 +196,7 @@ iteration is controlled by a conditional block.
InitStmt = SimpleStmt .
PostStmt = SimpleStmt .

A "for" in it's simplest form is a C-Like "while" statement (therefor
A "for" in its simplest form is a C-Like "while" statement (therefor
Mutan doesn't have a "while")

.. code:: go
Expand All @@ -205,7 +205,7 @@ Mutan doesn't have a "while")
a = a * 2
}
A "for" statement in it's purest form is controlled my a initialiser,
A "for" statement in its purest form is controlled my a initialiser,
condition and a post statement which will be executed at the end of the
Block

Expand Down
4 changes: 2 additions & 2 deletions old-docs-for-reference/go-ethereum-wiki.rst/Mutan-0.4.rst
Expand Up @@ -199,7 +199,7 @@ iteration is controlled by a conditional block.
InitStmt = SimpleStmt .
PostStmt = SimpleStmt .

A "for" in it's simplest form is a C-Like "while" statement (therefor
A "for" in its simplest form is a C-Like "while" statement (therefor
Mutan doesn't have a "while")

.. code:: go
Expand All @@ -208,7 +208,7 @@ Mutan doesn't have a "while")
a = a * 2
}
A "for" statement in it's purest form is controlled my a initialiser,
A "for" statement in its purest form is controlled my a initialiser,
condition and a post statement which will be executed at the end of the
Block

Expand Down
4 changes: 2 additions & 2 deletions old-docs-for-reference/go-ethereum-wiki.rst/Mutan-0.5.rst
Expand Up @@ -201,7 +201,7 @@ iteration is controlled by a conditional block.
InitStmt = SimpleStmt .
PostStmt = SimpleStmt .

A "for" in it's simplest form is a C-Like "while" statement (therefor
A "for" in its simplest form is a C-Like "while" statement (therefor
Mutan doesn't have a "while")

.. code:: go
Expand All @@ -210,7 +210,7 @@ Mutan doesn't have a "while")
a = a * 2
}
A "for" statement in it's purest form is controlled my a initialiser,
A "for" statement in its purest form is controlled my a initialiser,
condition and a post statement which will be executed at the end of the
Block

Expand Down
4 changes: 2 additions & 2 deletions old-docs-for-reference/go-ethereum-wiki.rst/Mutan-0.6.rst
Expand Up @@ -204,7 +204,7 @@ iteration is controlled by a conditional block.
InitStmt = SimpleStmt .
PostStmt = SimpleStmt .

A "for" in it's simplest form is a C-Like "while" statement (therefor
A "for" in its simplest form is a C-Like "while" statement (therefor
Mutan doesn't have a "while")

.. code:: go
Expand All @@ -213,7 +213,7 @@ Mutan doesn't have a "while")
a = a * 2
}
A "for" statement in it's purest form is controlled my a initialiser,
A "for" statement in its purest form is controlled my a initialiser,
condition and a post statement which will be executed at the end of the
Block

Expand Down
4 changes: 2 additions & 2 deletions old-docs-for-reference/go-ethereum-wiki.rst/Mutan.rst
Expand Up @@ -192,7 +192,7 @@ iteration is controlled by a conditional block.
InitStmt = SimpleStmt .
PostStmt = SimpleStmt .

A "for" in it's simplest form is a C-Like "while" statement (therefor
A "for" in its simplest form is a C-Like "while" statement (therefor
Mutan doesn't have a "while")

.. code:: go
Expand All @@ -201,7 +201,7 @@ Mutan doesn't have a "while")
a = a * 2
}
A "for" statement in it's purest form is controlled my a initialiser,
A "for" statement in its purest form is controlled my a initialiser,
condition and a post statement which will be executed at the end of the
Block

Expand Down
@@ -1,5 +1,5 @@
Ethereum Child processes allow any node to connect to an existing node
and share it's parent process to handle all network communication and
and share its parent process to handle all network communication and
data persisting. This will allow for multiple Ethereum light nodes on
the same host with full access to the block chain through the parent
process.
Expand Down
Expand Up @@ -21,7 +21,7 @@ Ethereum Sub-protocol

**Status** [``+0x00``: ``P``, ``protocolVersion``: ``P``, ``networkId``:
``P``, ``td``: ``P``, ``bestHash``: ``B_32``, ``genesisHash``: ``B_32``]
Inform a peer of it's current **ethereum** state. This message should be
Inform a peer of its current **ethereum** state. This message should be
sent *after* the initial handshake and *prior* to any **ethereum**
related messages. \* ``protocolVersion`` is one of: \* ``0x00`` for
PoC-1; \* ``0x01`` for PoC-2; \* ``0x07`` for PoC-3; \* ``0x09`` for
Expand Down
2 changes: 1 addition & 1 deletion source/about.rst
Expand Up @@ -15,7 +15,7 @@ The goal is to create documentation with information, short tutorials, and examp
Any information that is overly specific, technical, or not necessary to accomplish the documentation's goal will remain on the Ethereum Github Wiki. It may be referenced in this guide if necessary.

Although much of the information will be similar between the Frontier Guide and the Homestead Guide, efforts need to be made to make sure the information ported over is still accurate.
This document is client agnostic and examples and tutorials may be based on any client that the author decides to write on, as long as a distinction is made as to what client is being used in the examples/tutorials.
This document is client agnostic, and examples and tutorials may be based on any client that the author decides to write on, as long as a distinction is made as to what client is being used in the examples/tutorials.

Although overly specific and technical documentation will not be included in the first iterations of this guide, community use and popularity of this guide will dictate future decisions to move Github wiki documentation to this format.

Expand Down
2 changes: 1 addition & 1 deletion source/account-management.rst
Expand Up @@ -8,7 +8,7 @@ Accounts
================================================================================

Accounts play a central role in Ethereum. There are two types of accounts: *externally owned accounts* (EOAs) and *contract accounts*. Here we focus on externally owned accounts, which will be referred to simply as *accounts*. Contract accounts will be referred to as *contracts* and are :ref:`discussed in detail in Contracts <Contracts>`. This generic notion of account subsuming both externally owned accounts and contracts is justified in that these entities are so called *state objects*. These entities have a state: accounts have balance and contracts have both balance and contract storage. The state of all accounts is the state of the Ethereum network which is updated with every block and which the network really needs to reach a consensus about.
Account are essential for users to interact with the Ethereum blockchain via transactions.
Accounts are essential for users to interact with the Ethereum blockchain via transactions.

If we restrict Ethereum to only externally owned accounts and allow only transactions between them, we arrive at an "altcoin" system that is less powerful than bitcoin itself and can only be used to transfer ether.

Expand Down
Expand Up @@ -63,8 +63,8 @@ note that data in these examples will differ on your local node. If you want to
> curl --data '{"jsonrpc":"2.0","method":"eth_getBalance", "params": ["0xeb85a5557e5bdc18ee1934a89d8bb402398ee26a"], "id":2}' localhost:8545
{"id":2,"jsonrpc":"2.0","result":"0x1639e49bba16280000"}
Remember when we said that numbers are hex encoded? In this case the balance is returned in Wei as a hex string. If we want to have the balance in
Ether as a number we can use web3 from the geth console.
Remember when we said that numbers are hex encoded? In this case the balance is returned in eei as a hex string. If we want to have the balance in
ether as a number we can use web3 from the geth console.

.. code:: js
Expand Down Expand Up @@ -126,7 +126,7 @@ Now that our contract is deployed we can interact with it. There are 2 methods f
If we look at the documentation for the `eth_sendTransaction <https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_sendtransaction>`_ we can see that we need to supply
several arguments. In our case we need to specify the ``from``, ``to`` and ``data`` arguments. ``From`` is the public address of our account and ``to``
the contract address. The ``data`` argument is a bit harder. It contains a payload that defines which method must be called and with which arguments.
This is were the ABI comes into play. The ABI defines how to define and encode data for the EVM. You can read
This is were the ABI comes into play. The ABI defines how to define and encode data for the EVM. You can read
`all the details about the ABI here <https://github.com/ethereum/wiki/wiki/Ethereum-Contract-ABI>`_.

The bytes of the payload is the function selector and defines which method is called. This is done by taking the first 4 bytes from the Keccak hash
Expand Down Expand Up @@ -270,4 +270,3 @@ Other Resources

* `EtherNodes <http://ethernodes.org/>`_ - Geographic distribution of nodes and split by client
* `EtherListen <http://www.etherlisten.com>`_ - Realtime Ethereum transaction visualizer and audializer

Expand Up @@ -18,7 +18,7 @@ Externally owned accounts (EOAs)

An externally controlled account

- has an Ether balance,
- has an ether balance,
- can send transactions (ether transfer or trigger contract code),
- is controlled by private keys,
- has no associated code.
Expand All @@ -28,7 +28,7 @@ Contract accounts

A contract

- has an Ether balance,
- has an ether balance,
- has associated code,
- code execution is triggered by transactions or messages (calls) received from other contracts.
- when executed
Expand All @@ -42,7 +42,7 @@ All action on the Ethereum block chain is set in motion by transactions fired fr
This execution needs to be completely deterministic, its only context is the position of the block on the blockchain and all data available.
The blocks on the blockchain represent units of time, the blockchain itself is a temporal dimension and represents the entire history of states at the discrete time points designated by the blocks on the chain.

All Ether balances and values are denominated in units of wei: 1 Ether is 1e18 wei.
All ether balances and values are denominated in units of wei: 1 ether is 1e18 wei.

.. note:: "Contracts" in Ethereum should not be seen as something that should be "fulfilled" or "complied with"; rather, they are more like "autonomous agents" that live inside of the Ethereum execution environment, always executing a specific piece of code when "poked" by a message or transaction, and having direct control over their own ether balance and their own key/value store to store their permanent state.

Expand Down Expand Up @@ -83,7 +83,7 @@ When you are running a decentralized application (dapp), it interacts with the b

When a contract is executed as a result of being triggered by a message or transaction, every instruction is executed on every node of the network. This has a cost: for every executed operation there is a specified cost, expressed in a number of gas units.

Gas is the name for the execution fee that senders of transactions need to pay for every operation made on an Ethereum blockchain. The name gas is inspired by the view that this fee acts as cryptofuel, driving the motion of smart contracts. Gas is purchased for ether from the miners that execute the code. Gas and ether are decoupled deliberately since units of gas align with computation units having a natural cost, while the price of ether generally fluctuates as a result of market forces. The two are mediated by a free market: the price of gas is actually decided by the miners, who can refuse to process a transaction with a lower gas price than their minimum limit. To get gas you simply need to add ether to your account. The Ethereum clients automatically purchase gas for your Ether in the amount you specify as your maximum expenditure for the transaction.
Gas is the name for the execution fee that senders of transactions need to pay for every operation made on an Ethereum blockchain. The name gas is inspired by the view that this fee acts as cryptofuel, driving the motion of smart contracts. Gas is purchased for ether from the miners that execute the code. Gas and ether are decoupled deliberately since units of gas align with computation units having a natural cost, while the price of ether generally fluctuates as a result of market forces. The two are mediated by a free market: the price of gas is actually decided by the miners, who can refuse to process a transaction with a lower gas price than their minimum limit. To get gas you simply need to add ether to your account. The Ethereum clients automatically purchase gas for your ether in the amount you specify as your maximum expenditure for the transaction.

The Ethereum protocol charges a fee per computational step that is executed in a contract or transaction to prevent deliberate attacks and abuse on the Ethereum network. Every transaction is required to include a gas limit and a fee that it is willing to pay per gas. Miners have the choice of including the transaction and collecting the fee or not. If the total amount of gas used by the computational steps spawned by the transaction, including the original message and any sub-messages that may be triggered, is less than or equal to the gas limit, then the transaction is processed. If the total gas exceeds the gas limit, then all changes are reverted, except that the transaction is still valid and the fee can still be collected by the miner. All excess gas not used by the transaction execution is reimbursed to the sender as Ether. You do not need to worry about overspending, since you are only charged for the gas you consume. This means that it is useful as well as safe to send transactions with a gas limit well above the estimates.

Expand Down Expand Up @@ -119,7 +119,7 @@ The approximate cost, using the default gas price (as of January 2016), would be

3 \* 0.05e12 = 1.5e11 wei

Since 1 Ether is 1e18 wei, the total cost would be 0.00000015 Ether.
Since 1 ether is 1e18 wei, the total cost would be 0.00000015 Ether.

This is a simplification since it ignores some costs, such as the cost of passing the 2 numbers to contract, before they can even be added.

Expand Down
16 changes: 8 additions & 8 deletions source/contracts-and-transactions/developer-tools.rst
Expand Up @@ -45,7 +45,7 @@ Dapp development requires an understanding of the Web3 Javascript API, the JSON
* `JSON RPC API <https://github.com/ethereum/wiki/wiki/JSON-RPC>`__ - This is the low level JSON RPC 2.0 interface to interface with a node. This API is used by the `Web3 JavaScript API <https://github.com/ethereum/wiki/wiki/JavaScript-API>`__.
* `Solidity Docs <https://solidity.readthedocs.org/en/latest/>`__ -
Solidity is the Ethereum developed Smart Contract language, which compiles to EVM (Ethereum Virtual Machine) opcodes.
* :ref:`test-networks` - Test networks help developers develop and test Ethereum code and network interactions without spending their own Ether on the main network. Test network options are listed below.
* :ref:`test-networks` - Test networks help developers develop and test Ethereum code and network interactions without spending their own ether on the main network. Test network options are listed below.
* :ref:`IDE-or-development-framework`. This assists you in developing,
debugging, and deploying Ethereum applications.

Expand Down Expand Up @@ -93,7 +93,7 @@ Mix-IDE

Mix is the official Ethereum IDE that allows developers to build and deploy contracts and decentralized applications on top of the Ethereum blockchain. It includes a Solidity source code debugger.
:ref:`sec:mix`

IDEs/Frameworks
================================================================================

Expand All @@ -102,7 +102,7 @@ Below are developer frameworks and IDEs used for writing Ethereum dapps.
* `Truffle <https://github.com/ConsenSys/truffle>`__ - Truffle is a development environment, testing framework and asset pipeline for Ethereum.
* `Dapple <https://github.com/nexusdev/dapple>`__ - Dapple is a tool for Solidity developers to help build and manage complex contract systems on Ethereum-like blockchains.
* `Populus <http://populus.readthedocs.org/en/latest/>`__ - Populus is a Smart Contract development framework written in python.
* `Eris-PM <https://docs.erisindustries.com/documentation/eris-package-manager/>`__ - The Eris Package Manager deploys and tests smart contract systems on private and public chains.
* `Eris-PM <https://docs.erisindustries.com/documentation/eris-package-manager/>`__ - The Eris Package Manager deploys and tests smart contract systems on private and public chains.
* `Embark <https://iurimatias.github.io/embark-framework/>`__ - Embark is a Ðapp development framework written in JavaScript.
* `EtherScripter \(obsolete, discontinued\) <http://etherscripter.com/0-5-1/>`_
* `Resilience Raw Transaction Broadcaster <https://github.com/resilience-me/broadcaster/>`_
Expand All @@ -117,9 +117,9 @@ Commandline console for Ethereum nodes.

Here you could find a list of available commands `ethereum node control commands <https://github.com/ethereum/ethereum-console/blob/master/web3Admin.js>`_

To use this console you would need to start a local ethereum node with ipc communication socket enabled (file ``geth.ipc`` in data directory).
To use this console you would need to start a local ethereum node with ipc communication socket enabled (file ``geth.ipc`` in data directory).
By default ipc socket should be located at you local home directory in .ethereum after you started a node.
You could also set ``--test`` option to use specific node test commands.
You could also set ``--test`` option to use specific node test commands.

.. code:: Console
Expand All @@ -132,15 +132,15 @@ In the console you could then type
> web3.eth.<command name> (arguments, function(){})
Here the defenition of ``--test`` mode node commands:
Here the defenition of ``--test`` mode node commands:

.. code:: Console
> web3.test.addBlock("[RLP]", function(){}) - Add a block from a string containing it's hex RLP
> web3.test.addBlock("[RLP]", function(){}) - Add a block from a string containing its hex RLP
> web3.test.rewindToBlock:("[int]", function(){}) - Reset the blockchain to specified block number
> web3.test.mineBlocks:("[int]", function(){}) - Mine a certain amount of NoProof blocks into chain
> web3.test.modifyTimestamp:("[int]", function(){}) - Set current block timestamp
> web3.test.setChainParams:("[json]", function(){}) - Reset the blockchain with given node configuration file
> web3.test.setChainParams:("[json]", function(){}) - Reset the blockchain with given node configuration file
More information about node `configuration <../network/test-networks.html#custom-networks-eth>`_ file.

Expand Down

0 comments on commit ee0683f

Please sign in to comment.