【发布时间】:2011-10-17 23:17:20
【问题描述】:
我是 Go 新手,但我读过 Go 常客不会错过参数多态性。每次我尝试学习一门新语言时,我都会使用the L99 list of problems 进行练习。
即使我尝试编写像第一个问题一样微不足道的问题(在 Go 中将是一条语句,获取切片的最后一个元素),我将如何将其编写为获取任何类型切片的函数并且(使用我上面引用的那条语句)返回该切片的最后一个元素?
我认为即使该语言没有参数多态性,也必须有一些惯用的“Go”方式来做到这一点,以便 Go 常客声称他们不会错过参数多态性。否则,如果示例比列表的最后一个元素更复杂,您将需要一个函数来执行每种类型的任务。
我错过了什么?
【问题讨论】:
-
这个问题和你的问题在同一个区域:stackoverflow.com/questions/7742635/…
-
L99链接失效了,能更新一下吗?
-
Go 可能很快就会有参数多态性。参见 Robert Griesemer 的“轻量级围棋”arxiv.org/pdf/2005.11710.pdf。
标签: go parametric-polymorphism