免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123
最近访问板块 发新帖
楼主: hniu
打印 上一主题 下一主题

Functional编程有什么用? [复制链接]

论坛徽章:
0
21 [报告]
发表于 2008-09-12 18:17 |只看该作者
呵呵,主要是haskell把世界划成两部分,一部分叫纯haskell, 一部分叫real world。对应地函数分为普通函数和IO。freenode上有一拨人专门就是玩纯haskell的。关于纯haskell,我觉得哪来定义高中的数学公式确实很方便。呵呵,可能这是从一个程序员的角度来看是这样吧,也许在数学领域,haskell根本不吃香。

另外其实编程总是离不开一些顺序执行的语句的,haskell非要抹杀这个,然后用do和嵌套函数调用来实现,可是又总要自圆其说完全没有命令式的思想。唉,反正我觉得挺累。


erlang在这一点上没有矫情,顺序执行的语句就是用逗号分开的表达式。另外整个句子是用句号来结尾,排比句用分号分隔,很人性化哦。

[ 本帖最后由 formalin14 于 2008-9-12 18:18 编辑 ]

论坛徽章:
0
22 [报告]
发表于 2008-09-12 19:35 |只看该作者
语言其实代表了一种思想,一种思考问题的方式.
记得有人说过,你可以用面向对象有语言(比如 C++/java )写出完全"面向过程"(这个词现在好像有贬义了)的程序,也可以用 C 这样的语言写出面向对象的程序.
关键在于这个语言提供了怎么的一种方式来思考问题,我觉得这才是学习的关键.
欢迎拍砖.

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
23 [报告]
发表于 2008-09-12 23:16 |只看该作者
呵呵,在我认为,一套系统能够自圆其说,就足够了。

论坛徽章:
0
24 [报告]
发表于 2008-09-18 07:22 |只看该作者
原帖由 flw 于 2008-9-1 22:37 发表
看来 FP 里面许多名词大家的译法都不一样啊。
side effect 一般翻译成“副作用”吧。经济学里面也叫“边际效应”。



今天不想跟你斗气,只是指出你的错误。

经济学的边际效,说白了就是函数的一阶导数。

而这个side effect应该还是副作用的意思。只不过在医药学领域,这个副作用一般都是坏的,而这里实际上是好的。

论坛徽章:
0
25 [报告]
发表于 2008-09-22 01:01 |只看该作者
见到熟人了。
我的感觉,把haskell当成C 就可以了。假设你学得第一门语言不是C而是Haskell,那就很自然了。

论坛徽章:
0
26 [报告]
发表于 2008-09-22 04:17 |只看该作者
原帖由 formalin14 于 2008-9-12 18:17 发表
另外其实编程总是离不开一些顺序执行的语句的,haskell非要抹杀这个,然后用do和嵌套函数调用来实现,可是又总要自圆其说完全没有命令式的思想。唉,反正我觉得挺累。


do 不过是化简过的 monad 风格的一种写法而已。

monad 是函数式思想啊,do 是语法糖,编译时会被翻译成一堆 >>= 的,囧

论坛徽章:
0
27 [报告]
发表于 2008-10-03 20:23 |只看该作者
我觉得在编写回调是特别有用.....
1.PHP也引入Function paradigm,这样,在PHP的面向对象编程貌似特别有用(我还没用过 ),因为类里面当你使用回调时不能设置自己的成员函数为回调函数,那么就用匿名函数吧;总不能为这个回调写了一个包含在类之外的函数吧。

2.在javascript 里经常用到Functional编程,这个稍微了解js的人可能会知道。。。

不知道这样理解是否有错,请指教............................
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP