2010年6月26日

摘要: 首先,这个话题太厚重了,水平还远远达不到系统阐述它的能力,只是对最近零碎感悟以及学习所得的一点汇集。(大家谁有好的书或资料推荐一下?) 因为对.NET平台熟一点,所以命令式语言就以c#为例,函数式语言就以fsharp为例。 最近对函数式编程语言有些兴趣,通过网上资料,书籍了解了一些FP语言:像微软的fsharp以及haskell,与以前一直使用的命令式语言有许多的不同(当然一些语言既可以让你以命令式语言的思维去编写,又提供FP的编程范式,最明显的莫过于javascript了),这些不同之处体现在以下一些方面 immutable 不可变对象,(简单的说immutalbe就是一定声明定义后就不能更改其值了)在FP里immutable对象是主流,是默认的(当然像fsharp提供关键字可以让你定义可变对象),不同于c#等编程语言,虽然它们提供readonly,const等关键字让你定义immutable对象,但这种定义过程是可选的,在命令式语言的世界里mutable是主流。 很自然的会想,FP为什么会这样呢,是出于一种什么理念这么去实现? 原来是因为 “λ演算”(读作lambd 阅读全文
posted @ 2010-06-26 14:38 yyliuliang 阅读(1681) 评论(1) 推荐(0) 编辑

导航