ewasm / design

Ewasm Design Overview and Specification
Apache License 2.0
1.02k stars 125 forks source link

EEI: transfer() method and simplification of selfDestruct() #113

Open chfast opened 6 years ago

chfast commented 6 years ago

Resolves https://github.com/ewasm/design/issues/98.

lrettig commented 6 years ago

I had a conversation with (I believe) @arachnid at Ethereum Magicians where I used this method as an example of Ewasm departing from full EVM compatibility, and he indicated that it's dangerous and that the existing transfer mechanics are the way they are for a reason--something to do with the danger of transferring to a contract which is not designed to accept ETH, thus acting as a black hole for funds. It might be interesting to have that conversation here.

chfast commented 6 years ago

I agree. This method is only needed for evm2wasm. I want it to be properly designed, then we can disable it in "pure ewasm" configurations.

axic commented 6 years ago

Wouldn't you want to propose this PR in conjunction with changing selfDestruct at the same time?

chfast commented 6 years ago

Wouldn't you want to propose this PR in conjunction with changing selfDestruct at the same time?

I can, but I wanted to propose a single change per PR for easier review.

chfast commented 6 years ago

Added selfDestruct() changes.

chfast commented 6 years ago

Rebased.

egroge commented 4 years ago

Hello, is this transfer method likely to be merged into eWASM? If not, what is the accepted way to transfer money between accounts in eWASM? Any links or explanations on this would be appreciated as I have not been able to find much about it so far.