动态的Java(翻译)
《Dynamic Java》
Tim Bray, Sun's XML evangelist, recently hosted a "summit" to discuss whether and how Java mught provide better support for dynamic languages
相当清楚的,在软件开发的世界,动态语言(dynamic languages)是一个热点,或许是最热的热点。我们需要做更多的工作,使处于Java环境(ecosystem、生态系统)的人们容易使用它们。因此在星期二我们在Sun召开了高端会议,有我们内部的Java领袖人物中一些人,而在动态语言那边,Larry Wall和 Dan Sugalski (Perl and Parrot), Guido van Rossum, Samuele Pedroni和Sean McGrath (Python),以及James Strachan (Groovy).。这是我们的一个受教育日子;下面有一些take-aways和图片。
现在开始
在Java方面(Javaverse)我们已经相当认同动态语言。这是Sean McGrath用Jython写的使用servlets的应景代码(write-up),and over at O’Reilly Marc Hedlund has a nice little demo of building an RSS aggregator in Groovy. Gotta love this:
class Item { title; contents; String toString() { return title; } }
然而,Jython和Groovy(还有另外的others) 是在几乎没有Sun的帮助或者鼓励下开发的,我们很可能能够使他们的开发活动(implementors’ lives)更容易些。
Java有一个PR问题,而微软公司一开始就将.NET定位成多语言平台。实际上,Java是一个三腿凳(语言、JVM和类库),所有这些都记在“Java”一个大名之下(gets lost under the enveloping carpet of the one-word name “Java”.)。某种程度上,这是Sun的失误,在早期岁月,Java传教士一般保留这种偏见,有Java以外的语言写代码的都是二等公民。真有的愚蠢。Java是一种好语言但我经常喜欢用Perl和Python做事情,许多开发者也是这样。
高端会议
即使Sun不赞同在Java平台上使用另外的语言,无论如何,它们还是出现了。我是赞同的,当我跑到Sun公司,发现我问的每一个人也是赞同的。于是,我询问Graham Hamilton——他一直处于Java世界的中心,将一屋子的动态语言专家引进来帮助我们断定如何把Java营造成更好的家园,他是否认为是一个好主意。他肯定了,并且指出我们刚刚踏上1.5“Tiger”版本又处于下一步计划编制阶段的早期,立刻办这事儿正是时候。
于是,我去找了位居Sun的Software CTO办公室的我们的主管Juan Carlos Soto,他也认为这是一个好主意并同意资助。
表演者
Java团队,我们有Graham Hamilton——一个VP和Sun Fellow并且是主要的J2SE架构师;Gilad Bracha——处理Java语言和JVM规范;Martin Buchholz——资深的Java维护者(一度是XEmacs的维护者)。
在Perl方面,我们有Larry Wall——他正忙于定义Perl 6;Dan Sugalski——编写了Parrot(新的Perl VM)。
在Python阵营,有Guido van Rossum, Samuele Pedroni,当今Jython的领袖;和Sean McGrath——他的公司Propylon雇佣了一小群程序员正在为真正付款的客户编写Jython应用程序。
Groovy方面的代表是其领袖James Strachan.。
他们给了我们一个非常小的会议室,显得很拥挤。
……