我正在阅读有关 Streams 的 Scala 教科书
sealed trait Stream[+A]
case object Empty extends Stream[Nothing]
case class Cons[+A](h: () => A, t: () => Stream[A]) extends Stream[A]
教科书上写着
“由于技术限制,这些是必须明确强制的 thunk,而不是名称参数。”
我想教科书的意思是h: ()=>A, t: ()=>Stream[A]
不应该用 h: =>A, t: =>Stream[A]
. 但是什么是所谓的“技术限制”禁止这样做呢?