论坛首页 综合技术论坛

古老,但很神奇

浏览 18967 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-07-12  
Trustno1 写道
ray_linn 写道
从代码长度来说明一种语言的优劣毫无意义
 

====>>>>>

ray_linn 写道
文章中并没有说明,所以这文章有何意义??


????????




没啥好?????


你的第一个引用:这个例子本身就是比较偏向FP的例子,如果是我说的Object系列化成XML (偏向C#),那lisp肯定占不了优势,语言都是有它的使用范围,代码长度说明不了什么---》这文章无意义。


第二个引用:假使真的要比较长度,那就不要用到内置函数和宏,从原生语言开始比起吧,文章根本无法证明这点---》这文章无意义。
0 请登录后投票
   发表时间:2007-07-12  
ray_linn 写道

你的第一个引用:这个例子本身就是比较偏向FP的例子,......,语言都是有它的使用范围,代码长度说明不了什么---》这文章无意义。

问题是,这篇文章难道不是就在说FP适合什么,java/c不适合什么.
有说FP一切都比java/c强么?



引用
假使真的要比较长度,那就不要用到内置函数和宏,从原生语言开始比起吧,文章根本无法证明这点


引用
如果是我说的Object系列化成XML (偏向C#),那lisp肯定占不了优势

既然你说别人没有证明他的观点所以他无意义,那么你的上面那个观点有没有证明?是不是也是无意义的?


0 请登录后投票
   发表时间:2007-07-12  
To ray_linn:
意义在于引起你的兴趣。既然你看问题看地如此“清楚”,觉得“特别没意义”,那我也不说什么了。反正上帝只关心他自己的选民,SICP 只需要它自己的教徒。我不会在这儿把书中实现这些内置函数和宏的几行代码都抄过来,而且我也不指望所有看了这篇文章的人都能就此更新一下思想。
以上是我写这篇文章的一些想法。不知道我的话又触动了 ray_linn 哪根神经了。

PS: 不要企图以“那就不要用到内置函数和宏,从原生语言开始比起吧”之类的话来评判 Lisp。FP 不会一切强于命令式语言,但从语言语义角度来说,使用抽象语法的语言是完全自足的,语义与图灵机也是等价的——所以请不要拿鸡蛋砸石头

引用
如果是我说的Object系列化成XML (偏向C#),那lisp肯定占不了优势

这就是“拿鸡蛋砸石头”的一个例子。看看这个:为什么是 XML 而不是 Lisp?!
0 请登录后投票
   发表时间:2007-07-12  
Lich_Ray 写道
To ray_linn:
意义在于引起你的兴趣。既然你看问题看地如此“清楚”,觉得“特别没意义”,那我也不说什么了。反正上帝只关心他自己的选民,SICP 只需要它自己的教徒。我不会在这儿把书中实现这些内置函数和宏的几行代码都抄过来,而且我也不指望所有看了这篇文章的人都能就此更新一下思想。
以上是我写这篇文章的一些想法。不知道我的话又触动了 ray_linn 哪根神经了。

PS: 不要企图以“那就不要用到内置函数和宏,从原生语言开始比起吧”之类的话来评判 Lisp。FP 不会一切强于命令式语言,但从语言语义角度来说,使用抽象语法的语言是完全自足的,语义与图灵机也是等价的——所以请不要拿鸡蛋砸石头

引用
如果是我说的Object系列化成XML (偏向C#),那lisp肯定占不了优势

这就是“拿鸡蛋砸石头”的一个例子。看看这个:为什么是 XML 而不是 Lisp?!


我觉得呢,你推广lisp,fp是好的.不过要分清两种目的,是纯粹的理论学习还是在现实中寻求某些应用.理论学习在空余的时候大家讨论讨论增广一点见识扩展一下思维,锻炼一下脑子是非常有趣而优雅的事情,不必要做的那么你死我活针锋相对.
寻求某些应用,光推纯粹的FP语言效果并不好,lisp乃至大多数FP语言在那么长的时间里不为大家所闻也是有他们自身内在缺陷的.但是我们也要看到好的一面,现在ruby python动态语言广泛传播开来FP的很多特性也在这些语言里面大放光彩,甚至C#3这些静态语言也有lambda.要从应用推广FP,在这方面入手,去发掘FP特性在系统架构设计上的优势,没有这些特性的时候我们怎么设计,我们有了这些特性以后又怎么设计?.甚至你也可以分析这些语言在FP特性实现上的不足,然后假设性去分析如果为这些语言扩展某些不具备的FP特性,能不能达到更好的效果?如果可以,自己又如何去实现他们?

相对对你在圈子上的那句话,我觉得还是Alan Kay说的更好"The best way to predict the future is to invent it"


0 请登录后投票
   发表时间:2007-07-13  
话说眼看这 FP 和 lambda 演算大行其道,命令式语言和图灵机已经快和微软一样成为腐朽没落的代表了呀。嗯嗯,看来是该考虑写一篇“帝国反击战:命令式语言和图灵机的逆袭”了 ……

0 请登录后投票
   发表时间:2007-07-13  
Elminster 写道
话说眼看这 FP 和 lambda 演算大行其道,命令式语言和图灵机已经快和微软一样成为腐朽没落的代表了呀。嗯嗯,看来是该考虑写一篇“帝国反击战:命令式语言和图灵机的逆袭”了 ……


未....未可的亚.Fp是IT界的凉宫春日亚.在你那无耻的逆袭到来之前,你便会被它那在众人面前盛氣凌人,兩人獨處的時嬌羞可人的傲娇的萌性所一击萌杀.所以你这没有领悟到高层次萌道的劣者觉悟吧.口瓦口哈口哈,萌就是王道,可爱就是正义.
0 请登录后投票
   发表时间:2007-07-13  
Lich_Ray 写道
To ray_linn:
意义在于引起你的兴趣。既然你看问题看地如此“清楚”,觉得“特别没意义”,那我也不说什么了。反正上帝只关心他自己的选民,SICP 只需要它自己的教徒。我不会在这儿把书中实现这些内置函数和宏的几行代码都抄过来,而且我也不指望所有看了这篇文章的人都能就此更新一下思想。
以上是我写这篇文章的一些想法。不知道我的话又触动了 ray_linn 哪根神经了。

PS: 不要企图以“那就不要用到内置函数和宏,从原生语言开始比起吧”之类的话来评判 Lisp。FP 不会一切强于命令式语言,但从语言语义角度来说,使用抽象语法的语言是完全自足的,语义与图灵机也是等价的——所以请不要拿鸡蛋砸石头

引用
如果是我说的Object系列化成XML (偏向C#),那lisp肯定占不了优势

这就是“拿鸡蛋砸石头”的一个例子。看看这个:为什么是 XML 而不是 Lisp?!



要让人感兴趣,就麻烦写出点有真材料的文章。文章写的不好,难道还不许别人指摘吗???

第一,这篇文章无非是仿效天极网中“殊途同归, 四个程序员的一天”写出来的,也不算是什么原创了。

第二,你的代码明天有问题,为什么要让C C++ java去定义它们的链表,你的Lisp却直接使用list,在java中我直接使用ArrayList,你的java代码要少多少行?

第三,你文章中明显以程序长短来做评判,而中间却用了这么多偷步的方法,我已经证明,在同样条件下,java, C# ,C++也都是一行就搞定。从而你文章后面的结论:这个题目其实对于任何函数式编程语言来说都是一两句话,是正确的,还是误导的?


第四,要单纯论证FP的好处,还不如去讨论C# 3.0中的FP特性,为什么要在oop中引入FP。
0 请登录后投票
   发表时间:2007-07-13  
Trustno1 写道

问题是,这篇文章难道不是就在说FP适合什么,java/c不适合什么.
有说FP一切都比java/c强么?



错。这篇文章根本没有说到重点,FP适合什么,java和C不适合什么,正如我说的假如java和C#都有一个内置的tail方法,那么java和C#的长度就和FP一样精炼,所以我举个反例,C#有个XmlSerilizae的方法,在处理XML自然比lisp精炼,从这篇文章里,我是不是只可以得出lisp的优点在于有list-tail函数? 甚至C#根本也不需要那个tail函数,看我的代码,是不是也完全实现了,甚至还可以用delegate替换掉Math.Sqrt.

foreach(int i in list.GetRange(list.Length-4,4)) Math.Sqrt(i);


一个完全不恰当的例子,怎么能说明FP适合什么,java不适合什么,这不是误人子弟么?

这篇文章比“殊途同归,四个程序员的一天”要差,那篇文章用的运算符重载的例子来说明FP里一切都是函数。


我只证明他的结论是错的,这就够了,一篇文章结论是错误的,就没什么好说的。请仔细读一下他自己写的结论:

这个题目其实对于任何函数式编程语言来说都是一两句话。
0 请登录后投票
   发表时间:2007-07-13  
ray_linn 写道
Trustno1 写道

问题是,这篇文章难道不是就在说FP适合什么,java/c不适合什么.
有说FP一切都比java/c强么?



错。这篇文章根本没有说到重点,FP适合什么,java和C不适合什么,正如我说的假如java和C#都有一个内置的tail方法,那么java和C#的长度就和FP一样精炼,所以我举个反例,C#有个XmlSerilizae的方法,在处理XML自然比lisp精炼,从这篇文章里,我是不是只可以得出lisp的优点在于有list-tail函数?

我只证明他的结论是错的,这就够了,一篇文章结论是错误的,就没什么好说的。请仔细读一下他自己写的结论:



问题是你的证明在那里呢?你说tail的C# lisp的内置实现作者没有详细的论证所以说作者提出的观点和例子都是错误的.那么请看你现在提出在上XmlSerilizaeC#要比Lisp精炼.请问你这个结论有没有详细的证明过?你不同样抛出了一个没有证明的反例?



0 请登录后投票
   发表时间:2007-07-13  
Trustno1 写道
ray_linn 写道
Trustno1 写道

问题是,这篇文章难道不是就在说FP适合什么,java/c不适合什么.
有说FP一切都比java/c强么?



错。这篇文章根本没有说到重点,FP适合什么,java和C不适合什么,正如我说的假如java和C#都有一个内置的tail方法,那么java和C#的长度就和FP一样精炼,所以我举个反例,C#有个XmlSerilizae的方法,在处理XML自然比lisp精炼,从这篇文章里,我是不是只可以得出lisp的优点在于有list-tail函数?

我只证明他的结论是错的,这就够了,一篇文章结论是错误的,就没什么好说的。请仔细读一下他自己写的结论:



问题是你的证明在那里呢?你说tail的C# lisp的内置实现作者没有详细的论证所以说作者提出的观点和例子都是错误的.那么请看你现在提出在上XmlSerilizaeC#要比Lisp精炼.请问你这个结论有没有详细的证明过?你不同样抛出了一个没有证明的反例?




我只证明他的例子不恰当,我并不想说C#比lisp高级,请你注意,不要在话题在引入到无意义的逻辑学纠缠里去。

我认为我已经对这篇文章做了适当的批判,能读完文章的人自然自己能有所取舍,和你的纠缠已经毫无意义了。
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics