用C++进行函数式编程

近年来函数式编程(Functional Programming,FP)开始获得越来越多的关注,继面向对象编程之后,函数式编程或许会成为下一个编程的主流范式(Programming Paradigm)。
函数式编程具有代码简洁、开发速度快、更接近自然语言和易于并发编程等优点。目前越来越多的语言开始或增强对函数式编程的支持,如Python、Ruby、Javascript等。

在维基百科中对函数式编程的定义是:
In computer science, functional programming is a programming paradigm—a style of building the structure and elements of computer programs—that treats computation as the evaluation of mathematical functions and avoids changing-state and mutable data.

C++语言并不鼓励函数式程序设计,但它也不妨碍你这么做,而且为你保留了深入下层、运用SIMD内在函数基于内存映射文件直接布局数据的能力,或任何其他你发现自己用得着的精华特性。

目前C++函数式编程的资料很少,FC++是最好的基于C++的函数式编程库开放源码实现,可以把它插入遗留的C++代码中。BSFC++等项目中已经使用了FC++,BSFC++是一个用C++进行函数大规模同步并行编程的库。可以从SourceForge下载 FC++:http://sourceforge.net/projects/fcpp/

学习资料:

1. 卡马克:用C++进行函数式编程
2. FC++: The Functional C++ Library
3. Functional-Style Programming in C++

 

posted @ 2015-06-15 23:22  C.g  阅读(3530)  评论(0编辑  收藏  举报