8行的Dart语言Hello World,被编译成17259行的js……颤抖吧人类

yqjun 发布于 2011/10/23 16:40
阅读 16K+
收藏 1

8行的Dart语言Hello World,被编译成17259行的js……颤抖吧人类

https://gist.github.com/1277224  JS代码自己进去看吧,不可能把JS代码贴出来了……

class HelloDartTest {  
  static testMain() {  
    print("Hello, Darter!");  
  }  
}  
main() {  
  HelloDartTest.testMain();  
} 

PS:发现一句神吐槽“以后再听见你们比代码行数,小心我用 Dart 写程序编译后提交……”

加载中
1
变成马甲了哈哈
变成马甲了哈哈

引用来自“mallon”的答案

引用来自“Rock_Horton”的答案

不解释

$ cat hello.c
#include <stdio.h>

int main()
{       
        printf("Hello world\n");
        return 0;
}
$ gcc -static -o hello hello.c
$ objdump --disassemble hello | wc -l
111065

这样比较怎么行哦

汇编指令和机器指令是一一对应的,直接在CPU上跑的,况且可执行程序的加载也需要一堆指令的,都算里面了。

dart翻译成javascript,javascript还得再解释执行,能比嘛

非要这么看问题吗?很死板诶~~跳出来好吗?

=================

cpu --- 汇编 --- C

浏览器----javascript----dart

================

╮(╯3╰)╭

0
匿名人士
匿名人士

我看到一个图片回复

成就达成:17259行hello World!,那个Baby形象比喻Dart真是不错

0
mallon
mallon
该评论暂时无法显示,详情咨询 QQ 群:点此入群
0
hantsy
hantsy
一种语言要成熟不是一二年能够实现的,Ruby和Java基本同龄,直到这两年 ROR才让它流行起来。
0
CheckStyle
CheckStyle
在很多顽固狗粉眼里依然是个宝
0
变成马甲了哈哈
变成马甲了哈哈

不解释

$ cat hello.c
#include <stdio.h>

int main()
{       
        printf("Hello world\n");
        return 0;
}
$ gcc -static -o hello hello.c
$ objdump --disassemble hello | wc -l
111065

firstrose
firstrose
这才是真相。 仔细看看那个17k的js就会发现,dart编译出来的除了实际js代码外,还有大量的js library性质的基础代码。跟c的objdump确实有一定的可比性。 看的时候用点脑子想想就能看出这里的联系,如果长了的话。
CheckStyle
CheckStyle
该评论暂时无法显示,详情咨询 QQ 群:点此入群
0
Midnight
Midnight
我疼了...
0
mallon
mallon

引用来自“Rock_Horton”的答案

不解释

$ cat hello.c
#include <stdio.h>

int main()
{       
        printf("Hello world\n");
        return 0;
}
$ gcc -static -o hello hello.c
$ objdump --disassemble hello | wc -l
111065

这样比较怎么行哦

汇编指令和机器指令是一一对应的,直接在CPU上跑的,况且可执行程序的加载也需要一堆指令的,都算里面了。

dart翻译成javascript,javascript还得再解释执行,能比嘛

0
灵剑子
灵剑子

dart远没有到产品化的阶段呢,还只是个原型,批判原型没有优化实现是不地道的。

看看gwt,这个是从java编译到js,就知道dart编译成优化的js不会太难。

可以预见,dart将成为史上最快的动态语言,比luajit、v8啥的都快。速度可以赶得上史上最慢的静态语言——go。。。。

不明白为什么总有人对免费的新语言那么痛恨,爱用不用,没谁强迫你。

ExtremeTalk
ExtremeTalk
没错,这也许只是初期的一个小bug,通常看上去很严重、很夸张的问题常常都不是什么问题。难道Google只能做出一个业余开发者水平的语言吗?我不信。
0
Lunar_Lin
Lunar_Lin
该评论暂时无法显示,详情咨询 QQ 群:点此入群
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部