开发者

Is Slow compiling of scala a factor against using it in website project when compared to Python? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance. Closed 11 years ago.

In my website project, there is conflict right now on using python or scala. One argument that went against scala was its slow compile time whereas Python does not even compile. According to answers given in this question Why does IntelliJ IDEA compile Scala so slowly?

So my question is for a website, what's more important to consider. Slow开发者_高级运维 compile time of a language or slow execution of a language. Is slow compile time of scala an affecting factor? AFAIK compiled code of scala will run faster than interpreted python code.

Note - It's right that languages do not scale but architecture and code does, but it will not hurt to use a language which runs fast.


With a compiled language you only compile it once. Even in python the bytecode is only generated if the source has changed. I would imagine this is the same with Scala. Looking for which language runs faster is a foolish endeavor as it is "just another language war." Instead of looking for speed you should be looking at frameworks, ease of development, cost of running and upkeep and overall 'friendlyness' of the langauge.


Unless you're expecting the debug-fix-deploy cycle to be the default state, and your app is so huge and coupled that you have to re-compile dozens of the files even after simple changes, build and warmup time shouldn't be really be an issue for a web application. Those frequently stay online for weeks or even months. There's a reason some virtual machines (famously, HotSpot) have called their mode for long-running applications (which includes significantly longer startup/warmup time but allows generation of even better machine code) the "server" mode.

But as you noted yourself, that doesn't mean you have to go use a compiled language. Develop in whatever works best for developing. In the unlikely event you should get enough traffic for the performance of the underlying platform to matter (Twitter had to replace their Ruby code with Scala code for performance, but mind you, it worked well enough for years), you can afford a rewrite anyway ;)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