由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - FP有的,Python都有!
相关主题
估计javascript 最初设计时就基本没考虑好scope问题lambda的一个疑问
Python pandas 是坑不?看了这篇文章关于Javascript Closure就醍醐灌顶了
阅读scala中lambda到底有什么好?
python的scope机制 非常垃圾Help: undefined symbol
抛砖引玉,来谈谈functional programming有python大神吗?紧急求助呀!!谢谢!!!
scala for comprehension 不支持 letfoo = bar if bar else {} 這種語法真的惡心到家
java8 lambda 就是语法糖有每天上班写py的么 会不会疯掉?
谁知道这个嵌套的Python if 是啥意思?mac升级到capitan, python ssl不好使了
相关话题的讨论汇总
话题: python话题: fp话题: foo话题: item话题: br
进入Programming版参与讨论
1 (共1页)
a*****e
发帖数: 1700
1
比如 comprehension!
Python 3.6.3 (default, Oct 3 2017, 07:47:49)
[GCC 6.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> foo=[1,2,3]
>>> bar=(item for item in foo if foo.count(item) > 0)
>>> foo=[2,4,6]
>>> list(bar)
[2]
T*******x
发帖数: 8565
2
这个结果挺奇怪。这个说明了什么?

【在 a*****e 的大作中提到】
: 比如 comprehension!
: Python 3.6.3 (default, Oct 3 2017, 07:47:49)
: [GCC 6.4.0] on linux
: Type "help", "copyright", "credits" or "license" for more information.
: >>> foo=[1,2,3]
: >>> bar=(item for item in foo if foo.count(item) > 0)
: >>> foo=[2,4,6]
: >>> list(bar)
: [2]

s*****V
发帖数: 21731
3
当然都是Python 借来的

【在 a*****e 的大作中提到】
: 比如 comprehension!
: Python 3.6.3 (default, Oct 3 2017, 07:47:49)
: [GCC 6.4.0] on linux
: Type "help", "copyright", "credits" or "license" for more information.
: >>> foo=[1,2,3]
: >>> bar=(item for item in foo if foo.count(item) > 0)
: >>> foo=[2,4,6]
: >>> list(bar)
: [2]

a*****e
发帖数: 1700
4
说明主流语言都可以FP,大家不需要去学习FP语言了!

【在 T*******x 的大作中提到】
: 这个结果挺奇怪。这个说明了什么?
a*****e
发帖数: 1700
5
Python 第一版 91 年到现在,坚持计算得出以上结果不变,也算是求仁得仁了!

【在 s*****V 的大作中提到】
: 当然都是Python 借来的
T*******x
发帖数: 8565
6
哦。我还以为python有什么错误呢。那为什么结果是[2]呢?结果为什么不是[1,2,3]或
[2,4,6]呢?

【在 a*****e 的大作中提到】
: 说明主流语言都可以FP,大家不需要去学习FP语言了!
e*******o
发帖数: 4654
7
哈哈
我觉得 那个 generator 应该记下 foo , 不再允许reassign 直到 generator被耗尽。
python 有很多好处,我发现 err msg 很差。 很多时候,就一个 syntax error。
这种情况,要是距离远,可不好debug。

【在 a*****e 的大作中提到】
: 说明主流语言都可以FP,大家不需要去学习FP语言了!
a*****e
发帖数: 1700
8
... 不逗你了,我都是在说反话。
你给的两种答案都很好,分别是 static scoping 和 dynamic scoping 下运算能得到
的结果。
Python 下能运行成这样,其实就是对 FP 的设计理解错误,使用 generator 出现
nested scope 的情况下把 scoping 弄得不一致。如果说第一个这么设计的人是
蠢,那么二三十年下来都不更正,只能说是坏了。
这就是为什么我们要学习正统 FP 的原因,因为主流语言多半被一群不懂装懂的人把持
,能流行起来是历史原因,而不是什么“存在即合理”。

【在 T*******x 的大作中提到】
: 哦。我还以为python有什么错误呢。那为什么结果是[2]呢?结果为什么不是[1,2,3]或
: [2,4,6]呢?

T*******x
发帖数: 8565
9
哦。我就说有什么问题嘛。但是我又说别着急,先问问看。呵呵。

【在 a*****e 的大作中提到】
: ... 不逗你了,我都是在说反话。
: 你给的两种答案都很好,分别是 static scoping 和 dynamic scoping 下运算能得到
: 的结果。
: Python 下能运行成这样,其实就是对 FP 的设计理解错误,使用 generator 出现
: nested scope 的情况下把 scoping 弄得不一致。如果说第一个这么设计的人是
: 蠢,那么二三十年下来都不更正,只能说是坏了。
: 这就是为什么我们要学习正统 FP 的原因,因为主流语言多半被一群不懂装懂的人把持
: ,能流行起来是历史原因,而不是什么“存在即合理”。

g****t
发帖数: 31659
10
碰见在过去现在未来可能出语法糖的地方
绕着走
多重循环我都不想用
还nest scope呢……
这就是大号goto
至少goto几十年任何语言变化不大
还容易解读


: ... 不逗你了,我都是在说反话。

: 你给的两种答案都很好,分别是 static scoping 和 dynamic scoping
下运算
能得到

: 的结果。

: Python 下能运行成这样,其实就是对 FP 的设计理解错误,使用
generator 出


: nested scope 的情况下把 scoping 弄得不一致。如果说第一个这么设计
的人是

: 蠢,那么二三十年下来都不更正,只能说是坏了。

: 这就是为什么我们要学习正统 FP 的原因,因为主流语言多半被一群不懂
装懂的
人把持

: ,能流行起来是历史原因,而不是什么“存在即合理”。



【在 a*****e 的大作中提到】
: ... 不逗你了,我都是在说反话。
: 你给的两种答案都很好,分别是 static scoping 和 dynamic scoping 下运算能得到
: 的结果。
: Python 下能运行成这样,其实就是对 FP 的设计理解错误,使用 generator 出现
: nested scope 的情况下把 scoping 弄得不一致。如果说第一个这么设计的人是
: 蠢,那么二三十年下来都不更正,只能说是坏了。
: 这就是为什么我们要学习正统 FP 的原因,因为主流语言多半被一群不懂装懂的人把持
: ,能流行起来是历史原因,而不是什么“存在即合理”。

相关主题
scala for comprehension 不支持 letlambda的一个疑问
java8 lambda 就是语法糖看了这篇文章关于Javascript Closure就醍醐灌顶了
谁知道这个嵌套的Python if 是啥意思?lambda到底有什么好?
进入Programming版参与讨论
s*****V
发帖数: 21731
11
这里面dynamic其实比较合适,固化的直接list 就好了。

【在 T*******x 的大作中提到】
: 哦。我就说有什么问题嘛。但是我又说别着急,先问问看。呵呵。
w***g
发帖数: 5958
12
高级黑

【在 a*****e 的大作中提到】
: ... 不逗你了,我都是在说反话。
: 你给的两种答案都很好,分别是 static scoping 和 dynamic scoping 下运算能得到
: 的结果。
: Python 下能运行成这样,其实就是对 FP 的设计理解错误,使用 generator 出现
: nested scope 的情况下把 scoping 弄得不一致。如果说第一个这么设计的人是
: 蠢,那么二三十年下来都不更正,只能说是坏了。
: 这就是为什么我们要学习正统 FP 的原因,因为主流语言多半被一群不懂装懂的人把持
: ,能流行起来是历史原因,而不是什么“存在即合理”。

e****w
发帖数: 1565
13
先不说其他的
python的lamda 就是一坨屎
不仅lamda是屎
closure也做不好
g****t
发帖数: 31659
14
从来只用一层closure
一个条件lambda
完美
目测到我退休不需要因为版本问题改code
我现在连print都不用
自己有几个log函数看中间信息


: 先不说其他的

: python的lamda 就是一坨屎

: 不仅lamda是屎

: closure也做不好



【在 e****w 的大作中提到】
: 先不说其他的
: python的lamda 就是一坨屎
: 不仅lamda是屎
: closure也做不好

r*******n
发帖数: 3020
15
python3 closure还好。
lambda确实不好

【在 e****w 的大作中提到】
: 先不说其他的
: python的lamda 就是一坨屎
: 不仅lamda是屎
: closure也做不好

n******g
发帖数: 2201
16
具体哪里不好?

【在 r*******n 的大作中提到】
: python3 closure还好。
: lambda确实不好

m*****p
发帖数: 39
17
FP程序是不是不方便性能優化?用linux perf那種,都是小函數,cache性能差?
w*****r
发帖数: 197
18
这个例子好,估计一批转码工的生命科学家们又要迷茫了。。。
要是谁能把python的这些坑总结总结登出来,倒是大善事一件

【在 a*****e 的大作中提到】
: 比如 comprehension!
: Python 3.6.3 (default, Oct 3 2017, 07:47:49)
: [GCC 6.4.0] on linux
: Type "help", "copyright", "credits" or "license" for more information.
: >>> foo=[1,2,3]
: >>> bar=(item for item in foo if foo.count(item) > 0)
: >>> foo=[2,4,6]
: >>> list(bar)
: [2]

1 (共1页)
进入Programming版参与讨论
相关主题
mac升级到capitan, python ssl不好使了抛砖引玉,来谈谈functional programming
C++含有指针成员的类scala for comprehension 不支持 let
[合集] 我用pythonjava8 lambda 就是语法糖
我也来一个, quick sort 只要一行。谁知道这个嵌套的Python if 是啥意思?
估计javascript 最初设计时就基本没考虑好scope问题lambda的一个疑问
Python pandas 是坑不?看了这篇文章关于Javascript Closure就醍醐灌顶了
阅读scala中lambda到底有什么好?
python的scope机制 非常垃圾Help: undefined symbol
相关话题的讨论汇总
话题: python话题: fp话题: foo话题: item话题: br