IT技术博客大学习 共学习 共进步

stream.js :一个新的JavaScript数据结构

外刊IT评论 2011-10-13 13:57:53 浏览 4,902 次
本刊评论

    最近在网上看到了一个新的Javascript小程序――Streams,起初以为是一个普通的Javascript类库,但读了关于它的介绍后,我发现,这不是一个简单的类库,而且作者的重点也不是这个类库的功能,而是――借用文中的一段话:

    如果你愿意花10分钟的时间来阅读这篇文章,你对编程的认识有可能会被完全的改变(除非你有函数式编程的经验!)。

    还有:

    Streams 实际上不是一个新的想法。很多的函数式的编程语言都支持这种特征。所谓‘stream’是Scheme语言里的叫法,Scheme是LISP语言的一种方言。Haskell语言也支持无限大列表(list)。这些’take’,\'tail’, ‘head’, ‘map’ 和 ‘filter’ 名字都来自于Haskell语言。Python和其它很多中语言中也存在虽然不同但很相似的这种概念,它们都被称作”发生器(generators)”。

    这些思想来函数式编程社区里已经流传了很久了。然而,对于大多数的Javascript程序员来说却是一个很新的概念,特别是那些没有函数式编程经验的人。

    有兴趣的读者可以查看本站提供的它官方文档的中文翻译

建议继续学习

  1. 浅谈MySQL索引背后的数据结构及算法 (阅读 11,384)
  2. 爱喝啤酒的程序员是如何学习数据结构的 (阅读 6,482)
  3. 分布式系统的数据结构 (阅读 5,982)
  4. 开源世界中的算法与数据结构 2 -- Linux Skbuff实现 (阅读 4,042)
  5. 开源世界中的算法与数据结构 3 -- Linux Kernel List 和GList (阅读 3,923)
  6. 数据结构之treap (阅读 3,542)
  7. 全平台大文件断点续传上传技术 ( 开源项目 Stream ) (阅读 3,523)
  8. 开源世界中的算法与数据结构 1 -- Linux FIB实现 (阅读 3,466)
  9. 深入剖析 redis 数据结构 skiplist (阅读 3,385)
  10. PHP stream未能及时清理现场导致Core的bug (阅读 3,281)