Em golang existe uma maneira legal de obter uma fatia de valores de um mapa?

Se eu tiver um mapa m existe uma maneira melhor de obter uma fatia dos valores v então

package main
import (
  "fmt"
)

func main() {
    m := make(map[int]string)

    m[1] = "a"
    m[2] = "b"
    m[3] = "c"
    m[4] = "d"

    // Can this be done better?
    v := make([]string, len(m), len(m))
    idx := 0
    for  _, value := range m {
       v[idx] = value
       idx++
    }

    fmt.Println(v)
 }

Existe uma característica construída de um mapa? Existe uma função em um pacote Go, ou este é o melhor código para fazer se eu precisar?

questionAnswers(4)

yourAnswerToTheQuestion