由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - FP是不是把OOP里面的类成员变量去掉,只剩下成员函数?
相关主题
也谈OOP跟FP之争Exception
OOP里面的Object其实是actormonad抽象程度有点高
FP更接近人的思维这么说吧,fp不是否定变量,而是控制变量的范围
1st class citizenclojure高手请进
Generator其实就是monad我来挖坑, 谈谈OOP/FP/SQL和人类思维习惯
问个问题支持我的JS OOP观点的文章来了
我老给你们指条明路吧If you say that a is 5, you can't say it's something else l
函数式语言是不是特别费系统资源?面向数据的编程与面向对象的编程
相关话题的讨论汇总
话题: fp话题: 函数话题: 成员话题: oop话题: 变量
进入Programming版参与讨论
1 (共1页)
N******K
发帖数: 10202
1
去掉系统状态?
L*********s
发帖数: 3063
2
我的理解也是这样,另外函数指针也可以作为参数和返回值才行

★ 发自iPhone App: ChineseWeb 7.8

【在 N******K 的大作中提到】
: 去掉系统状态?
c******o
发帖数: 1277
3
实际上不同点复杂得多。
我知道的,
第一是 函数是第一类成员,它可以象数据一样传递,函数可以接受/产生函数。(这
一点上,连scala都不是FP, 函数在scala里是class,不是数据)
第二是 需要是纯函数,不能有side effect(不光是mutable, IO也是side effect
),这一点实际几乎不可能,所以都做特殊处理和掩盖 (streaming IO process, IO
monad, State Monad etc.)。
其他的都是可添加的特性和得出的推论,不是真正的区别。
类成员可以有数据,只不过不是变量。

【在 L*********s 的大作中提到】
: 我的理解也是这样,另外函数指针也可以作为参数和返回值才行
:
: ★ 发自iPhone App: ChineseWeb 7.8

N******K
发帖数: 10202
4
如果是搞控制系统仿真 FP是不是就不行了?

【在 c******o 的大作中提到】
: 实际上不同点复杂得多。
: 我知道的,
: 第一是 函数是第一类成员,它可以象数据一样传递,函数可以接受/产生函数。(这
: 一点上,连scala都不是FP, 函数在scala里是class,不是数据)
: 第二是 需要是纯函数,不能有side effect(不光是mutable, IO也是side effect
: ),这一点实际几乎不可能,所以都做特殊处理和掩盖 (streaming IO process, IO
: monad, State Monad etc.)。
: 其他的都是可添加的特性和得出的推论,不是真正的区别。
: 类成员可以有数据,只不过不是变量。

c******o
发帖数: 1277
5
一个常见的教学例子是 discrete circuit simulation,这个完全可以,就是用state
monad,把state lift放到一个type里.

【在 N******K 的大作中提到】
: 如果是搞控制系统仿真 FP是不是就不行了?
N******K
发帖数: 10202
6
OOP和系统仿真很一致 比如仿真一个雷达 有信号处理部分 有运动控制部分 每个部分
都有信号(成员变量) 以及算法(成员函数)雷达跟踪物体 信号是时空关联的
FP搞这个 设计上是不是很别扭?

【在 c******o 的大作中提到】
: 一个常见的教学例子是 discrete circuit simulation,这个完全可以,就是用state
: monad,把state lift放到一个type里.

z****e
发帖数: 54598
7
我的理解也是这样
所以fp其实适合一些平台比较成熟的地方
别人定义好对象之后,用fp来实现操作
java的函数部分尤其是涉及到数学的部分,可读性不是很强
比较繁琐,还有提升的空间

【在 N******K 的大作中提到】
: OOP和系统仿真很一致 比如仿真一个雷达 有信号处理部分 有运动控制部分 每个部分
: 都有信号(成员变量) 以及算法(成员函数)雷达跟踪物体 信号是时空关联的
: FP搞这个 设计上是不是很别扭?

l******t
发帖数: 55733
8

应该是习惯了就好。一开始不让你传状态憋的你发疯。后来发现别人传状态你会发疯。

【在 N******K 的大作中提到】
: OOP和系统仿真很一致 比如仿真一个雷达 有信号处理部分 有运动控制部分 每个部分
: 都有信号(成员变量) 以及算法(成员函数)雷达跟踪物体 信号是时空关联的
: FP搞这个 设计上是不是很别扭?

