
FlightCaster秘笈——Clojure和Rails
FlightCaster是一个实时航班延误预告网站,其后台统计分析构建在Clojure和Hadoop上。它的Web前台是用Ruby on Rails构建的,且托管于Heroku上。我们就Clojure、函数编程及有意尝试的OOP开发者应该掌握的技巧对等话题采访了Bradford Cross。

FlightCaster是一个实时航班延误预告网站,其后台统计分析构建在Clojure和Hadoop上。它的Web前台是用Ruby on Rails构建的,且托管于Heroku上。我们就Clojure、函数编程及有意尝试的OOP开发者应该掌握的技巧对等话题采访了Bradford Cross。

自从Robert Pickering在去年5月份出版了《F#基础》一书,这个语言发生了很大的变化。除了增加了许多新的特性,F#还成功地从一个实验室项目蜕变成一个广受支持的产品级版本。在本文中,我们请Robert详细讨论F#中新的特性——活动模式。

本采访视频由黄璜翻译,马国耀审校。 这篇访谈首先讨论了何时引入如monads等复杂的Haskell概念,转而讨论了高阶编程背后的哲学,以及Haskell所取得的成功和产生的影响和主流世界中的使用,最后探讨了同步教授计算机音乐与Haskell语言这一想法来作为总结。
Clojure 1.1 RC1已经发布,引入了新的特性:transient使得开发者能够更改持久数据结构,chunked sequence使得lazy sequence更加高效,这些特性的引入大大降低了函数编程的成本。InfoQ分析了这些特性高效的原因。
FlightCaster最近开源了Crane,一个分布式工具,也能用于远程操作Clojure实例,目前主要针对EC2。Incanter既能作为库,也能作为工具使用,它使Clojure能方便地进行与R类似的统计计算。此外,构建及依赖管理工具Leiningen也发布了1.0版本。
在Ruby或者Rails应用中嵌入C代码是解决性能瓶颈的办法之一,RubyInline大大简化了这个过程。Mark Wotton近期推出的Hubris使得在Ruby中调用Haskell代码成为可能。
对那些专注于C#和VB风格语言的开发者来说,模式匹配是个陌生的概念,其实事情本不该这样。然而模式匹配仅仅成为对case语句的一种完善,而case语句又成为对if-else-if块的完善。本文将带领大家一窥这种转变过程以及如何将F#的模式匹配应用到VB和C#上。
微软在 VS 2010 Beta 1中包含了F#,并发布了对应的用于VS2008的CTP更新。最新的二进制版本1.9.6.16,和之前的版本1.9.6.2不兼容,意味着所有之前的代码都需要重新编译。

本迷你书是《JavaScript语言精髓与编程实践》一书的精选版。 本书摘选了其中关于语言范型的论述,并由此组织成文,故名为《动态函数式语言精髓》。本书由作者周爱民先生亲自摘选编撰,由InfoQ中文网站独家在线发布。