title: Scala Some v. Option
body: <p>What's the difference between <code>Some</code> and <code>Option</code>?</p>
  
  <pre><code>scala&gt; Some(true)
  res2: Some[Boolean] = Some(true)
  
  scala&gt; val x: Option[Boolean] = Some(true)
  x: Option[Boolean] = Some(true)
  
  scala&gt; res2 == x
  res3: Boolean = true
  </code></pre>
  
  <p>I see that <code>Option(null)</code> returns, whereas <code>Some(null)</code> won't compile:</p>
  
  <pre><code>scala&gt; val x = Option(null)
  x: Option[Null] = None
  
  scala&gt; val x: Option[Boolean] = Some(null)
  &lt;console&gt;:7: error: an expression of type Null is ineligible for implicit conversion
         val x: Option[Boolean] = Some(null)
                                       ^
  </code></pre>