Reading Assignment - EOS Basics

What’s an action?
Actions define atomic behaviors within a smart contract.

What’s the difference between explicit actions and implicit (or inline) actions?
Explicit = done within a smart contract -present in a signed transaction Explicit actions contain the payload data, if any associated with the action to be executed as a part of the transaction.

Implicit also inline actions = by application code. -created as a side effort of processing a transaction -also found in smart contract code. Inline actions are not included in the actual transactions propagated through the network. They are not included in the block. Implicit actions are generated as a result of an explicit caller action within a transaction or another nested inline action. It requires that implicit action to preform an operation for the caller action to continue. They operate within the scope and permissions of the called action. As a result they are guaranteed to execute within the same transaction.

What’s the difference between an action and a transaction?
Actions specify and define the actual behaviors of the contract. Actions are implemented as C++ methods within the derived class.

Transactions are created at the application level. Transactions are generated dynamically within an eosio application. The EOSIO software processes each transaction instance and keeps track of its state as it evolves from creation, signing, validation, and execution.
Transaction
transaction header
eligibility to be included in the block
block number
block ID prefix (prevents cross chain or cross fork attacks)
upper limits for CPU and network usage,
block number
delay if any
list of actions instances
and transaction extensions that make the actual transaction.

Signed transaction instance:
basic contents:
signature(s)
data associated with the context free actions

Packed Transaction instance:
optionally compressed
additional housekeeping fields to allow for decompression and quick validation
minimize space footprint and block size in the long run

What is a transaction receipt and what does it mean to receive it?
Transaction receipts summarize the result of the transaction (executed, unexecuted, failed, expired, deferred, etc…), including the actual amount of CPU billed in microseconds, and the total NET storage used

I answered the questions based on what I saw in the article, but I don’t understand most of what I wrote.

  1. what is atomic behavior? What does it compare with?
  2. I don’t understand explicit vs implicit actions
  3. Actions are the triggers in a smart contract that calls for a transaction, right?? I’m not sure.
  4. I would expect more order in a block Should be header contains A, B, C… Body contains D,E,F… closing contains G,H, receipt. I looked for this format, but didn’t see it.
  1. What’s an action?
  • Actions are a group of atomic behaviors within a single transaction that execute automatically inside a decentralized app
  1. What’s the difference between explicit actions and implicit (or inline) actions?
    -The difference between implicit (inline) actions and explicit actions is that inline actions are not part of the actual transaction being propagated through the network & included in the block, they are an implied side effect.

  2. What’s the difference between an action and a transaction?
    -actions are the pieces that create a transaction

  3. What is a transaction receipt and what does it mean to receive it?
    -The transaction receipt lists a summary of the transaction (including executed, unexecuted, failed, deferred, expired exc,.) includes the amount of CPU billed in microseconds & amount of NET storage used

I think receiving the transaction receipt verifies that the transaction has gone through but I think we still need to wait for 5 more blocks to be added to really confirm it?

Receiving the transaction receipt indeed verify that the transaction was appended to a block, depending on the transaction type, might have to wait for blocks confirmation or not.

For example, trading (buy/sell tokens on newdex for example) is almost instantly, 1 transaction block confirmed, DeFiBox to provide liquitidy sometime you have to wait for blocks confirmation.

If you have any more questions, please let us know so we can help you! :slight_smile:

Carlos Z.

1 Like

Q1: Actions are how data is put on a block chain by its users; and are fundamental to how block chains work and the integrity of the data on them. As such, they are mostly contained within a smart contract; or are generated using an App; both of which have specific coding to ensure the actions can be completed; and can be checked e.g; and perform tasks needed to manage data on the block chain.

Q2: Differences between Explicit and Implicit (inline) actions; are that inline actions are excluded from the transactions that are done across the network; but are a side effect of processing a transaction, so are implicit. Explicit actions are like a list of actions a user does to complete a transaction on the block chain, so are encoded to be action instances before being pushed into a transaction. Explicit actions can also contain the payload data needed for the transaction.

2 Likes

Q3; the difference between an action and a transaction is that actions are precoded so that users of a block chain perform tasks on it in a uniform way; within the confines of a smart contract. Transactions are when actions are completed e.g with payload information; and are checked e.g in EOS by the 21 administrators. Also, transactions can be created by Applications (e.g
via DApps) and are tracked in EOS by its EOSIO software.

2 Likes

Q4; A receipt informs all node users that new data is on the block chain, which means a transaction is completed. It can also be a measure of how much memory is being used; and is important for a user as it tells them their transaction is complete. A receipt is also a chronological record of date; time; actions etc so that the creator of the transaction can trace it if an issue arises. Like when you get a receipt from an ATM machine. The 21 checkers could also lose their stakes without the receipts.

