On Saturday, March 17, 2018 at 1:54:17 AM UTC-4, T L wrote: > > > > On Friday, March 16, 2018 at 3:31:23 PM UTC-4, Axel Wagner wrote: >> >> >> >> On Fri, Mar 16, 2018 at 8:20 PM, T L <tapi...@gmail.com> wrote: >> >>> >>> >>> On Friday, March 16, 2018 at 2:57:48 PM UTC-4, Jan Mercl wrote: >>>> >>>> On Fri, Mar 16, 2018 at 7:40 PM T L <tapi...@gmail.com> wrote: >>>> >>>> >>>> > I feel the second append call should be also valid. >>>> >>>> Works as intended: T is not struct{} >>>> >>>> If desired, it can become that: https://play.golang.org/p/nY-BB3t0IAw >>>> >>>> >>>> -- >>>> >>>> -j >>>> >>> >>> yes, alias works. >>> >>> Just realize that this is not a "append" specified question. >>> I feel the following one should be also valid. >>> >> >> This is the same question of why you can't convert `[]int` to >> `[]interface{}` - it's a costly operation and Go tends to not hide >> expensive operations from you. >> > > Yes. But I think there is a little specialty here. > It is a problem of which viewpoint is right. > 1. fmt.Println(1, 2, 3) is a shorthand of fmt.Println([]interface{1, 2, > 3}...) > 2. fmt.Println(aBlankInterfaceSlice...) is a shorthand of > fmt.Println(aBlankInterfaceSlice[0], aBlankInterfaceSlice[1], ..., > aBlankInterfaceSlice[N]) >
Go spec does imply the first viewpoint is right. > > >> >> >>> >>> package main >>> >>> import "fmt" >>> >>> func main() { >>> s := []int{1, 2, 3} >>> fmt.Println(s...) >>> } >>> >>> >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "golang-nuts" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to golang-nuts...@googlegroups.com. >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.