N******K
发帖数: 10202
9
习惯了奴隶社会 就甘心当奴隶了?

【在 l******t 的大作中提到】
:
: 应该是习惯了就好。一开始不让你传状态憋的你发疯。后来发现别人传状态你会发疯。

q*c
发帖数: 9453
10
OO 和现实宇宙就一致。和人脑思维也一致,

【在 N******K 的大作中提到】
: OOP和系统仿真很一致 比如仿真一个雷达 有信号处理部分 有运动控制部分 每个部分
: 都有信号(成员变量) 以及算法(成员函数)雷达跟踪物体 信号是时空关联的
: FP搞这个 设计上是不是很别扭?

相关主题
问个问题Exception
我老给你们指条明路吧monad抽象程度有点高
函数式语言是不是特别费系统资源?这么说吧,fp不是否定变量,而是控制变量的范围
进入Programming版参与讨论
c*******9
发帖数: 9032
11
神学观点?

【在 q*c 的大作中提到】
: OO 和现实宇宙就一致。和人脑思维也一致,
g*****g
发帖数: 34805
12
世界不就是物体组成的吗,难道这里有人相信我们住在matrix里的?

【在 c*******9 的大作中提到】
: 神学观点?
c*******9
发帖数: 9032
13
没有知觉,物体有意义吗?。近代量子力学一系列理论和实验更倾向世界的本质是信息
,是不是想住在matrix里另说。

【在 g*****g 的大作中提到】
: 世界不就是物体组成的吗,难道这里有人相信我们住在matrix里的?
N*n
发帖数: 456
14
不传状态? 有没有什么直观的例子可以看怎么实现的?

【在 l******t 的大作中提到】
:
: 应该是习惯了就好。一开始不让你传状态憋的你发疯。后来发现别人传状态你会发疯。

g*****g
发帖数: 34805
15
连近代量子力学都出来了。牛顿和爱因斯坦都不懂这个,我不懂,世界上一万个人里有
一个懂
就不错了,还不是程序员。宏观物理才符合普通人对这个世界的观察。

【在 c*******9 的大作中提到】
: 没有知觉,物体有意义吗?。近代量子力学一系列理论和实验更倾向世界的本质是信息
: ,是不是想住在matrix里另说。

c*******9
发帖数: 9032
16
我不否定实用的东西,但有人一定要把这个提升到世界本质这个层面。

【在 g*****g 的大作中提到】
: 连近代量子力学都出来了。牛顿和爱因斯坦都不懂这个,我不懂,世界上一万个人里有
: 一个懂
: 就不错了,还不是程序员。宏观物理才符合普通人对这个世界的观察。

g*****g
发帖数: 34805
17
世界是物体组成的,这个不是本质,一定要到原子的高度才叫本质?

【在 c*******9 的大作中提到】
: 我不否定实用的东西,但有人一定要把这个提升到世界本质这个层面。
c*******9
发帖数: 9032
18
前面有人提到本质。世界是物体组成的也是人的一种观测角度,还不如说世界是过程组
成的更有普遍意义。

【在 g*****g 的大作中提到】
: 世界是物体组成的,这个不是本质,一定要到原子的高度才叫本质?
g*****g
发帖数: 34805
19
程序本来就是人写的,不跟人一致跟谁一致?

【在 c*******9 的大作中提到】
: 前面有人提到本质。世界是物体组成的也是人的一种观测角度,还不如说世界是过程组
: 成的更有普遍意义。

1 (共1页)
进入Programming版参与讨论
相关主题
面向数据的编程与面向对象的编程Generator其实就是monad
FP的死穴还是性能问个问题
解释一下吧Re: C语言的前途我老给你们指条明路吧
[求教大虾]关于C++编译期变量和运行期变量的区别,总是有疑惑函数式语言是不是特别费系统资源?
也谈OOP跟FP之争Exception
OOP里面的Object其实是actormonad抽象程度有点高
FP更接近人的思维这么说吧,fp不是否定变量,而是控制变量的范围
1st class citizenclojure高手请进
相关话题的讨论汇总
话题: fp话题: 函数话题: 成员话题: oop话题: 变量