大部分语言都用尖括号<>表示泛型,golang却要标新立异用中括号。golang宁可让编译简单,而不是编程简单,谷歌式的偏执,很难理解这样的逻辑。确实golang的核心卖点之一就是编译速度快,比java、c++等快很多很多,当然想要保持这个特点就不能让编译器越来越复杂。
当设计和实现是同一波人的时候,结果都不太好看。记得有人评价 C++ 新标准:再这么瞎折腾,写编译器的要被玩死了。其实如果只是泛型,那么还好,如果像C++这种模板参数可以是数值的,就需要考虑和大于号、移位混合起来的二义问题。
大部分语言都用尖括号<>表示泛型,golang却要标新立异用中括号。golang宁可让编译简单,而不是编程简单,谷歌式的偏执,很难理解这样的逻辑。确实golang的核心卖点之一就是编译速度快,比java、c++等快很多很多,当然想要保持这个特点就不能让编译器越来越复杂。
当设计和实现是同一波人的时候,结果都不太好看。记得有人评价 C++ 新标准:再这么瞎折腾,写编译器的要被玩死了。其实如果只是泛型,那么还好,如果像C++这种模板参数可以是数值的,就需要考虑和大于号、移位混合起来的二义问题。