作者godfat (godfat 真常)
看板Ruby
标题Re: [问题] ruby专案转exe?
时间Wed Sep 13 13:18:24 2006
※ 引述《haryewkun (Har)》之铭言:
: 其实看到这边有点好奇,现在新一代的语言,能够直接编译成为 EXE的,好
: 像很少?(还是我孤陋寡闻)
: 我的意思是,像C#,是转换成中间码,客户端必须先装.NET框架。像Java,
: 客户端一样必须先装JavaVM。
: 为什麽现在所谓的新语言,没有几个能够好像以前 C/C++的时代,可以直接
: 编译成为 EXE,然後就在客户端那边执行就搞定?
我个人认为是因为用 VM 去执行程式的效率,
已经发展到可接受范围内了,编译成 binary 的好处会显得少得多。
当然还是会有需要执行效率的程式,例如 VM...
只是比起那种不需要执行效率的程式(或说 VM 所执行的执行效率在
可接受范围内的程式),需要执行效率的程式实在是少太多了。
而现今新一代的程式语言,大多是针对这些不需要执行效率,
却需要快速开发的程式。如此一来,有了 VM 就显得多了很多好处。
当然,前提是 VM 得普及,否则只是增加另外一个麻烦而已…
那为什麽新一代的语言都没有针对执行效率,如 C/C++ 的语言?
我觉得最大的原因在,通常需要执行效率的程式,比较重要的是
演算法和资料结构,是否能快速开发通常不是重点。而 C 在这一点上,
已经够好用了,实在不太需要再有另外一个做这种事的语言。
而且 C 的地位大概也很难被撼动吧… @_@
但是呢,再走向另外一个极端的话,连 VM 都不用了,
大家都用 interpreter 就好了,如同 Ruby...
这样还可以让开发速度再往上提昇一个等级。
虽然执行效率也下降了,不过也许哪天这也不重要了吧(对於多数程式)
而需要执行效率的程式就可以去寻求 VM, 甚至是 binary...
以上胡思乱想
--
Hear me exalted spirits. Hear me, be you gods or devils, ye who hold
dominion here:
I am a wizard without a home. I am a wonderer seeking refuge.
Sacrifice
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.135.28.18