2 Likes
  1. What’s an action?
    An action is an atomic behavior within a smart contract. They specify and define the behaviors within a smart contract.

  2. What’s the difference between explicit actions and implicit (or inline) actions?
    Explicit actions- Or Regular actions are called upon and include the payload data (if any). They are also encoded as action incidence before being pushed into a transaction. They call upon implicit actions to perform actions within their caller action scope.
    Implicit actions- Are generated as the result of an explicit action called upon to perform an action in a smart contract when the Explicit action is called upon. Inline (implicit) actions work within the scope of the called upon explicit action.

  3. What’s the difference between an action and a transaction?
    An action is an atomic behavior within a smart contract. The transaction is a is implemented at the application level and actions are agnostic to them. Meaning (smart contracts) actions wait for explicit actions to be called upon to execute both explicit & implicit actions.

  4. What is a transaction receipt and what does it mean to receive it?
    A transaction receipt is created and includes all other receipts ( data usage, executed, unexecuted, failed, deferred, ect.) CPU billing info and total net storage used to be pushed in to a signed block.

1 Like

OS BASICS

What’s an action?
A.)There are two types of actions involved in a transaction. They mainly differ in the way they are executed by the EOSIO software:

i.)Explicit actions, which are present in a signed transaction (see 2. Transaction Instance).
ii.)Implicit (inline) actions, which are created as a side effect of processing a transaction.
iii.)(Implicit (inline) actions are also defined in smart contract code, just like explicit actions. The key difference is that inline actions are not included in the actual transactions propagated through the network and eventually included in a block; they are implicit.)
What’s the difference between explicit actions and implicit (or inline) actions?
A.) (Implicit (inline) actions are also defined in smart contract code, just like explicit actions. The key difference is that inline actions are not included in the actual transactions propagated through the network and eventually included in a block; they are implicit.)

What’s the difference between an action and a transaction?
A.) As nouns the difference between action and transaction is that action is something done so as to accomplish a purpose while transaction is the act of conducting or carrying out (business, negotiations, plans). As an interjection action is demanding or signifying the start of something, usually an act or scene of a theatric performance.

What is a transaction receipt and what does it mean to receive it?

A.) After all action receipts are generated for the transaction, a transaction receipt is finally created and pushed into the signed block, along with other transaction receipts included in the block. The transaction receipt summarizes the result of the transaction (executed, unexecuted, failed, deferred, expired, etc.), including the actual amount of CPU billed in microseconds, and the total NET storage used.

2 Likes

1. What’s the difference between an action and a transaction?
Actions are atomic behaviors within a smart contract and it is these actions that form transactions on a blockchain automatically

2. What is a transaction receipt and what does it mean to receive it?
After the actions are implemented the receipt is created containing the details of the transaction which means the transaction was added to the blockchain and will be accepted by the block producers

3. What is receiver, code and action??
Receiver is a receiver account to whom the action is intended
Code is the language used like C++
and actions are made from the code language that perform certain behaviors

4. What is the ABI files used for?
It allows client or interfaces to use and interact with the smart contract using JSON

1 Like
  1. an action is an automatic behavior within a smart contract, and a transaction as a group of actions
  2. Explicit actions are included in the actual list of actions that form a transaction, Implicit actions are generated by application code. They are created as a side affect of processing a transaction, and are generated as a result of an explicit caller action within a transaction. They are defined in smart contract code just like explicit actions, but are not included in the actual transactions propagated through the network and eventually included in a block. operation
  3. A transaction is a collection of actions which is just an automatic behavior within a smart contract.
  4. The transaction receipt summarizes the result of the transaction, including the actual ammount of cpu billed in nanoseconds, and the total NET storage used
1 Like

1. What’s an action?

A single operation.

2. What’s the difference between explicit actions and implicit (or inline) actions?

Actions can be created explicitly within a smart contract, or generated implicitly by application code.

3. What’s the difference between an action and a transaction?
Transaction = Collection of actions. An action is the automatic behavior of a smart contract.

4. What is a transaction receipt and what does it mean to receive it?

It summarizes the result of one transaction.
It includes the CPU billed in nanoseconds and the the total NET storage used.

1 Like

1.) Actions are sets of instructions programmed into smart contracts that define the behavior of that smart contract. Actions provide the functionality to the contract and are accompanied with type definitions which the actions depend on.
2.) An explicit action is different from an implicit (or inline) action by the way they are executed by the EOSIO software. Explicit actions are included in the actual list of actions within a transaction where as implicit actions are the results of an explicit caller action requiring an implicit action to perform an operation so that the explicit caller action may continue function.
3.The difference between an action and a transaction is that is that an action is a single operation and transactions are collections of actions.
4.)A transaction receipt is a detailed accounting of the computational resources and a summary of the result of the transaction. A transaction receipt is created after all actions are completed in that transaction.

1 Like
  1. What’s an action?
    The "atoms of a transaction. Each action has to succeed in a predefined order or the transaction will fail.
  2. What’s the difference between explicit actions and implicit (or inline) actions?
    These are the two types of actions involved in a transaction.
    Explicit actions are present in a signed transaction. Also contain the actual payload data, if any, associated with the action to be executed as part of the transaction.
    Implicit actions are created as a side effect of processing a transaction. These are not included in the actual transactions propagated through the network nor included in the block; they are implicit.
  3. What’s the difference between an action and a transaction?
    An action is a part of a transaction. Each transaction is a series of actions, all of which must successfully execute in a predetermined order for the transaction to be processed or the transaction will fail.
  4. What is a transaction receipt and what does it mean to receive it?
    A corresponding action receipt for each action is generated during the finalization of a transaction. The action receipt contains a hash of its corresponding action.

