title: Pattern matching is not giving the expected results
body: <p>Pattern matching is not working as per the understanding. </p>
  
  <p>I read the pattern matching concepts in the text book "Programming in Scala".</p>
  
  <p>I have a pattern matching definition as below.</p>
  
  <pre><code>def checkMe (a:Any) =  a match {
        case Int =&gt; "I am an Integer"
        case Double =&gt; "I am a Double"
        case Char =&gt; "I am a Charecter"
        case _ =&gt; "I am something else"
       }
  </code></pre>
  
  <p>Irregardless whatever I pass while calling to the function, always the default case is executed.</p>
  
  <p>E.g: checkMa(100) gives "I am something else"
       checkMe(10.) too gives "I am something else" etc..</p>
  
  <p>Can someone please help me understand what is wrong in the definition.</p>
  
  <p>I expect the definition executing according to the type I pass.</p>