title: What is the difference between a function object and a callable object?
body: <p>I recently saw the <a href="http://google-caja.googlecode.com/svn/trunk/doc/html/es5-talk/es5-talk.html" rel="noreferrer">presentation about the changes in ECMAScript 5</a>. And there was a <a href="http://google-caja.googlecode.com/svn/trunk/doc/html/es5-talk/img31.html" rel="noreferrer">slide</a> with this statement:</p>
  
  <blockquote>
    <p><em>Function</em> vs <em>Callable</em></p>
  
  <pre><code>typeof f === 'function'                       // → f is Callable
  ({}).toString.call(f) === '[object Function]' // → f is a Function
  </code></pre>
  </blockquote>
  
  <p>Can anyone explain to me what the difference between <em>Function</em> and <em>Callable</em> is?</p>