Scala:为什么List [=> Int]不起作用?

Chr*_*imm 8 scala lazy-evaluation

我一直在努力学习scala的来龙去脉,最近我遇到了一些我很好奇的东西.

据我所知,如果我想将一段有效延迟评估的代码传递给一个函数,(不进行现场评估)我可以输入:

def run(a: =>Int):Int = {...}
Run Code Online (Sandbox Code Playgroud)

从这个意义上说,函数run接收一个尚待评估的代码块,它会对其进行求值并返回计算出的Int of.然后我尝试将这个想法扩展到List数据结构.打字:

def run(a: List[=>Int]) = {...} 
Run Code Online (Sandbox Code Playgroud)

但是,这会返回错误.我想知道为什么这是不允许的.除了通过这种语法,我可以如何传递未评估的代码块列表?