yihui 虽然我接触R不久,但关于R的这些“精巧”之处,我个人有些不同的体会……命名空间作为一种管理软件结构的方式,也算是一个相当古老的概念了,例如C++可以很轻松地声明命名空间,Python里则是一个文件就可以作为一个命名空间,还可以很方便地指定别名。许多以面向对象作为主要设计方向的语言都有类似的设计。但在R之中,命名空间给人的感觉却相当死板,必须是打成包才能使用这个特性。作为一个“随手即用”的语言,多数用户自己写的“R应用”大概还是使用 source("<path>") 之类的方式组织起来的,没有必要对每一层抽象单独打包,但这时候命名空间这个特性就无法发挥作用,而且命名空间及其下属函数的指定方式也显得繁琐。除此之外,R中还有诸多的古怪之处,包括R中繁冗的面向对象的语法、library函数中变量不加引号,各种古怪的函数变量等等,其形式都是相当晦涩难懂。综合起来给人的印象就是这不是一个设计非常良好的语言,而是将各种特性胡乱拼凑而成的弗兰肯斯坦,说起来功能很强大,但实际学习和使用起来却让人非常糟心……
当然我不是专业统计人士,接触R的时间也比较短,如果有什么错误还请海涵及指正……