来自Stefan Tilkov的blog. 最近看到不少文章谈论JavaScript的强大功能,不知道和最近一系列基于JavaScript的网络应用提供了强大的用户界面有关。比如google的新服务,CanyonBridge的cbconnect,和salesforce.com,影响很大有关。Simon Wison提到应用JavaScript的eval()和with可以实现很多炫目的功能。其实还得加上一个:function在JavaScript完全是“一等公民”,closure也可以方便地在JavaScript里被应用。所谓一等公民,是说(从SICP来的):
- 可以被变量指代
- 可以被当成参量传入函数
- 可以作为函数的返回值被函数返回
- 可以被包含在数据结构中
Simon Wison提到的Trimquery,和我以前一门课的作业很像啊。我们当时用LISP对内存里的数据结构实现类似的查询语句,包括join, projection, 和selection。