title: Does != have meaning in OCaml?
body: <p>It seems to be an equivalency comparison for some types, but not strings.</p>
  
  <pre><code># 3 != 3;;
  - : bool = false
  # 3 != 2;;
  - : bool = true
  </code></pre>
  
  <p>This is as expected.</p>
  
  <pre><code># "odp" = "odp";;
  - : bool = true
  # "odp" != "odp";;
  - : bool = true
  # "odp" &lt;&gt; "odp";;
  - : bool = false
  </code></pre>
  
  <p>Why does <code>"odp" != "odp"</code> evaluate to <code>true</code>? What is it actually doing? Shouldn't it generate a type error?</p>