Czy mogę wpisać fragment wartości interfejsu?

Próbuję wpisać tekst z a[]Node, do[]Symbol. W moim kodzieSymbol implementujeNode berło.

Oto kod otaczający:

<code> 43 func applyLambda(args []Node, env Env) Node {
 44     if len(args) > 2 {
 45         panic("invalid argument count")
 46     }
 47     fixed, rest := parseFormals(args.([]Symbol))
 48     return Func{
 49         Body: args[1],
 50         FixedVarNames: fixed,
 51         RestVarName: rest,
 52     }
 53 }
</code>

Oto błąd, który otrzymuję:

<code>./builtins.go:47: invalid type assertion: args.([]Symbol) (non-interface type []Node on left)
</code>

Jestem pewien, że jest ku temu dobry powód. Jak najlepiej postępować?

questionAnswers(2)

yourAnswerToTheQuestion