InfoQ

技术访谈

郑晔谈Ruby on JVM和XRuby

受访人 熊节 发布于 2007年8月9日 下午8时38分

社区
Ruby,
Java
主题
Ruby on Rails,
JRuby
标签
XRuby,
JRuby,
开源软件
概要
在这个视频采访中,InfoQ中文站的社区编辑熊节和开源项目XRuby的核心开发成员郑晔谈到了在Java平台上支持Ruby的具体考虑、Ruby在JVM上的执行效率、编译和解释代码的区别以及XRuby项目的发起和目标等话题。另外采访还涉及到XRuby对Rails的支持、JRuby和XRuby项目的融合等。

个人简介
郑晔,ThoughtWorks中国公司咨询师,开源项目XRuby核心成员,目前正致力于让Ruby更好地运行于JVM平台。他的Blog为:http://dreamhead.blogbus.com/
我们请今天被采访的对象郑晔来做一个简单的自我介绍,郑晔你今天为什么坐在这里?
对,你提到一个词Ruby on JVM,那我首先想了解一下,什么是Ruby on JVM,或者说为什么我们要把Ruby放在JVM上去运行?
我觉得有意思的反而是另外一方向,既然Java已经是一个成熟的平台,为什么Java的开发者要来关心Ruby呢?他们完全可以在他们自己的世界里活的很好?
那么你能不能具体介绍一下这样做能够带来哪些好处呢?
听起来就像是把一个Rails的运用打成一个War包放到J2EE的服务器上?
如果我们要把Ruby放到JVM上运行的话,做这件事情的方法有哪几种?你们现在看到的?
你刚才提到的两种实现Ruby on JVM的做法——编译和解释,作为我不是计算机专业出身的程序员,我对这两种方式了解的还不够深入,你能不能解释一下它们的主要差别在什么地方?
JRuby是采用解释的方式实现的吗?
对于这部分我有两个问题,第一个问题就是JRuby是不是在性能上遇到了严重的问题,以至于它们现在要去考虑编译的这条路?
对于你刚才所说的性能不好,你能不能举出例子或者说数据,来给大家讲一下,它到底不好到什么程度?
你能不能做一个横向的比较,告诉我们你刚才所说的性能差到底是一个什么情况?
现在所做的优化,你看到它起到什么明显的效果了吗?
XRuby取得这么明显的进步,你想不想介绍一个这个XRuby中间的一些细节的东西?
XRuby这个项目它是怎么发起的呢?现在的团队有多少成员在里面?
现在XRuby它的目标是什么?
既然大家有很多人是因为Rails而了解Ruby的,那么我想XRuby一个比较近的目标就是支持Rails?
现在XRuby进展到什么地方了?
据我所知,Rails的框架设计里面用到了很多的Ruby特有的语法,那么XRuby在支持这些语法的时候有没有遇到困难?
你提到静态语言和动态语言的不同,那么,我希望你从更加技术的角度来解释一下,这个不同到底是一种本质性的冲突还是一些细节的问题,解决它的难度究竟有多大?
另外一个问题是,Ruby的程序里面,大量地会用到本地扩展,这些很多是用C来编写的,那么XRuby或者说其它的Ruby on JVM的实现怎么解决这个问题?
XRuby和JRuby在我听起来,都在开始做编译器方面的工作,你不觉得这是一种重复发明轮子的工作吗?为什么你们没有把这个工作合并起来?
现在在.NET平台上也有实现Ruby的计划,包括Ruby CLR,Ruby.NET,那你觉得,这所有的这些项目,它们会不会在未来共同抽取一些通用的东西?
那我很好奇,开发一个编译器是不是一件很酷的事情?现在你做的事情里边,有什么很酷的想跟我们分享一下?
现在你们这个项目正在进行的工作主要包括哪些方面?如果说一个人有兴趣参与的话,它能在哪些方面做出贡献?
在最后我想请你用简单的一句话,送给所有关心XRuby或者对它感兴趣的这些观众?
show all  show all

相关赞助商

InfoQ中文站Ruby社区,面向Web和企业开发的Ruby,主要关注Ruby on Rails,通过新闻、文章、视频访谈和演讲以及迷你书等为中国Ruby社区提供一流资讯。

11 条回复

回复

