d******3 发帖数: 70 | 1 有人说,动态语言的程序可以写得很简洁。可是Haskell几乎把简洁发挥到了极致了,
仍然是静态。
有人说,动态语言开发时不用考虑type,所以开发很快。可是没有typing更容易出bug
,debug的时间增加了呀。
有人说,type checking的功能可以用unit test来弥补。但compile time error不是比
runtime error更好吗。unit test总归有纰漏的地方吧。
有人说,动态语言简单,连小孩都能学。这个基本同意,可对我们不适用呀。
有人说,动态语言适合小型项目。可你总不能老是做小型呀。一步到位不好么。
有动态语言的fans给解释解释,为啥喜欢动态吗? |
w****k 发帖数: 6244 | 2 可以很方便的试函数或者一小段code snipet
试验正确了,再加到正式代码里
所以开发的确快很多
bug
【在 d******3 的大作中提到】 : 有人说,动态语言的程序可以写得很简洁。可是Haskell几乎把简洁发挥到了极致了, : 仍然是静态。 : 有人说,动态语言开发时不用考虑type,所以开发很快。可是没有typing更容易出bug : ,debug的时间增加了呀。 : 有人说,type checking的功能可以用unit test来弥补。但compile time error不是比 : runtime error更好吗。unit test总归有纰漏的地方吧。 : 有人说,动态语言简单,连小孩都能学。这个基本同意,可对我们不适用呀。 : 有人说,动态语言适合小型项目。可你总不能老是做小型呀。一步到位不好么。 : 有动态语言的fans给解释解释,为啥喜欢动态吗?
|
d******3 发帖数: 70 | 3 这个算是FP的优点吧。Scala和Haskell都可以的。Python要是变成OOP的话,试一小段
code snipet也是会变得困难的。
【在 w****k 的大作中提到】 : 可以很方便的试函数或者一小段code snipet : 试验正确了,再加到正式代码里 : 所以开发的确快很多 : : bug
|
p*****2 发帖数: 21240 | |
r*******n 发帖数: 3020 | 5 动态语言的一个好处就类似于“即插即用”
bug
【在 d******3 的大作中提到】 : 有人说,动态语言的程序可以写得很简洁。可是Haskell几乎把简洁发挥到了极致了, : 仍然是静态。 : 有人说,动态语言开发时不用考虑type,所以开发很快。可是没有typing更容易出bug : ,debug的时间增加了呀。 : 有人说,type checking的功能可以用unit test来弥补。但compile time error不是比 : runtime error更好吗。unit test总归有纰漏的地方吧。 : 有人说,动态语言简单,连小孩都能学。这个基本同意,可对我们不适用呀。 : 有人说,动态语言适合小型项目。可你总不能老是做小型呀。一步到位不好么。 : 有动态语言的fans给解释解释,为啥喜欢动态吗?
|
g*****g 发帖数: 34805 | 6 用来写脚本还挺好的。
bug
【在 d******3 的大作中提到】 : 有人说,动态语言的程序可以写得很简洁。可是Haskell几乎把简洁发挥到了极致了, : 仍然是静态。 : 有人说,动态语言开发时不用考虑type,所以开发很快。可是没有typing更容易出bug : ,debug的时间增加了呀。 : 有人说,type checking的功能可以用unit test来弥补。但compile time error不是比 : runtime error更好吗。unit test总归有纰漏的地方吧。 : 有人说,动态语言简单,连小孩都能学。这个基本同意,可对我们不适用呀。 : 有人说,动态语言适合小型项目。可你总不能老是做小型呀。一步到位不好么。 : 有动态语言的fans给解释解释,为啥喜欢动态吗?
|
d******3 发帖数: 70 | 7 用过python和Tcl,不喜欢。
【在 p*****2 的大作中提到】 : 你自己用用不就知道了吗?不要瞎猜了。
|
d******3 发帖数: 70 | 8 这也是FP的优点吧。 一个Object一旦有了state,就不怎么“即插即用”了。你总得把
state都先设好才能用吧?纯粹的FP是很“即插即用”的。
【在 r*******n 的大作中提到】 : 动态语言的一个好处就类似于“即插即用” : : bug
|
d******3 发帖数: 70 | 9 这个我同意。如果结论是:动态语言 == 脚本语言,会不会有人拍砖过来...
【在 g*****g 的大作中提到】 : 用来写脚本还挺好的。 : : bug
|
g*****g 发帖数: 34805 | 10 谁敢说不是,php,Python, Ruby, Groovy, Clojure。用得最多的范畴统统是web前端。
所谓的web scripting。这些语言同样多见于用来替代shell script,以及build
system。
【在 d******3 的大作中提到】 : 这个我同意。如果结论是:动态语言 == 脚本语言,会不会有人拍砖过来...
|
|
|
c****e 发帖数: 1453 | 11 1. no schema/less schema -> faster iteration, less code.
People spend too much time on designing, versioning and coding on schemas.
2. FP features make coding more directly on data, rather than the OOP
paradigm, where overhead is more significant.
3. Seamless integration with scripting makes system more versatile and
customizable. Not everyone is a guru and can write a parser for DSL(domain
specific language). I have met very few people that is capable to play with
Lex&YACC, Bison or ANTLR, even boost::spirit.
In general, my personal experience is that dynamic languages allow you to "
do" thing directly, rather than "OK, let's design it first".
If there are lots of business logics and the spec is written in a clear way,
the old way still rules, as tooling is much better and quality is easier to
control/enforce. |
g*****g 发帖数: 34805 | 12 A huge issue on dynamic-type language is performance. None of them can be in
the same order of magnitude of C. Make them not suitable for many jobs.
with
【在 c****e 的大作中提到】 : 1. no schema/less schema -> faster iteration, less code. : People spend too much time on designing, versioning and coding on schemas. : 2. FP features make coding more directly on data, rather than the OOP : paradigm, where overhead is more significant. : 3. Seamless integration with scripting makes system more versatile and : customizable. Not everyone is a guru and can write a parser for DSL(domain : specific language). I have met very few people that is capable to play with : Lex&YACC, Bison or ANTLR, even boost::spirit. : In general, my personal experience is that dynamic languages allow you to " : do" thing directly, rather than "OK, let's design it first".
|
l*****t 发帖数: 2019 | 13 不是喜不喜欢。历史原因,dynamic typed 语言非常符合冯诺亿曼体系的设计,这个也
是非常自然的。当然问题就也会很多,然后FP兴起就是补这个问题。我说FP的十几,二
十年前的事,现在的再次兴起是另有原因。
bug
【在 d******3 的大作中提到】 : 有人说,动态语言的程序可以写得很简洁。可是Haskell几乎把简洁发挥到了极致了, : 仍然是静态。 : 有人说,动态语言开发时不用考虑type,所以开发很快。可是没有typing更容易出bug : ,debug的时间增加了呀。 : 有人说,type checking的功能可以用unit test来弥补。但compile time error不是比 : runtime error更好吗。unit test总归有纰漏的地方吧。 : 有人说,动态语言简单,连小孩都能学。这个基本同意,可对我们不适用呀。 : 有人说,动态语言适合小型项目。可你总不能老是做小型呀。一步到位不好么。 : 有动态语言的fans给解释解释,为啥喜欢动态吗?
|
z*******3 发帖数: 13709 | 14 写起来快,但是运行起来,慢的一笔
所以适合一次性运行就丢掉的时候
比如用来写启动脚本,再慢又怎样?一个月也就能跑两次 |
z*******3 发帖数: 13709 | 15 优化起来处处受限
随着类库的增长,这个开销居然还是同步增加的
越大越痛苦,小范围内使用不是问题,比如只做web
但是要放宽到所有领域,那还是不行
【在 l*****t 的大作中提到】 : 不是喜不喜欢。历史原因,dynamic typed 语言非常符合冯诺亿曼体系的设计,这个也 : 是非常自然的。当然问题就也会很多,然后FP兴起就是补这个问题。我说FP的十几,二 : 十年前的事,现在的再次兴起是另有原因。 : : bug
|
l*******G 发帖数: 1191 | 16 the cs guys are pathetic, they trashed fortran,pascal etc fp long ago
rooting for oop, and now they are going backwards and reinventing the wheel
of fp. they should not have abandoned fp in the first place. now anyone
crazy on fp is a loser, because there is nothing new under the sun. |
g*****g 发帖数: 34805 | 17 Calm down, FP may rise a bit in recent years, but none of them are even
mainstream. Objective C is the only rising star in recent years.
Ecosystem is the key, not the language.
wheel
【在 l*******G 的大作中提到】 : the cs guys are pathetic, they trashed fortran,pascal etc fp long ago : rooting for oop, and now they are going backwards and reinventing the wheel : of fp. they should not have abandoned fp in the first place. now anyone : crazy on fp is a loser, because there is nothing new under the sun.
|