Scala是如何看待编程和其中的问题的。Scala的目标,Scala的手段,Scala的效果。 能在编译期做的约束和检查,就不要延迟到运行时。例如,ADT × 如果闭包抓到的是val, 是没有多大意思的,和普通函数没区别。 关键的问题,为什么不把这个变量以参数的形式传进去。