in reply to Hash and Array

Can I say that hash is an array of reference (or pointer) internally ?
Technically no, as hashes and arrays are 2 distinct types. You can however munge a scalar to behave both like an array and a hash (there's also pseudohashes, but they are now deprecated, so best avoided), for an example of this behaviour see. the Two-faced references section in overload.
HTH

_________
broquaint