Are blockhash() and blobhash() properties or built-in functions?
- Dominant language
- C++
- Stars
- 25.7k
- Forks
- 6.2k
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 29
Description
## Page
- https://docs.soliditylang.org/en/latest/units-and-global-variables.html#block-and-transaction-properties
- https://github.com/ethereum/solidity/blob/develop/docs/units-and-global-variables.rst#block-and-transaction-properties
## Abstract
- Custom / Built-in Properties:
- are custom / built-in variables bound to an object
- cannot take parameters
- Custom / Built-in Methods:
- are custom / built-in functions bound to an object
- can take parameters
- Functions / Variables:
- are not bound to any object
- Built-in objects in Solidity are equivalent to global objects.
Note: this classification is my interpretation. I couldn't find explicit definitions for these terms in the official documentation, so I'm trying to understand the intended distinction.
`blockhash()` and `blobhash()` clearly take parameters and therefore are not properties. They appear to behave as standalone built-in functions. Yet they are listed under “Block and Transaction Properties” — a section that seems to imply they are properties. Could you clarify why blockhash() and blobhash() are included under “Block and Transaction Properties”, despite behaving like standalone built-in functions?
Contributor guide
Research direction
Read docs/units-and-global-variables.rst at the “Block and Transaction Properties” section and compare the descriptions of blockhash() and blobhash() with the terminology used elsewhere in the Solidity documentation. Done means the documentation clearly explains their classification and why they appear in that section; no specific test is mentioned.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- solidity
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100