title: Laravel Singleton and Instance
body: <p>In Laravel Documentation I have read:</p>
  
  <p>Binding A "Shared" Type Into The Container</p>
  
  <pre><code>App::singleton('foo', function()
  {
      return new FooBar;
  });
  </code></pre>
  
  <p>Vs.</p>
  
  <p>Binding An Existing Instance Into The Container</p>
  
  <pre><code>$foo = new Foo;
  
  App::instance('foo', $foo);
  </code></pre>
  
  <p>Due to the weakness of Laravel Documentation I cannot understand what is their difference. </p>
  
  <p>Can anyone explain me?</p>