Python的设计错误:yingwang:程序语言的常见设计错误(2) - 试图容纳世界

2013-04-19 19:43:00 +08:00
 banxi1988
我觉得说得挺有道理的,而且我知道这里很多Python高手,转来给大家评评。
http://www.yinwang.org/blog-cn/2013/04/18/language-design-mistake2/

PS:yinwang同学最近博客更新比较多,我是每天都会打开他的主页去看看的。
8739 次点击
所在节点    Python
53 条回复
cassyfar
2013-04-20 06:31:06 +08:00
比喻都是对学术严谨的最大侮辱 这更向一篇科普
我觉得如果yingwang真的有这么多idea,为什么没有做出一些得到业界认可的成果。比较怀疑他的墨水真的有多少,或者太过浮躁了。
hooluupog
2013-04-20 11:06:43 +08:00
说的很有道理。感兴趣的人可以看看http://www.python.org/dev/peps/pep-3117/#id14
skywalker
2013-04-20 12:08:44 +08:00
scheme很好,python不完美,那又怎么样? 语言只是工具,它们产生的原因不是为了完美,而是解决问题,就像菜刀虽然会切到手,但是只要小心点还是很好用的。 python这个不完美的工具所创造的东西比scheme要多得多,王垠要真像证明scheme比其它语言强大,不妨写个实际的东西出来。
hooluupog
2013-04-20 12:34:29 +08:00
我觉得王垠一个劲的夸scheme是有私心的。1.他的导师是《The Little Schemer》的作者,对scheme爱屋及乌;2.他是研究编译器的,所以他所说的东西都是站在一个底层编译器,解释器的设计者的角度去谈语言的。刚才看了篇http://coding.smashingmagazine.com/2013/04/18/introduction-to-programming-type-systems/(hacker news上的一篇)文章,这里面又涉及到静态vs动态,强类型vs弱类型等等历史争论,不是三言两语说的清的。但那篇文章的结论很好:Dynamically typed languages are popular now. The pendulum will swing back and forth many times in the coming years. The only solution is flexibility. Learn to work in each environment and you’ll work well with any team.
kavinyao
2013-04-20 12:35:29 +08:00
@hooluupog Are you serious?
hit9
2013-04-20 15:08:05 +08:00
@reorx 哈,又看到你了.
burnex
2013-04-20 15:13:52 +08:00
w
reorx
2013-04-20 15:46:58 +08:00
@hit9 \( ̄▽ ̄)
venglide
2013-04-20 16:46:46 +08:00
show me the code?我可不觉得语言设计层面的东西是show了code大家就都能明白的了(先不管正确与否),如果某个具体场景或算法什么的来点代码或许大家还能有点头绪。不要把show me the code当板蓝根用好不。
——难得的吐槽
feiandxs
2013-04-20 18:18:08 +08:00
对绝大部分用python都写不出个像样的架构合理的错误极少的项目的人来说,参与讨论语言设计方面的东西基本也可以类比成白菜命白粉心。
aisk
2013-04-20 18:39:13 +08:00
垠神这种学院派哪里知道我等码农的辛苦,我们为了开发效率宁愿留着这些语言dirty的地方。
perrywky
2013-04-20 21:34:01 +08:00
他说的这个问题可以通过良好的架构设计来避免,根本就不是什么大问题
再好的语言配上垃圾的架构设计一样漏洞百出
如何在代码不断膨胀的情况下依然维持一个良好的架构,考验的是你的耐心和技巧,和你用什么语言一毛钱关系都没有
e1443367
2013-04-20 21:40:43 +08:00
+ + + +
RisingV
2013-04-22 13:51:35 +08:00
就事论事就行了,针对问题讨论问题。景德镇居民的特点就是说着说着就扯到人了,进而因为捍卫自己对问题的立场而去质疑人的品格和能力。问题还是那个问题,无论是谁提出来的。这才是基本的治学态度。
zaeneas
2013-04-22 14:31:41 +08:00
我倒是觉得这像是在说类型检查或者说静态语言和动态语言之争

如黑客与画家提到了,某些程序元不喜欢程序去限制他们的自由,于是他们偏好于动态语言;但是还有一些觉得应该有很多的类型检查之类防止程序猿犯错,所以他们偏好于静态语言或者有类型的语言
oldcai
2013-04-22 19:01:26 +08:00
@clino 原来你也不喜欢钱啊,我看到php里面的$就烦。
venglide
2013-04-28 13:43:23 +08:00
binux
2013-04-28 13:53:26 +08:00
@venglide 有一天,觉得原来的代码风格太烂了,决定重新调整一下,commit之后发现,干什么都没变
nullptr404
2013-04-28 14:04:12 +08:00
@zuroc 他有github账号的https://github.com/yinwang0 那个ydiff写的很有水平
nullptr404
2013-04-28 14:24:02 +08:00
@clino scheme是非常简单,纯粹和美的语言。racket的库非常丰富,开发各种类型的应用都没有问题。
@clino 所谓的“可读性”差只是相对个人经历而言的,如果你一开始就从lisp入门,没准觉得C语言可读性差呢。

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

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

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

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

© 2021 V2EX