Daniel Lemire 列举了三个基本的不同点:
Static view | Dynamic view |
Tight definitions | Duck typing |
Ontologies | Folksonomies |
Specific solutions | Generic solutions |
他认为第一点是最重要的(Duck typing 是说动态类型,“如果一只鸟,走起来像鸭子,叫起来像鸭子,那我就可以叫它鸭子”)。动态语言不需要定义变量的类型,而是根据上下文来推断。
我倒是对第三点最有体会。现实生活中有那么多问题,使用通用的方法当然可以大大节省时间。把接口减少到能解决大部分问题,又很简洁,不追求解决所有问题。这也有利于 prototyping.
第二点我不是很理解。
ontology, taxonomy, folksonomy
ontology 本体。在计算机科学领域,其核心意思是指一种模型,用于描述由一套对象类型(概念或者说类)、属性以及关系类型所构成的世界。下面是一个简单的本体示例。
taxonomy 分类系统:最好的例子是图书馆书籍。
folksonomy:social tagging.
Roughly: Ontologies are formal definitions, folksonomies are informal and flexible "de facto" definitions.
0 comments:
Post a Comment