title: Why does one select Scala type members with a hash instead of a dot?
body: <p>In Scala, the syntax for selecting a type from a class is different from that of selecting anything else from a class. In that the former uses a hash as the selection operator instead of a dot. Why is that?</p>
  
  <p>Example: If we have a class like so...</p>
  
  <pre><code>class Example {
      type Foo = String
  }
  </code></pre>
  
  <p>Why do we select the type from the class like this...</p>
  
  <pre><code>val example:Example#Foo = "1"
  </code></pre>
  
  <p>instead of like this?</p>
  
  <pre><code>val example:Example.Foo = "1"
  </code></pre>