太卡 发表人 qi xiang 发表于 2007年8月12日 上午8时5分
Re: 太卡 发表人 Jason Lai 发表于 2007年8月12日 下午9时34分
Re: 太卡 发表人 Jack Wang 发表于 2007年8月13日 上午5时49分
Re: 太卡 发表人 sj zhang 发表于 2007年8月16日 上午1时39分
老兄别来无恙 发表人 Shayne Yuan 发表于 2007年8月13日 下午7时33分
r 发表人 ray Li 发表于 2007年8月15日 上午12时1分
感谢郑晔! 发表人 Jin Xiangdong 发表于 2007年8月16日 上午2时6分
一个拼写错误 发表人 BaoZhen Cao 发表于 2007年8月27日 上午5时2分
郑大人加油 !! 发表人 Yu Su 发表于 2007年9月4日 上午1时36分
我在移动,卡死。 发表人 静波 曲 发表于 2007年9月5日 下午8时51分
XRuby加油! 发表人 Jerome Chen 发表于 2007年11月29日 上午12时53分
  1. 返回顶部

    太卡

    2007年8月12日 上午8时5分 发表人 qi xiang

    播放太不流畅了,几乎没法看! infoQ英文如此,中文还是如此!

  2. 返回顶部

    Re: 太卡

    2007年8月12日 下午9时34分 发表人 Jason Lai

    不知道楼上的朋友用的是什么样的上网线路呢?我在网通和电信观看这个视频的效果都是很好的。我们的视频是根据在512k ADSL的带宽情况下播放而优化的;另外,为我们提供视频流服务的提供商,在上海是有服务器集群的,因此可以尽可能的避免走国际带宽的传输瓶颈。 不过,会出现播放不流畅现象,我觉得跟时间段有关系,根据我在以前观看主站视频的经验,在早晨和下午效果一般比较好,晚上可能会稍差些。

  3. 返回顶部

    Re: 太卡

    2007年8月13日 上午5时49分 发表人 Jack Wang

    我就是用512k的ADSL看得,非常流畅,而且也很清晰,当然,如果提供下载地话就更好了

  4. 返回顶部

    老兄别来无恙

    2007年8月13日 下午7时33分 发表人 Shayne Yuan

    还是这么能侃,面善可掬。 只是这提供的访谈环境也太差了,简直就是在审讯。

  5. 返回顶部

    r

    2007年8月15日 上午12时1分 发表人 ray Li

    呵呵 郑大大总是一副很开心的样子

  6. 返回顶部

    Re: 太卡

    2007年8月16日 上午1时39分 发表人 sj zhang

    教育网也不行,老断

  7. 返回顶部

    感谢郑晔!

    2007年8月16日 上午2时6分 发表人 Jin Xiangdong

    感谢ThoughtWorks、感谢郑晔给大家带来的这些 Ruby 知识!

  8. 返回顶部

    一个拼写错误

    2007年8月27日 上午5时2分 发表人 BaoZhen Cao

    XRuby Hacking Guild 应该是Hacking Guide.

  9. 返回顶部

    郑大人加油 !!

    2007年9月4日 上午1时36分 发表人 Yu Su

    郑大人加油 !!

  10. 返回顶部

    我在移动,卡死。

    2007年9月5日 下午8时51分 发表人 静波 曲

    卡。

  11. 返回顶部

    XRuby加油!

    2007年11月29日 上午12时53分 发表人 Jerome Chen

    在这里看到了郑晔对XRuby的一些介绍,感觉是非常的不错的。不过长路漫漫,还需努力啊。 ---------------------------------------------------- [Ruby中文社区] - www.ruby-lang.org.cn

独家内容

从卓越工程角度看微软中国开发团队的成长

开发团队的成长离不开优秀的人才,简捷有效的流程和高效率工具这三个卓越工程系统中的重要因素。本文作者从这三个因素分析了微软中国开发团队是如何“从优秀到卓越”的。

利用Ruby简化你的Java测试

本文是Productive Java with Ruby系列文章的第一篇,我将从单元测试这个话题开始,让Java的开发人员能够在实际工作中利用Ruby提高工作效率。

与赵进聊SaaS

InfoQ中文站有幸与阿里软件的首席架构师赵进在一起探讨了SaaS的相关话题,包括SOA和ASP与SaaS的异同、云计算、SaaS的前景、它的关键技术、技术瓶颈等等。

在ESB中选择路由还是编配?

在这篇文章中,Adrien Louis和Marc Dutoo在一个典型的ESB场景中讨论了编配和路由的区别和优缺点。他们讨论了几种连接服务的方法,从使用如自定义路由这样的低级别方法,到使用如工作流和编配这样面向业务的高级别方式,并总结说不存在“一边倒”的解决方案。

分布式系统中的一致性和可用性

本文是根据7月26日InfoQ中文站在杭州举行的QClub活动(第三期)后半程小组讨论总结而成。主要内容包括如何在SOA系统中实现服务编排,如何保证分布式系统中的一致性和可用性,以及如何在实施SOA的过程中控制接口的粒度等。

虚拟化导论

人们很容易想当然的以为虚拟化技术仅仅应用于服务器。而在现实中,虚拟化这一苏醒的概念正被运用于各个层面,其中包括网络,存储以及应用基础架构。在这篇导论中,InfoQ将深入每个方面,详尽向您描述虚拟化技术的运用以及其优点与不足。

用户故事估算技巧

作为开发者,同时也是ThoughtWorks的咨询师,Jay Fields总结了自己估算用户故事的有效技巧。

InfoQ案例研究:纳斯达克市场回放

在这篇案例研究中,InfoQ对Adobe AIR和Amazon的简单存储服务(Simple Storage Service ,S3)在NASDAQ市场回放程序(NASDAQ Market Replay)中的应用进行了详细的分析。