由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 对scala很失望 (转载)
相关主题
我来个总结不知道对不对关于python
看了眼scala,觉得很杂这么多人讨论 FP, 大牛推荐门语言吧
functional programming 哪本书经典适合入门[合集] JAVA文本文件读写问题 (转载)
为什么这段程序scala慢java很多what is c++? and what can you expect
板上的高人们能给科普比较functional programming language么scala和F#是不是同一回事
Scala又被鄙视了推荐免费webinar for monads, in Java 8/Scala/Haskell
坑:这波fp scala 算是赢了吧NodeJS厉害
王垠:为Java说句公道话 (转载)我擦,haskell很简洁啊
相关话题的讨论汇总
话题: java话题: scala话题: int话题: ruby话题: string
进入Programming版参与讨论
1 (共1页)
p*****2
发帖数: 21240
1
【 以下文字转载自 JobHunting 讨论区 】
发信人: peking2 (sinatra), 信区: JobHunting
标 题: 对scala很失望
发信站: BBS 未名空间站 (Mon Jan 21 00:20:00 2013, 美东)
传说性能跟java差不多,结果发现跟ruby差不多,今天做了两题
第一题,ruby死活过不了,scala将将过
第二题,ruby,scala全部超时2000ms, java 600多ms通过
两道题python都可以通过,第二题用时大约1500ms
可见scala性能跟java相差还是很远的,连python也不如,跟ruby八斤八两,强点有限
。白花一天时间学习了,没什么用武之地。
另外请教以下大牛们,以下语言性能如何,应用广泛吗?
Haskell
Ocaml
g*****g
发帖数: 34805
2
Scala 不应该这么慢,比java慢一些,但应该不超过一倍。你写的啥代码?

【在 p*****2 的大作中提到】
: 【 以下文字转载自 JobHunting 讨论区 】
: 发信人: peking2 (sinatra), 信区: JobHunting
: 标 题: 对scala很失望
: 发信站: BBS 未名空间站 (Mon Jan 21 00:20:00 2013, 美东)
: 传说性能跟java差不多,结果发现跟ruby差不多,今天做了两题
: 第一题,ruby死活过不了,scala将将过
: 第二题,ruby,scala全部超时2000ms, java 600多ms通过
: 两道题python都可以通过,第二题用时大约1500ms
: 可见scala性能跟java相差还是很远的,连python也不如,跟ruby八斤八两,强点有限
: 。白花一天时间学习了,没什么用武之地。

p*****2
发帖数: 21240
3

object test {
def main(args: Array[String]): Unit = {
val s=readLine
val a=new Array[Int](s.length())
var i=0
var j=s.length-1
for(k <- 0 to s.length-1)
if(s(k)=='l')
{
a(j)=k+1
j-=1
}
else
{
a(i)=k+1
i+=1
}
a.foreach(println)
}
}
void run() throws Exception
{
Scanner in = new Scanner(System.in);
out = new PrintWriter(System.out);

String s=in.nextLine();
int[] a=new int[s.length()];
int i=0;
int j=s.length()-1;

for(int k=0;k {
if(s.charAt(k)=='l')
{
a[j]=k+1;
j-=1;
}
else
{
a[i]=k+1;
i+=1;
}
}
for(int x : a)
out.println(x);
out.close();
}
Java Ruby Scala
1 46 15 281
2 46 31 218
26 156 218 515
27 140 234 609
30 140 203 656
31 656 2000 2000
收集了一些数据。Ruby小数据的时候比Java还快。但是数据增大是10倍,10倍的往上涨
。Java差不多4倍往上了,Scala增长跟Java差不多,但是一直比Java慢好几倍

【在 g*****g 的大作中提到】
: Scala 不应该这么慢,比java慢一些,但应该不超过一倍。你写的啥代码?
g******w
发帖数: 78
4
看看shootout里scala的代码吧
只学一天明显太短了
p*****2
发帖数: 21240
5

关键是算法跟java是一样的。

【在 g******w 的大作中提到】
: 看看shootout里scala的代码吧
: 只学一天明显太短了

p*****2
发帖数: 21240
6
这个搞明白为什么了。
a.foreach(println) 这句话慢了。
c*********e
发帖数: 16335
7
如果要计算时间,把code里面的所有的print语句去掉,这些语句非常的花时间,尤其是
loop里面的print.
很多人喜欢用print来debug,但是最后要计算运行时间的时候,一定要把print()语句给
comment out掉。

【在 p*****2 的大作中提到】
: 这个搞明白为什么了。
: a.foreach(println) 这句话慢了。

g******w
发帖数: 78
8

都是print "hello world",java和c也不一样。
scala有其独特的写法,不注意的话可能结果天差地远。
Martin Odersky在coursea的公开课可以参考。

【在 p*****2 的大作中提到】
: 这个搞明白为什么了。
: a.foreach(println) 这句话慢了。

p*****2
发帖数: 21240
9

主要是时间不是我算的。print算时间的。以后得注意一下了。

【在 c*********e 的大作中提到】
: 如果要计算时间,把code里面的所有的print语句去掉,这些语句非常的花时间,尤其是
: loop里面的print.
: 很多人喜欢用print来debug,但是最后要计算运行时间的时候,一定要把print()语句给
: comment out掉。

p*****2
发帖数: 21240
10

好。先学习。感觉还是不错的,可以作为一个小二语言来搞

【在 g******w 的大作中提到】
:
: 都是print "hello world",java和c也不一样。
: scala有其独特的写法,不注意的话可能结果天差地远。
: Martin Odersky在coursea的公开课可以参考。

L***n
发帖数: 6727
11
去掉之后benchmark是什么?

【在 p*****2 的大作中提到】
: 这个搞明白为什么了。
: a.foreach(println) 这句话慢了。

g*****g
发帖数: 34805
12
这个,写得很不functional呀。

【在 p*****2 的大作中提到】
:
: 好。先学习。感觉还是不错的,可以作为一个小二语言来搞

p*****2
发帖数: 21240
13

是。就是同样的算法跟java好比较呀。

【在 g*****g 的大作中提到】
: 这个,写得很不functional呀。
p*****2
发帖数: 21240
14

效率跟java差不多了。

【在 L***n 的大作中提到】
: 去掉之后benchmark是什么?
1 (共1页)
进入Programming版参与讨论
相关主题
我擦,haskell很简洁啊板上的高人们能给科普比较functional programming language么
clojure能单独做大系统么?Scala又被鄙视了
如果选择学习5种编程语言你们选什么?坑:这波fp scala 算是赢了吧
有人看看这段ruby代码能够如何优化吗?王垠:为Java说句公道话 (转载)
我来个总结不知道对不对关于python
看了眼scala,觉得很杂这么多人讨论 FP, 大牛推荐门语言吧
functional programming 哪本书经典适合入门[合集] JAVA文本文件读写问题 (转载)
为什么这段程序scala慢java很多what is c++? and what can you expect
相关话题的讨论汇总
话题: java话题: scala话题: int话题: ruby话题: string