After all action receipts for a transaction have been generated, a transaction receipt is generated and the transaction receipt is pushed into the signed block on the block chain, along with any other transactions receipts included in that block.

The transaction receipt summarizes the results of the transaction, whether it was executed, unexecuted, failed, deferred, expired, etc.

ASIDE: I hope the active/owner key pairs are used to eliminate phone numbers and replace phone companies. I get so many spam calls and I need my phone to do business.

1 Like
  1. An action defines an atomic behaviour within a smart contract

  2. An explicit action is included in the actual list of actions that form a transaction and contain the payload data, an implicit action is generated as a side effect of processing a transaction and are not included in the actual transaction

  3. A transaction defines groups of actions whereas an action is an atomic behaviour

  4. A transaction receipt summarizes the result of the transaction including actual amount of CPU billed in microseconds and total NET storage used. Receiving it means that all actions in the transaction have executed

1 Like
  1. What is an action? Actions define atomic behaviors within a smart contract.
  2. What’s the difference between explicit actions and implicit actions? Explicit actions are present in a signed transaction, Implicit actions are created as a side effect of processing a transaction
  3. What’s the difference between an Action and a transaction? Actions are the steps necessary for the transaction to take place and a transaction is sending the information from one party to another
  4. What’s the transaction receipt and what does it mean to receive it? The transaction receipt summarizes the result of the transaction(executed, unexecuted, failed, deferred, expired, etc.) including the actual amount of the CPU billed in microseconds and the total net storage used.
1 Like
  1. An action is a behavior definer within a smart contact.
  2. Explicit actions are present in a signed transaction, they are included in the list of the actions that form the transaction. Implicit/inline actions are created as a side affect of processing a transaction a nd are generated as a result of an explicit caller action within a transaction.
  3. Actions are behavior g=definer withing the smart contract, transactions are groups of actions within decentralized application.
  4. Transaction receipt is a summary of the transaction: executed, unexecuted, failed, deferred, expired transaction NET storage used and the actual amount of CPU billed.
1 Like
  1. What’s the difference between an action and a transaction?
    an action represents a single operation but transaction is a collection of one or many actions
  2. What is a transaction receipt and what does it mean to receive it?
    a transaction receipt confirms that the node accepted it without error
    it means than the node accepted it without error which means that there is a high probability that other nodes will accept
  3. What is receiver, code and action?
    receiver is the account that is currently processing the action
    code is the account that authorized the contract
    action is the id of the currently running action
  4. What is the ABI files used for?
    abi stands for Application Binary Interface, it is used for converting user actions between their JSON and binary representations, it describes how to convert the database to/from JSON so developers will be able to interact with your contract seemlessly via JSON
1 Like
  1. What’s an action?
    smallest activity in a smart contract

  2. What’s the difference between explicit actions and implicit (or inline) actions?
    explicit actions form a transaction while implicit actions are created as side effect of a tx

  3. What’s the difference between an action and a transaction?
    a group of actions form a tx

  4. What is a transaction receipt and what does it mean to receive it?
    it is created when a tx is completed and means that the receiving node accepted the tx

1 Like

1. What’s an action?
An action is defined as the smallest possible activity within a smart contract.

2. What’s the difference between explicit actions and implicit (or inline) actions?
Explicit actions are present in a signed transaction and implicit action are created as a side effect of an on-chain transaction.

3. What’s the difference between an action and a transaction?
A list of required actions forms a transaction.

4. What is a transaction receipt and what does it mean to receive it?
After all action receipts are generated for the transaction, a transaction receipt is finally created and pushed into the signed block, along with other transaction receipts included in the block. The transaction receipt summarizes the result of the transaction (executed, unexecuted, failed, deferred, expired, etc.), including the actual amount of CPU billed in microseconds, and the total NET storage used. Receiving the receipt means that the transaction was executed with exact results listed in the receipt.

1 Like
  1. What’s an action?
    Actions define atomic behaviors within a eos smart contract. A group of
    actions make up a transaction.
  2. What’s the difference between explicit actions and implicit (or inline) actions?
    Explicit actions are actions that form a transaction. Explicit actions also contain
    payload data (if any is present). An implicit (inline) action is generated as a result of
    an explicit caller action.
  3. What’s the difference between an action and a transaction?
    Actions specify and define the actual behaviors of the contract. Several actions are
    implemented in the standard EOSIO contracts for account creation, producer voting,
    token operations, etc. Application developers can extend, replace, or disable this
    functionality altogether by creating custom actions within their own smart contracts
    and applications. Transactions, on the other hand, are typically created at the
    application level.
  4. What is a transaction receipt and what does it mean to receive it?
    The transaction receipt summarizes the result of the transaction and the
    receiver account to which the action is intended.
1 Like