title: Is Julia's `hash()` function guaranteed to have a stable output across sessions, platforms and versions?
body: <p>I tried running the following code in multiple different Julia REPL sessions, on MacOSX and Linux, and I always got the exact same outputs:</p>
  
  <pre><code>julia&gt; hash(123), hash("123"), hash([1,2,3]), hash((1,2,3)), hash(Set([1,2,3])), hash(:123)
  (0x54657e9dbfd649e5, 0xb4e92987fa06fcab, 0xecc5186e7be222c6, 0xafc764e9c2b7cde5, 0x66406071c4c9b92a,
  0x54657e9dbfd649e5)
  </code></pre>
  
  <p><strong>Question: is this behavior guaranteed by the language? Or can the outputs vary (like they do in Python, across sessions, platforms and versions)?</strong></p>
  
  <p>Note: this question is related to my <a href="https://stackoverflow.com/questions/62461860/is-the-order-of-julia-sets-and-dicts-guaranteed-to-be-stable-across-sessions-pl">other question</a> about the stability of the order of hash-based collections such as <code>Set</code> and <code>Dict</code> (it's closely related, but different).</p>