Based on the new proposal, having the type parameters as () seems very
confusing, as now 3 things in a row use ():
- Type parameters
- Function parameters/arguments
- Return tuple

This results in code like (from the draft):
func Stringify(type T Stringer)(s []T) (ret []string) {
  for _, v := range s {
    ret = append(ret, v.String())
  }
  return ret
}

Instead, using <> similar to other languages, makes it easier to visual
parse:
func Stringify<T Stringer>(s []T) (ret []string) {
  for _, v := range s {
    ret = append(ret, v.String())
  }
  return ret
}

This can also apply to type definitions:
type Vector<T> []T

To summarize:
- Having 3 times () in a row makes it confusing to visual parse
- The type keyword is not necessary
- Using <> would make it friendly (and easier to recognize)

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/CALk%2Bt4a7a6G7komPB_N1ataYTOjKSU556Gp2cHge%2BxnYnoLBig%40mail.gmail.com.

Reply via email to