为什么 Scala 对它没有多少热情?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/743256/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Why does Scala have very little enthusiasm about it?
提问by Rayne
I've noticed over time that Clojure users have nothing but massive enthusiasm for the language. Yet it seems most Scala users don't even really care too much for the language. A few people have told me "It's better than having to use Java.". I'm not sure why Clojure has so much enthusiasm about it yet Scala has hardly any. It ruins any motivation that I have to learn to the language. I don't care all that much for a language to use "Because it's better than having to use Java.". What do you think? I've not known about Scala long enough to measure how much the popularity has increased or decreased over time. What are your thoughts on the language? I'm especially interested in hearing from people who use the language.
随着时间的推移,我注意到 Clojure 用户对该语言抱有极大的热情。然而,似乎大多数 Scala 用户甚至不太关心这门语言。一些人告诉我“这比必须使用 Java 更好。”。我不知道为什么 Clojure 对它如此热情,而 Scala 却几乎没有。它破坏了我必须学习语言的任何动力。我不太关心使用一种语言“因为它比必须使用 Java 更好。”。你怎么认为?我对 Scala 的了解还不够长,无法衡量它的受欢迎程度随着时间的推移增加或减少了多少。你对语言有什么看法?我对听取使用该语言的人的意见特别感兴趣。
Thanks.
谢谢。
EDIT: Obviously this post was more offensive than I intended. I'm not trying to put down either language, nor am I saying that Scala doesn't have people behind it. I'm just saying that over time it seems to me that less people are enthusiastic about Scala as they are with Clojure for instance. I'm not making "Unjustified assumptions" or making a "Dirty move in debate" I'm just asking for theories.
编辑:显然这篇文章比我预期的更具攻击性。我不是要贬低任何一种语言,也不是说 Scala 没有人支持它。我只是想说,随着时间的推移,对 Scala 的热情似乎越来越少,例如他们对 Clojure 的热情。我不是在做“不合理的假设”或“在辩论中做出肮脏的举动”,我只是在寻求理论。
If I had known this would cause so much dispute I wouldn't have even wrote the thread. I apologize for any misunderstandings. I would last like to point out that I dolike Scala, and Clojure. I'm learning Scala as we speak. Thanks for your posts, the parts with theories at least.
如果我知道这会引起如此多的争议,我什至不会写这个线程。对于任何误解,我深表歉意。我最后想指出的是,我确实喜欢 Scala 和 Clojure。我们说话的时候我正在学习 Scala。感谢您的帖子,至少有理论的部分。
EDIT: September 30th: I do indeed apologize for any animosity I earned towards me. This question has been wildly misunderstood. I love Scala, and think it an amazing language. I was speaking from my own observations, and it appears my own observations were apparently wrong. You're welcome to continue voting this question down, but I would delete it if I was capable of doing so, but I'm not.
编辑:9 月 30 日:我确实为我对我产生的任何敌意深表歉意。这个问题被严重误解了。我喜欢 Scala,并认为它是一种了不起的语言。我是根据我自己的观察说的,看来我自己的观察显然是错误的。欢迎您继续投票否决这个问题,但如果我有能力这样做,我会删除它,但我不是。
回答by mipadi
I think there exist users who arepretty passionate about Scala. Daniel Spiewakwrites a lot of blog articlesabout the language, and the Twitter people often talk about rewriting portions of their software in Scala. The big reason that Clojure may seem, in comparison, to generate more enthusiasm is because, well, Clojure is a dialect of Lisp, and Lispers tend to be very passionate about their language. I think that idea is key: a lot of Clojure programmers use Clojure because they loveLisp, not because they hateJava, whereas a lot of Scala programmers (not all, but a lot) use Scala not because they loveobject-oriented functional languages, but because they don't want to use Java.
我认为存在着谁的用户是非常充满热情斯卡拉。Daniel Spiewak写了很多关于该语言的博客文章,Twitter 上的人经常谈论用 Scala 重写他们软件的部分内容。相比之下,Clojure 似乎产生更多热情的一个重要原因是,因为 Clojure 是 Lisp 的一种方言,而 Lispers 往往对他们的语言充满热情。我认为这个想法很关键:很多 Clojure 程序员使用 Clojure 是因为他们喜欢Lisp,而不是因为他们讨厌Java,而很多 Scala 程序员(不是全部,而是很多)使用 Scala 并不是因为他们喜欢面向对象的函数式语言,但因为他们不想使用 Java。
回答by James Iry
This is a classic "dirty" move in debate. Assume a premise and then ask a question based on that premise. "Exactly when did you stop beating your wife?"
这是辩论中的经典“肮脏”举动。假设一个前提,然后根据该前提提出问题。“你到底是什么时候停止打你的妻子的?”
The question needs to be edited
问题需要修改
I'm not sure why Clojure has so much enthusiasm about it yet Scala has hardly any.
[citation needed]
I'm not going to question whether Clojure users have enthusiasm. My experience is that they do. And rightly so, it's a great language.
我不会质疑 Clojure 用户是否有热情。我的经验是他们这样做。没错,它是一门很棒的语言。
But you seem to be casually ignoring the enthusiasm on the Scala side. Brian Goetz says that 100 of the 1300 talks submitted to JavaOne were on Scala. So that's at least 100 people passionate enough about Scala to stand up in front of strangers and talk about it. http://blogs.oracle.com/briangoetz/entry/how_to_get_your_javaone
但是您似乎在随意忽略了 Scala 方面的热情。Brian Goetz 说,提交给 JavaOne 的 1300 个演讲中有 100 个是关于 Scala 的。所以至少有 100 人对 Scala 充满热情,可以站在陌生人面前谈论它。http://blogs.oracle.com/briangoetz/entry/how_to_get_your_javaone
回答by psp
I've been programming in scala full time for about a year. I have nothing but massive enthusiasm for it. Do you ever think that maybe people are enjoying using it too much to spends lots of time on advocacy? At this late date I'd think people would have learned to be more skeptical of hype; the corollary of that lesson is not to assume too much from the lack of it. (Which is not to say scala has not been hyped, but most of the hype appears to originate with people who don't use it...)
我已经全职在 Scala 中编程大约一年了。我对它只有巨大的热情。你有没有想过,也许人们太享受使用它而花大量时间在宣传上?在这么晚的时候,我认为人们会学会对炒作更加怀疑。这个教训的必然结果是不要因为缺乏它而假设太多。(这并不是说 Scala 没有被大肆宣传,但大多数大肆宣传似乎源于不使用它的人......)
回答by GClaramunt
Interesting. Personally, I think Scala is an awesome language (and its strength will show in bigger projects), but you're somehow right in the sense of I don't see comments like "Scala rocks and your language is the suxx0r!!" that seems to be pretty common in other communities.
有趣的。就我个人而言,我认为 Scala 是一种很棒的语言(并且它的力量将在更大的项目中显示出来),但是从某种意义上说,您是对的,因为我没有看到诸如“Scala 摇滚而您的语言是 suxx0r!!”之类的评论。这在其他社区似乎很常见。
Maybe
或许
- ... the members of the Scala community are more mature? (er... older?)
- ... they're too busy writing stuff in Scala and they don't have time for advocacy?
- ... they already know more than one language and know that there's no one and only one language to rule them all?
- ... Scala 社区的成员更成熟了?(呃……年纪大了?)
- ... 他们忙于用 Scala 编写东西而没有时间进行宣传?
- ...他们已经知道不止一种语言,并且知道没有一种语言可以统治他们所有人?
(humor implied, no need to start a flamewar)
(幽默暗示,无需开火)
回答by GClaramunt
I'm pretty stoked about Scala and as a matter of fact I intend to bet my coding career on it. After being a Java fanboy for so long, my earliest impression was that Scala is merely an academic fad -- a toy language for computer scientists and of little use to serious software developers i.e the astronomer to your astronaut, and I thought to myself then, "C'mon, who needs another Haskell?", but after a second harder look, I was hooked.
我对 Scala 非常着迷,事实上我打算把我的编码生涯押在它上面。在成为 Java 迷这么久之后,我最早的印象是 Scala 只是一种学术时尚——计算机科学家的一种玩具语言,对严肃的软件开发人员(例如天文学家到宇航员)几乎没有用处,我当时心里想, “来吧,谁还需要另一个 Haskell?”,但仔细看了两眼之后,我被迷住了。
This is the language I've been waiting for all my life -- functional, object-oriented, JVM-based, and pretty nifty once you've mastered it. Somebody mentioned showing enthusiasm through writing articles, but Scala enthusiasts should do what coders do best, write code instead.
这是我一生都在等待的语言——函数式的、面向对象的、基于 JVM 的,并且一旦你掌握了它就非常漂亮。有人提到通过写文章来表达热情,但是Scala爱好者应该做编码员最擅长的事情,而不是写代码。
The more Scala we release -- database engines, application servers, message brokers, build systems, etc, the better. May Scala deliver us from Jevil... um Java.
我们发布的 Scala 越多——数据库引擎、应用服务器、消息代理、构建系统等,就越好。愿 Scala 将我们从 Jevil 中解救出来……嗯,Java。
回答by Marcus Downing
Scala is not a beginner's language. It's complicated, subtle and requires a significant investment of learning. It's awesome, but it's not easy.
Scala 不是初学者的语言。它复杂、微妙,需要大量的学习投资。这很棒,但这并不容易。
Other answers have made this sound negative:
其他答案使这听起来是否定的:
mipadi:a lot of Scala programmers (not all, but a lot) use Scala not because they love object-oriented functional languages, but because they don't want to use Java
mipadi:很多 Scala 程序员(不是全部,而是很多)使用 Scala 不是因为他们喜欢面向对象的函数式语言,而是因为他们不想使用 Java
I prefer to see this in a positive light. Scala is a language that has learned from the mistakes of history and strives not to repeat them. It attracts the sort of developers who have enough experience, in Java and other traditional languages, to appreciate this.
我更愿意从积极的角度看待这一点。Scala 是一种从历史错误中吸取教训的语言,并努力不再重蹈覆辙。它吸引了那些在 Java 和其他传统语言方面拥有足够经验的开发人员来欣赏这一点。
A sign of immaturity is the belief that one methodology rules over all others. I know I was guilty, a decade ago, of believing that object orientation was the one true way. Now we have those who claim that functional programming and nothing else is the right way. Scala is more mature than that: it understands that one size doesn't fit all.
不成熟的标志是相信一种方法论统治所有其他方法。我知道十年前我曾相信面向对象是唯一正确的方式,这让我感到内疚。现在我们有人声称函数式编程是正确的方式。Scala 比这更成熟:它明白一种尺寸并不适合所有人。
Scala is still fairly new (in the scale of these things), and parts of it are settling down as I type this, but it's only a matter of time before somebody uses it to create a killer app, something millions come to rely on. I of course hope that'll be me :)
Scala 仍然相当新(就这些事情而言),当我输入它时,它的一部分正在稳定下来,但有人使用它来创建杀手级应用程序只是时间问题,数百万人开始依赖它。我当然希望那将是我:)
回答by ziggystar
I'm using Scala because it lets me get my work done faster and better. I don't use it because it's a joy to program (well, it is compared to Java). Basically I think all programming languages suck, I'm choosing the lesser evil.
我使用 Scala 是因为它可以让我更快更好地完成工作。我不使用它是因为编程是一种乐趣(好吧,它与 Java 相比)。基本上我认为所有的编程语言都很糟糕,我选择了较小的邪恶。
Maybe Scala is a language that is used by pragmatic people like me. This doesn't mean it's a bad language. This also does not mean, that such pragmatic people would cheer over Clojure. Maybe they just won't use it.
也许 Scala 是一种被像我这样务实的人使用的语言。这并不意味着它是一种糟糕的语言。这也不意味着,这种务实的人会为 Clojure 欢呼。也许他们只是不会使用它。
回答by Mark Tye
I stumbled across this question after a Google search for the term scala language popularity. Ironically, four days prior I attended Scala Days 2011, a conference where hundreds of enthusiastic Scala users from around the world got together to present and discuss the latest developments with this remarkable language.
在 Google 搜索术语scala 语言流行度后,我偶然发现了这个问题。具有讽刺意味的是,四天前我参加了Scala Days 2011,这是一个会议,来自世界各地的数百名热情的 Scala 用户聚集在一起,展示并讨论了这种非凡语言的最新发展。
@Rayne, I don't know what circumstances prompted you to suggest that most Scala users don't care much for the language, but my own experiences run completely to the contrary. Admittedly, most of the Scala users I know, I've met through local users' groups and events like Scala Days and the OSCON Scala Summit; this obviously creates a subset self-selected by their willingness to give up free time to learn and/or share their Scala knowledge.
@Rayne,我不知道是什么情况促使您建议大多数 Scala 用户不太关心该语言,但我自己的经验完全相反。诚然,我认识的大多数 Scala 用户都是通过本地用户组和活动(例如 Scala Days 和 OSCON Scala Summit)认识的;这显然创建了一个子集,他们愿意放弃空闲时间来学习和/或分享他们的 Scala 知识。
I'm also surprised that anyone who lacked enthusiasm for Scala back in 2009 would have bothered to use it. Scala is still very much an "early adopter" technology even now, and there is (and was) no shortage of compelling alternatives for developers unimpressed by Scala: Clojure, Groovy, JRuby, Ruby, Python... I could go on, but won't. It's not as if corporate IT departments switched to Scala en masseand forced their developers to use it: that day is still some ways off in the future. Where exactly did you encounter these unenthusiastic Scala users?
我也很惊讶,任何在 2009 年对 Scala 缺乏热情的人都会费心使用它。即使现在,Scala 仍然是一种非常“早期采用者”的技术,对于那些不为 Scala 留下深刻印象的开发人员来说,不乏(并且曾经)不乏引人注目的替代方案:Clojure、Groovy、JRuby、Ruby、Python……我可以继续,但是惯于。这并不是说企业 IT 部门集体转向 Scala并强迫他们的开发人员使用它:那一天离未来还有很长的路要走。您究竟是在哪里遇到这些缺乏热情的 Scala 用户的?
Another possible explanation, I suppose, is that you were measuring Scala users with an unfairly long yardstick. @mipadi's comments about Clojure are spot-on. You'd be hard-pressed to find a more ardent group of language enthusiasts to compare Scala users to.
我想,另一种可能的解释是,您使用不公平的长尺度来衡量 Scala 用户。@mipadi 关于 Clojure 的评论是正确的。你很难找到一群更热心的语言爱好者来比较 Scala 用户。
I realized that you posed this question over 18 months ago. I hope that in the intervening time, you've encountered an ever-increasing number of enthusiastic Scala users, and maybe even become one yourself.
我意识到你在 18 个月前提出了这个问题。我希望在此期间,您遇到了越来越多的 Scala 热心用户,甚至您自己也可能成为其中的一员。
回答by Onorio Catenacci
I think the questioner is making a somewhat unjustified assumption. Programming Language Popularityseems to indicate that neither of these languages--Clojure or Scala has much in the way of support other than two rather ardent communities of early adopters. If one set or the other of the early adopters is more willing to evangelize their new language they're both pretty small communities regardless.
我认为提问者做出了一个有点不合理的假设。 编程语言流行度似乎表明,除了两个相当热情的早期采用者社区之外,这两种语言——Clojure 或 Scala 都没有太多的支持方式。如果一组或另一组早期采用者更愿意传播他们的新语言,无论如何,他们都是很小的社区。

