Should there be a standard algorithm for calculating ETH supply?

Setting aside the (kind of made-up) controversy, I ask the following questions:

  • Should there be a standard algo for calculating ETH supply in clients?
  • What would be the best approach to deal with the generation and storage of this measure?
  • Who are the users of a supply measurement?
  • Are there different kinds of supply which would be useful or relevant?

A response by JΞFF to “Crypto’s Weirdest Cognitive Dissonance” on Twitter https://twitter.com/jeffehh/status/1294289745292546049:

It’s not as dry cut as it may seem. BTC for example allow for a simple algorithm to calculate the current amount of coins. For ethereum it’s slightly different because it allows for ether to be burned (as in it doesn’t exists anymore). Without iterating over all of the accounts
in the trie you’ll never have a definitive answer. I’m not saying it’s impossible, but it would take an insane amount of time. The other solution is to create a separate log that records changes to the total supply (I.e. block rewards, suicide calls + pre-minted coins). Bear in
mind that this will only ever be possible when running a full node (I.e. start execution from genesis) and I have no idea what kind of overhead this may cause plus it’s slightly tricky because you’d need to record only SUICIDE ADDRESS
and SUICIDE <the address of the to be suicided contract>. Also I wouldn’t want to mess with the VM unless absolutely necessary and certainly not, imo, for a nice gimmick.

1 Like

Posted by @tjayrush on reddit:

Here’s two articles I wrote:

https://medium.com/coinmonks/ethereums-issuance-minerreward-3cad5b9a72ff

https://medium.com/coinmonks/ethereums-issuance-unclereward-72de71b0f9f6

and a code base implementing the discussion in the articles:

https://github.com/Great-Hill-Corporation/trueblocks-core/blob/develop/src/other/issuance/README.md

I’d love feedback on them if anyone’s interested.

1 Like

Confusing article, can’t tell which is original and which is new code. You talk about how confusing the yellow paper is, but when you write the article it is confusing as well as to which lines of code you are wanting to change. Maybe you can put them side by side?

1 Like

Jordan Last has created scripts for the “total issued ETH” methodology.

Twitter discussion: