阅读更多

31顶
0踩

编程语言

原创新闻 Groovy创造者高度评价Scala

2009-07-07 10:16 by 见习编辑 Eastsun 评论(20) 有10986人浏览
  Groovy的创造者James Strachan最近发表了一篇博客:Scala作为Java/Javac的长期替代者?访问需翻墙,请自备梯子)。文中作者认为,javac(指java语言)发展到现在已经达到其顶峰,我们需要javac的一个长期替代者。并且作者在文中罗列出Scala各种优点,认为
引用
Scala找到了动态语言的简洁性与静态语言间的一个最佳位置。

  James Strachan写道:
引用

我认为javac的长期替代者是Scala。我对Scala的印象非常深刻!坦率的说,如果有人在2003年就让我看到Martin Odersky,Lex Spoon&Bill Venners所写的《Programming Scala》,也许我就不会创建Groovy了。

  博客发表后引起强烈反响,大牛Neal Gafter 与Scala的创造者Martin Odersky都对此进行了评论。
  PS:有空我将尝试对全文进行翻译;另外原本在6月发布的Scala2.8跳票了..
31
0
评论 共 20 条 请登录后发表评论
20 楼 sulong 2009-07-09 23:10
虽然scala性能更好,但是scala的语法实在是让习惯了类C语法的人难以接受。scala没有groovy好用,groovy的builder等非常好用,不知道scala在这方面有什么。我还没有尝试过,但是我想,我们应该可以用groovy编写80%的代码,并用java实现那20%的关键代码,以在开发难度,速度和性能间找到平衡。如果项目里的成员都愿意学习scala,或许可以牺牲一些开发效率,换取几乎等同于java的性能,但是性能的改进还是必须的,因为即使全用java也有这样的问题。
19 楼 whaosoft 2009-07-08 23:30
  晕了 我不会这个
18 楼 richardyu 2009-07-08 23:14
phlsbg 写道
我很想知道Scala能开发那个领域的软件?是否有成功案例?
目前在商用上做了什么东西?


       哪位大侠知道呀。。。。。。


twitter的后台mq系统是用的Scala
17 楼 lambda 2009-07-08 22:33
phlsbg 写道
我很想知道Scala能开发那个领域的软件?是否有成功案例?
目前在商用上做了什么东西?


       哪位大侠知道呀。。。。。。


要说成功案例,有啊
twitter, 成功的不能再成功了
16 楼 RednaxelaFX 2009-07-08 21:45
phlsbg 写道
我很想知道Scala能开发那个领域的软件?是否有成功案例?
目前在商用上做了什么东西?


       哪位大侠知道呀。。。。。。

可以看看这系列文章:http://jonasboner.com/2008/10/01/real-world-scala-introduction.html
15 楼 phlsbg 2009-07-08 20:50
我很想知道Scala能开发那个领域的软件?是否有成功案例?
目前在商用上做了什么东西?


       哪位大侠知道呀。。。。。。
14 楼 天机老人 2009-07-08 19:51
说实话受不鸟啦!
哎还是呆ruby里去吧!
玩的也太嚣张了。
13 楼 RednaxelaFX 2009-07-08 17:35
night_stalker 写道
它不是脚本语言,是函数式的静态语言。不过怀疑开发团队没 M$ 搞 F# 那帮人 nb ...
听说有个 lift 框架。

牛,绝对牛。要知道他们做了Pizza,然后GJ(generic Java),然后演变成现在Java Generics。当然这Java泛型设计得好不好要见仁见智了,但Odersky的水平绝对是够的。
Don Syme在设计F#的过程中还跑到Odersky那边去交流了一个月……F#和Scala也是有相互借鉴的~
12 楼 night_stalker 2009-07-08 15:47
Julien 写道
我才知道Scala的性能跟Java差不多……这太惊人了
要知道一般脚本语言的性能只是编译语言的1/100
现在这玩意有没有现成的可以拿来写web应用的框架?


它不是脚本语言,是函数式的静态语言。不过怀疑开发团队没 M$ 搞 F# 那帮人 nb ...
听说有个 lift 框架。
11 楼 Eastsun 2009-07-08 15:46
Julien 写道
我才知道Scala的性能跟Java差不多……这太惊人了
要知道一般脚本语言的性能只是编译语言的1/100
现在这玩意有没有现成的可以拿来写web应用的框架?


1. Scala并非脚本语言
2. 有个叫做Lift的Web框架
10 楼 Julien 2009-07-08 15:36
我才知道Scala的性能跟Java差不多……这太惊人了
要知道一般脚本语言的性能只是编译语言的1/100
现在这玩意有没有现成的可以拿来写web应用的框架?
9 楼 liuruncheng 2009-07-08 13:50
支持Groovy和Grails!
Groovy语法用着就很爽,再说我不认为Java需要替代者
Scala与其叫替代者还不如说是新的语言啦
创始者只不过开个头而已,现在有SpringSource撑着,Groovy会发展更好
8 楼 wenjixiao 2009-07-08 11:25
没见着groovy有什么光彩,很不喜欢groovy。
scala也不喜欢,但至少比groovy强。
7 楼 freej 2009-07-08 11:00
支持scala
6 楼 Eastsun 2009-07-08 08:42
作者在文中提到:
引用
So why Scala? Scala is statically typed and compiles down to the same fast bytecode as Java so its usually about as fast as Java (sometimes a little faster sometimes a little slower). e.g. compare how well Scala does in some benchmarks with groovy or jruby. Or this. Note speed isn't everything - there are times when you might want to trade code thats 10x slower for more productivity and conciseness; but for a long term replacement for javac speed is important.


我认为这一点是很有道理的。
对于一个通用语言,速度还是很重要的。
所以Groovy虽然在某些领域可以超越Java,但并不能代替Java
而Scala具有和Java相当的执行效率,加之具有一些“伪动态语言”(不过我认为“隐式转换”比类型推断更“伪动态”)的特性,因此从“Java替代者”这一点来说比Groovy更有优势
5 楼 ququjoy 2009-07-08 00:23
night_stalker 写道
一直觉得类型推断是伪动态 ……

grrovy 真惨,连 co-founder 都退出了。


恰恰相反。。。groovy是在他退出后才大放光彩的。。。
4 楼 night_stalker 2009-07-07 14:50
一直觉得类型推断是伪动态 ……

grrovy 真惨,连 co-founder 都退出了。
3 楼 qieren 2009-07-07 11:40
不带这么玩的
2 楼 Eastsun 2009-07-07 10:34
ququjoy 写道
汗。。。James Strachan早就退出groovy项目了。。。

这个不了解...
不过James Strachan是Groovy的创造者没错吧,好像还有另一个作者
1 楼 ququjoy 2009-07-07 10:30
汗。。。James Strachan早就退出groovy项目了。。。

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • robocode机器人比赛中胜率高达90%的代码

    robocode机器人比赛中胜率高达90%的代码,在大赛中获过奖,机器本身还可以变颜色。

  • robocode智能坦克代码

    2002 robocode Rumble中级组冠军代码,可以直接import

  • robocode-solutis-2020

    Robocode Aspira 喂! 我的名字叫Fábia,我是Ucsal的Analysis and Systems Development课程的学生。 我设置了Aspira机器人参加了Solutis机器人竞技场2020挑战赛,之所以写“我设置”是因为我分析了一些主要Robocode的行为,策略,优缺点,并使用了其中一些代码的部分内容建立我的战斗逻辑。 “ Aspira”这个名称的灵感来自电影Tropa de Elite。 Aspira机器人也像电影的抱负者一样坚强而固执,一直追逐敌人直到被消灭。 使用语言: :hot_beverage:︎JAVA 关于代码: 跑步 (): 它是主要方法,它定义了机器人的行为。 Aspira使武器不受机器人的移动影响,雷达的旋转与武器的旋转无关。 循环用于保持机器人及其零件的运动。 onHitByBullet(): 当机器人被子弹击中时执行,它以3的力向后击,并移动了50

  • RoboCode 参考代码

    借鉴博客大佬资源 胜率还可以 学校选拔赛取前五 此机器人排名第六 写之记录 package SLTeam; import java.awt.*; import java.awt.geom.*; import java.util.*; import java.util.List; import robocode.*; import robocode.util.*; public c...

  • 代码吃鸡:Python-Robocode

    最近看到一个很有“未来感”的新闻: 一辆 特斯拉 在拉斯维加斯出了车祸,撞“死”了一个……emmmm……机器人。不知道是意外还是炒作,又或者是这位机器人故意碰瓷,反正人们也无法从受害者口中了解“ 被特斯拉撞是怎样一种体验 ”了。 图为受害者,情绪看起来很稳定 随着“ 人工智能 ”的应用场景越来越多,此类新闻以后可能也会越来越频繁。但愿这...

  • Robocode Rumble: 冠军的技巧

    Robocode Rumble: 冠军的技巧 Rumble 冠军揭示胜利的机器人背后的策略

  • Robocode:机器人代码

    机器人代码 MSc IA课程的Robocode项目

  • 一段robocode经典代码

    一段robocode经典代码,教你如何编写robocode

  • robocode源代码

    可以直接用,1.7的环境就可以,大家试试看吧,祝大家好运

  • robocode 里的坦克java代码很不错哦~

    这个代码里要吧package 后面改成相应的包名 而且要有robocode才能使用

  • 世界robocode机器人的四大运动方式分析

    世界robocode机器人的四大运动方式分析

  • robocode机器人比赛

    Robocode是2001年7月在美国IBM 的Web alphaWorks上发布的坦克机器人战斗仿真引擎。与通常玩的游戏不同的是:参赛者必须利用对机器人进行编程,给机器人设计智能来自动指挥它,而不是由键盘、鼠标简单地直接控制。Robocode是一种有趣的竞赛性编程,使用几行简单的代码,就能够让你创建一个活生生的机器人,一个真正的在屏幕上与其他机器人互相对抗的机器人。你可以看到它在屏幕上四处疾驰,碾碎一切挡道的东西。机器人配有雷达与火炮,选手在躲避对手进攻的同时攻击对手,以此来较量得分的多少。Robocode可以让你在娱乐的同时学习与提高Java技术。 这段代码是湖南科技大学xuyaheng、guochaoguo小组成果,当时获全校robocode机器人大赛第一名。

  • Java开发坦克机器人Robocode视频课程(61集)

    资源名称:Java开发坦克机器人Robocode视频课程(61集)资源目录:【】001_[Robocode简介及创建第一个机器人].何足道【】002_[Robocode环境安装及机器人运动命令run简介].何足道【】003_[机器人运动控制的命令].何足道【】004-1_[Robocode中的运行控制命令详解].何足道【】004-2_[Roboco 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

  • robocode雷达锁定代码

    robocode坦克机器人编程雷达锁定原代码,即时可用

  • Robocode

    Robocode是2001年7月在美国IBM 的Web alphaWorks上发布的坦克机器人战斗仿真引擎。与通常玩的游戏不同的是:参赛者必须利用对机器人进行编程,给机器人设计智能来自动指挥它,而不是由键盘、鼠标简单地直接控制。Robocode是一种有趣的竞赛性编程,使用几行简单的代码,就能够让你创建一个活生生的机器人,一个真正的在屏幕上与其他机器人互相对抗的机器人。你可以看到它在屏幕上四处疾驰,

  • 经典Robocode例子代码--Snip…

    原文地址:经典Robocode例子代码--SnippetBot作者:韩雪[b]经典Robocode例子代码[/b] [b] - -SnippetBot[/b] 看过了Robocode的文章,对Robocde有了个大概了解,现在我我们就一个经典的Robocode例子源代码来分析Robocode也java之间是多么的天衣无缝。 经典Robocode新手入门例子,包括了移动,雷达

  • Robocode简介

        Robocode    什么是 Robocode?    Robocode 是 2001 年 7 月在美国 IBM 的 Web alphaWorks 上发布的坦克机器人战斗仿真引擎。Robocode 是一位 IBM 的工程师 Mat Nelson 用 Java 语言所创造的机器人战斗仿真引擎。Robocode 不是一个完整游戏,它是个半成品,你所做的就是为你的机器人坦克编写智能程序,让它能...

  • robocode参考代码

    robocode参考代码robocode参考代码robocode参考代码robocode参考代码robocode参考代码robocode参考代码robocode参考代码robocode参考代码robocode参考代码robocode参考代码robocode参考代码robocode参考代码

Global site tag (gtag.js) - Google Analytics