title: Assigning to map in golang
body: <p>In the following go snippet, what am I doing wrong?</p>
  
  <pre><code>type Element interface{}
  
  func buncode(in *os.File) (e Element) {
      &lt;snip&gt;
      e = make(map[string]interface{})
      for {
          var k string = buncode(in).(string)
          v := buncode(in)
          e[k] = v
      }
      &lt;snip&gt;
  }
  </code></pre>
  
  <p>Compiling gives me this error:</p>
  
  <pre><code>gopirate.go:38: invalid operation: e[k] (index of type Element)
  </code></pre>
  
  <p>Double ewe T eff?</p>