title: Shorthand to declare "return type" in typescript
body: <p>I'm following <a href="http://www.typescriptlang.org/Handbook#classes" rel="nofollow">Typescript handbook</a> to learn about class.</p>
  
  <p>Here is one of the examples:</p>
  
  <pre><code>class Greeter {
      greeting: string;
      constructor(message: string) {
          this.greeting = message;
      }
      greet() {
          return "Hello, " + this.greeting;
      }
  }
  
  var greeter: Greeter; // return type: Greeter
  greeter = new Greeter("world"); // implement greeter variable
  alert(greeter.greet());
  </code></pre>
  
  <p>In typescript:</p>
  
  <pre><code>var greeter; // return type: any
  var greeter: Greeter; // return type: Greeter (implicit convertion `any` to `Greeter`)
  </code></pre>
  
  <p>So, my question is: If we know exactly about the return type, why can't we use <code>Greeter</code> instead of <code>var</code> keyword?</p>
  
  <p>What I wanna archive:</p>
  
  <pre><code>Greeter greeter = new Greeter("world"); // same to: var greeter = new Greeter("world");
  </code></pre>