A hashing function outputs an integer that is 256 bits long... so why not store it as such?
uint256 is usually used for numbers on which you'd like to perform arithmetic operations like
A hash is almost never used like that. You almost never want to multiply a hash by
7. From that perspective it makes sense that it would have a different type.
If you call a hash an integer, you might as well call every piece of data an integer: pictures, strings, pdf documents, hashes, ... all integers because they all consist of bits. Maybe we should use integral data types for all of them.