自从学习了LISP之后,我就觉得宏是一个好语言不可或缺的一个特征。很高兴scala能够支持这个特性。当然,用不用就是另外一回事了。不过,有没有和用不用显然是两个问题。虽然有人觉得这个特性可能没用,但是我觉得,宏的作用还是很大的,特别是从程序抽象的角度来看,虽然宏可能不太容易调试和维护,但是能够很强大的固定我们的设计,这点对于复杂的程序是非常重要的。此外,使用宏肯定能够大量的减少代码的行数。
我特别的喜欢简单有效的代码,特别是逻辑清晰并且行数少的代码。这样的代码可以很大程度上减少维护的成本。另外,我总是觉得,人理解代码的时间基本是不变的,但是如果这个代码耦合度太高,依赖了太多别的代码,肯定会影响到人对于代码的阅读和理解。
总之scala的这种锐意进取的态度我非常的欣赏,而且我其实也是scala的忠实拥趸。