论坛首页 编程语言技术论坛

ajoo牛的Jaskell和ruby相比,有什么有缺点呢?

浏览 6089 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-08-18  
这个问题超级外行。主要是看了Jaskell的介绍,觉得她有一些ruby的特点。a lazy functional scripting language for Java. 很有吸引力呀。学习了一点ruby后,开始对scripting语言感兴趣了。ajoo或者其他大牛能对比着介绍一下最好。
   发表时间:2006-08-18  
javavsnet 写道
这个问题超级外行。主要是看了Jaskell的介绍,觉得她有一些ruby的特点。a lazy functional scripting language for Java. 很有吸引力呀。学习了一点ruby后,开始对scripting语言感兴趣了。ajoo或者其他大牛能对比着介绍一下最好。


一个是用Java写的,一个是用C写的、
0 请登录后投票
   发表时间:2006-08-18  
ajoo牛的jaskell是haskell到java的移植。
正如jython是python到java的移植, jruby是ruby到java的移植。

要比,也要haskell 和 ruby 比。
这两者怎么比呢?几乎不具有可比性。
haskell是静态类型,ruby是动态类型。两者都是强类型。
haskell是学术语言,ruby是工作语言。
.... 都想不出来有啥可比的。
0 请登录后投票
   发表时间:2006-08-19  
buaawhl 写道
ajoo牛的jaskell是haskell到java的移植。
正如jython是python到java的移植, jruby是ruby到java的移植。

要比,也要haskell 和 ruby 比。
这两者怎么比呢?几乎不具有可比性。
haskell是静态类型,ruby是动态类型。两者都是强类型。
haskell是学术语言,ruby是工作语言。
.... 都想不出来有啥可比的。

jaskell不是haskell的完整移植巴?我看见很多haskell里没有的东西如method missing, mixin。我应该是ajoo参考haskell创造的一个方言。
0 请登录后投票
   发表时间:2006-08-19  
首先,ajoo虽然不算菜鸟,牛是算不上的。

jaskell不是静态类型,这点上是和haskell最大的区别。

和ruby的区别么,有一点,jaskell只能由java解释执行,ruby应该可以编译的吧?

ruby的closure是"{a,b|...}"这种语法,而jaskell是haskell的语法"\a b->..."。

另外一个最大的差别:
jaskell是不鼓励副作用的,赋值很麻烦,(需要
let var = jaskell.prelude.ref 1; var.set 2;end)

所以需要做imperative style scripting的当然ruby最合适。


jaskell因为支持pattern match,monad,对声明式编程和高阶函数编程比较友好。

ruby语言本身有class,而jaskell没有这个概念。你可以用tuple(就是一个hashtable)来模拟class。

其实,jaskell的关键字非常非常少,肯定比ruby少,只有let, end, where, if, then, else, and, or。没了。它追求的是短小,简洁,灵活(和c的宗旨有点象,力求尽量多的东西用库而不是语言解决)

当然,并不是说关键字少就好。



不知道jruby如何,反正jaskell跑在jvm里面,和java的结合比较容易。
0 请登录后投票
   发表时间:2006-08-19  
Haskell是什么,主页上说
引用
Haskell is a general purpose, purely functional programming language.


挑个大众玩意来比的话,应该先想到lisp,还有什么?python算吗?
0 请登录后投票
   发表时间:2006-08-20  
sevenbamboos 写道
Haskell是什么,主页上说
引用
Haskell is a general purpose, purely functional programming language.


挑个大众玩意来比的话,应该先想到lisp,还有什么?python算吗?

这能比出什么来?
0 请登录后投票
   发表时间:2006-08-20  
cookoo 写道
sevenbamboos 写道
Haskell是什么,主页上说
引用
Haskell is a general purpose, purely functional programming language.


挑个大众玩意来比的话,应该先想到lisp,还有什么?python算吗?

这能比出什么来?


问得好
0 请登录后投票
论坛首页 编程语言技术版

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