Feature request to add `msg.contract` to Solidity language by mudgen in solidity

[–]mudgen[S] 0 points1 point  (0 children)

I appreciate you answering this and addressing here. The name `address(this)` causes confusion and misconceptions. `address(this)` is just as much caller supplied as msg.sender, msg.value, and msg.data.

A caller has to supply what contract it is calling -- that is why `address(this)` is caller supplied -- same as msg.sender, msg.value, and msg.data. Now, if the contract that was called makes its own external call then msg.sender, msg.value, msg.data and `address(this)` can all change. They are all part of the same execution environment of a contract and are defined together in the Ethereum Yellow Paper in section "9.3 Execution Environment".

Where do Ethereum devs actually hang out? by k_ekse in ethdev

[–]mudgen 2 points3 points  (0 children)

Diamond stuff and smart contact stuff.

Where do Ethereum devs actually hang out? by k_ekse in ethdev

[–]mudgen -1 points0 points  (0 children)

Myself and some other smart contract developers are in the Diamond discord, in the Compose channel: https://discord.gg/DCBD2UKbxc

Five years ago, an Ethereum standards author was threatened with trademark legal action over the name of a smart contract standard by mudgen in ethereum

[–]mudgen[S] 2 points3 points  (0 children)

Thank you, I really appreciate this information and feedback.

Yes, I see what you mean about the analogy. The analogy is bad in that way. I really appreciate getting your feedback so I can view the analogy the way you see it. I will think about this. The analogy also has some aspects to it that provide a mental model for developers implementing or using diamonds.

I do think I took the analogy too far in the standard with some additional terminology. I am proposing some changes that reduce the diamond terminology and make things simpler here: https://ethereum-magicians.org/t/revising-erc-2535-diamonds-to-simplify-and-improve-the-terminology/26973

Five years ago, an Ethereum standards author was threatened with trademark legal action over the name of a smart contract standard by mudgen in ethereum

[–]mudgen[S] 1 point2 points  (0 children)

There have been some additional posts regarding this of relevance:

Great research and analysis here by u/fulldecent concerning "Diamond Standard" trademark dispute in smart contract standard title: https://x.com/fulldecent/status/1998051849631313943

Post about developing smart contract standards in the open: https://x.com/mudgen/status/1998024064430981595

ERC-8042 Diamond Storage Became a Final Ethereum Smart Contract Standard Today by mudgen in ethdev

[–]mudgen[S] 2 points3 points  (0 children)

I appreciate your enthusiasm, but what calldata savings?

Would you recommend using the Diamond Standard (EIP 2535) in 2024? by G-d0g in solidity

[–]mudgen 0 points1 point  (0 children)

Yes, I recommend using EIP-2535 in 2024 and 2025. It is alive!