Implementation and extending interfaces from different packages
<p>I'm wondering, is it possible to extend existing interfaces? There is a simple code snippet which doesn't work.</p>

<p>package main</p>

<pre><code>import (
    "fmt"
    "io"
)

type Aaa struct {}

// Implementing io.ReaderAt interface
func (a Aaa)ReadAt(p []byte, off int64) (n int, err error) {
    return
}

// Extending it
func (a *Aaa) A() {
    fmt.Println("A")
}

func main() {
    list := [1]io.ReaderAt{Aaa{}} // Use Aaa object as io.ReaderAt type
    list[0].A() //Trying to use an extended type. &lt;&lt; Error occurred here
}
</code></pre>

<blockquote>
  <p>list[0].A undefined (type io.ReaderAt has no field or method A)</p>
</blockquote>

<p>Is it a way to tell me that I can't implement interfaces from different package?</p>