js 党可以吐槽一下 Python 吗

2017-09-12 00:49:17 +08:00
 sensui7

缩进真的不习惯, map 返回的竟然是一个迭代器, 也许这就是大佬吧, 匿名函数 还要写 lambda 这么长的单词, 列表的长度还要用 len 函数而不是 len 属性, 您的列表到底是不是对象呢? 要不是对象您的 append 方法又是怎么回事? 我大 js

js:
arr.map(x => x*2)
python:
list(map(lambda x: x*2, arr))

非引战, python 的优点就是生态环境, 我也是看中这点...

19591 次点击
所在节点    Python
156 条回复
bramblex
2017-09-12 14:16:49 +08:00
说个笑话,C 是强类型语言。呵呵
fhefh
2017-09-12 14:19:23 +08:00
正在逐渐逃离 js 向 php、python 靠拢~~~
bramblex
2017-09-12 14:19:30 +08:00
@lrxiao

以及,你家 Haskell 和 python 只有缩进一样?而且 python Lazy 你逗我?
bramblex
2017-09-12 14:23:44 +08:00
@lrxiao

举个简单例子,列表推导。为什么 Haskell 能有列表推导?因为有 List Monad 啊,把 List Monad 是列表推导的理论基础啊。你 Python 没 List Monad 你的列表推导怎么出来的?强行抄一个实现一个语法糖而已。
edwardpro
2017-09-12 14:31:24 +08:00
要写大括号的语言都是异类!
bramblex
2017-09-12 14:32:18 +08:00
@lrxiao 以及最后,各个语言相互借鉴优秀的地方本是无可厚非的,我那句 python 抄 haskell 不过是恢复前面某 xx 说 es6 抄 python 的言论而已。
ryuzaki113
2017-09-12 14:33:30 +08:00
@lovestudykid 标号多难看,不如用彩色笔给括号着色
ioth
2017-09-12 14:36:43 +08:00
js
php
c 的痕迹太重
lz 等们,没学过 c 吧
早期不是 c,就是 pascal,当然 fortran(basic)、cobol 都有个性
java 不过是脑子没转过来的 c++
ivechan
2017-09-12 14:52:22 +08:00
python 早就不鼓励用 reduce, map 这些了吧, 心疼你们这些用劣质教材的。
ssxn58
2017-09-12 15:08:12 +08:00
管他 C 是什么强类型弱类型,我只认指针,想指哪里指哪里,用起来爽极了
Keyes
2017-09-12 15:13:22 +08:00
@bramblex 好战力,以理服人!
Keyes
2017-09-12 15:28:28 +08:00
@ioth 唔嗯当年老大让写个简单的论坛,让用 PHP 写,还一脸懵逼,直到看见语法,“哦~原来 PHP 就是 C 变量前面加个$”,hhhhhhh
66beta
2017-09-12 15:32:36 +08:00
打工是不可能打工的,只好写 JS 混饭吃啦
lrxiao
2017-09-12 15:46:33 +08:00
@bramblex
我说 map 这几个 lazy
C 强类型怎么就笑话了 UB 写习惯了而已
Monad 首先是个数学概念
instance Monad [] 和这个 comprehension 糖只有[|...]后面一半 do-notation 的糖关系
还只是[]的糖不能用在其他 Traversable 上
py 还可以用 for-in 语法搞搞 generator/iterator 的 list comprehension 当然 python 后面这个语法太残了 不如 do-notation 灵活
lrxiao
2017-09-12 15:48:09 +08:00
list comprehension 的理论基础= = 那不就是个集合定义式吗 还 Monad Monad 只要求了态射的幺元和结合律
lrxiao
2017-09-12 15:49:47 +08:00
不过 py 也用不着后面跟一大坨..不是 Hs 那种严苛的纯 FP 存个 VM 里的状态无所谓
ty89
2017-09-12 15:51:28 +08:00
说句不该说的,如果你连
“配置编辑器让它在编辑 py 文件的时候,换行自动缩紧 4 个空格”
都搞不定的话

还做程序员干什么?卖红薯多好
Miy4mori
2017-09-12 15:54:58 +08:00
@kenshinji 那怕是不写代码才不会累哦
lrxiao
2017-09-12 16:00:38 +08:00
@lrxiao 说错了 这个是 Category 定义 Functor 是把 Category 作为 obj fmap 作为态射的 Category Monad 是 Endofunctor ( Hask 范畴里的所有 Functor 都是 Endofunctor Hask->Hask ) 上定义 Monoid 单位元 Id functor Endofunctor 组合为 Compose 或者说能实现 join :: F (F a) -> F a
ashin
2017-09-12 16:56:49 +08:00
尽管吐槽,反正 php 才是最好的语言

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/389926

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX