由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - [bssd] functional programming matters...
相关主题
gdb里怎么call member functionprolog, lisp, sql,这些算functional programming么?
aspect programing 就是 functional programing吗?Re: [bssd] 教小孩functional programming
MATLAB function call too slow大过节的,不要吵啦,推荐本函数编程的入门书吧?
Any one knows 'Q Programming Language'?Functional programming 像文言文
能否创立一个functional programming的版面我的Visual C++ .net是不是有问题?
functional programming club面试时被问到的一个问题
这个代码PYTHON怎么写?其他语言呢?一个关于Insight debugger的问题
Functional Programming PatternsPicutureBox and GIF
相关话题的讨论汇总
话题: fp话题: functional话题: bssd话题: matters
进入Programming版参与讨论
1 (共1页)
g****t
发帖数: 31659
1
我个人的浅见,functional programming在现在的算法时代还是挺重要的吧,也许会越
来越重要。并发什么的我不懂。
举最简单的例子如下:
假如你有一列数据,有一些坏点。你想查表求查表的结果。
那先填坏点,再查表
还是先查表,再填坏点
结果是不一样的。
现在你想两个办法都实验下。
如果能写成纯函数,那就是
f(g(x))还有g(f(x))即可。如果是打开写在loop里,那两个办法试一下还是比较麻烦。
这种例子挺多的。尤其ann很多是从ee的信号流图来的思路。
x***4
发帖数: 1815
2
想太复杂了。fp对普通人最大的好处是ref transparent,aka结果在任何环境run都是
一样的。这对理解复杂系统很有帮助。

【在 g****t 的大作中提到】
: 我个人的浅见,functional programming在现在的算法时代还是挺重要的吧,也许会越
: 来越重要。并发什么的我不懂。
: 举最简单的例子如下:
: 假如你有一列数据,有一些坏点。你想查表求查表的结果。
: 那先填坏点,再查表
: 还是先查表,再填坏点
: 结果是不一样的。
: 现在你想两个办法都实验下。
: 如果能写成纯函数,那就是
: f(g(x))还有g(f(x))即可。如果是打开写在loop里,那两个办法试一下还是比较麻烦。

h*i
发帖数: 3446
3
我的浅见,FP与其他的编程模式区别只在小处(日常小算法的实现),大处(程序体系
结构)其实没有啥区别。
FP强迫程序员把局部小问题也要想清楚才下手,我个人体会,这样写出来的代码要清楚
明白得多,更容易维护,对其正确性要有信心得多。这个FP的“局部需要想更多“的特
征,有人喜欢,有人不喜欢,确实是个人口味问题。
对FP的爱好可能与个人喜不喜欢用debugger有负相关。比如我几乎从不用debuger,觉
得FP这种想清楚再写的方式很好,反正我debug也是用想的。

【在 g****t 的大作中提到】
: 我个人的浅见,functional programming在现在的算法时代还是挺重要的吧,也许会越
: 来越重要。并发什么的我不懂。
: 举最简单的例子如下:
: 假如你有一列数据,有一些坏点。你想查表求查表的结果。
: 那先填坏点,再查表
: 还是先查表,再填坏点
: 结果是不一样的。
: 现在你想两个办法都实验下。
: 如果能写成纯函数,那就是
: f(g(x))还有g(f(x))即可。如果是打开写在loop里,那两个办法试一下还是比较麻烦。

g****t
发帖数: 31659
4
我和你习惯有点类似。可能是当年Mathematica写的比较多。debug不太会用.
“A computation is a temptation that should be resisted as
long as possible.”
— J. P. Boyd
FP和其他语言确实没有大区别。有的任务用FP一天能多试几个办法。因为FP容易写出来
composable接口干净的代码。用一般语言就不是那么方便。

【在 h*i 的大作中提到】
: 我的浅见,FP与其他的编程模式区别只在小处(日常小算法的实现),大处(程序体系
: 结构)其实没有啥区别。
: FP强迫程序员把局部小问题也要想清楚才下手,我个人体会,这样写出来的代码要清楚
: 明白得多,更容易维护,对其正确性要有信心得多。这个FP的“局部需要想更多“的特
: 征,有人喜欢,有人不喜欢,确实是个人口味问题。
: 对FP的爱好可能与个人喜不喜欢用debugger有负相关。比如我几乎从不用debuger,觉
: 得FP这种想清楚再写的方式很好,反正我debug也是用想的。

d******c
发帖数: 2407
5
我用R的时候,因为想尽量用vectorized operation,就要求尽量用已有的函数,同时
尽量避免手工写for loop。不是所有时候都能避免for loop,但有的时候确实可以避免。
用已有函数实际可能还是在用循环,但是是用一个经过证明的可靠函数,作一件比较简
单确定的事,相比直接去写一个复杂的for loop或者if else,这样的结构比较可靠。
另外尽量从vector角度去思考,有时也是有好处的。
这种方式有局限,但能用的时候好处很多。
1 (共1页)
进入Programming版参与讨论
相关主题
PicutureBox and GIF能否创立一个functional programming的版面
遇到一个怪问题functional programming club
cannot trace var values in vs2005这个代码PYTHON怎么写?其他语言呢?
作为返回值得实参是用指针还是引用比较好?Functional Programming Patterns
gdb里怎么call member functionprolog, lisp, sql,这些算functional programming么?
aspect programing 就是 functional programing吗?Re: [bssd] 教小孩functional programming
MATLAB function call too slow大过节的,不要吵啦,推荐本函数编程的入门书吧?
Any one knows 'Q Programming Language'?Functional programming 像文言文
相关话题的讨论汇总
话题: fp话题: functional话题: bssd话题: matters