为什么Scala对它的热情很低?

时间:2009-04-13 07:23:00

标签: scala

随着时间的推移,我注意到Clojure用户对该语言只有极大的热情。然而,似乎大多数Scala用户甚至都不太关心这种语言。有些人告诉我“这比使用Java更好。”我不确定为什么Clojure对此有如此多的热情,但Scala几乎没有。它破坏了我必须学习语言的任何动机。我并不关心语言的使用“因为它比使用Java更好。”你怎么看?我对Scala的了解还不足以衡量人气随着时间的推移增加或减少的程度。你对这门语言有什么看法?我特别感兴趣的是听到那些使用该语言的人。

感谢。

编辑:显然这篇文章比我想要的更具攻击性。我不是要试图说明任何一种语言,也不是说Scala没有背后的人。我只是说,随着时间的推移,在我看来,较少的人对Scala充满热情,因为他们和Clojure在一起。我不是在做“不合理的假设”或者是“辩论中的肮脏举动”我只是在寻求理论。

如果我知道这会引起很多争议,我甚至都不会写出这个帖子。我为任何误解而道歉。我想最后指出我喜欢Scala和Clojure。我在说话的时候正在学习Scala。感谢您的帖子,至少有理论的部分。

编辑:9月30日:我确实为我所获得的任何敌意道歉。这个问题被误解了。我喜欢Scala,并认为它是一种令人惊叹的语言。我是根据自己的观察发言的,看来我自己的观察结果显然是错误的。欢迎你继续投票这个问题,但是如果我有能力的话我会删除它,但我不是。

9 个答案:

答案 0 :(得分:45)

我认为 的用户对Scala充满热情。 Daniel Spiewak写了很多关于语言的blog articles,而Twitter人经常谈论在Scala中重写部分软件。 Clojure看起来比较以产生更多热情的一个重要原因是因为,Clojure是Lisp的一种方言,而Lispers倾向于对他们的语言充满热情。我认为这个想法很关键:很多Clojure程序员都使用Clojure,因为他们喜欢 Lisp,不是因为他们讨厌 Java,而是很多Scala程序员(不是全部,但是很多)使用Scala并不是因为他们喜欢面向对象的函数式语言,而是因为他们不想使用Java。

答案 1 :(得分:34)

这是辩论中经典的“肮脏”举动。假设一个前提,然后根据该前提提出问题。 “你什么时候停止殴打你的妻子?”

需要编辑问题

I'm not sure why Clojure has so much enthusiasm about it yet Scala has hardly any.
[citation needed]

我不会质疑Clojure用户是否有热情。我的经验是他们这样做。这是正确的,这是一种很棒的语言。

但你似乎随便忽视了斯卡拉方面的热情。 Brian Goetz说,提交给JavaOne的1300次谈话中有100次是在Scala上。因此,至少有100个人对Scala充满热情,能够站在陌生人面前并谈论它。 http://blogs.oracle.com/briangoetz/entry/how_to_get_your_javaone

答案 2 :(得分:17)

我已经在scala中全程编程了大约一年。我对此只有巨大的热情。你有没有想过,也许人们喜欢过多地使用它来花费大量时间进行宣传?在这个较晚的日期,我认为人们会学会对炒作更加怀疑;这一教训的必然结果是不要因为缺乏而过多地假设。 (这并不是说scala没有被炒作,但大多数炒作似乎都源于不使用它的人......)

答案 3 :(得分:11)

有趣。就我个人而言,我认为Scala是一种很棒的语言(它的优势将体现在更大的项目中),但从某种意义上说,你看起来并不像“Scala rock和你的语言是suxx0r !!”。这似乎在其他社区很常见。

也许

  • ... Scala的成员 社区比较成熟? (呃... 较旧的?)
  • ......他们忙着写东西 斯卡拉和他们没有时间 宣传?
  • ......他们已经知道不止一个了 语言,知道没有人 只有一种语言可以统治它们 所有?

(幽默暗示,无需启动火焰战)

答案 4 :(得分:5)

Scala不是初学者的语言。它复杂,微妙,需要大量的学习投入。这太棒了,但这并不容易。

其他答案使这听起来很消极:

  

<强> mipadi:   很多Scala程序员(不是全部,   但很多)使用Scala不是因为他们   喜欢面向对象的功能   语言,但因为他们不想要   使用Java

我更愿意从积极的角度看待这一点。 Scala是一种从历史错误中吸取教训并努力不重复的语言。它吸引了那些有足够经验的开发人员,他们用Java和其他传统语言来理解这一点。

不成熟的标志是相信一种方法论统治所有其他方法。十年前,我知道自己是有罪的,相信对象取向是唯一真实的方式。现在我们有那些声称功能性编程的人,没有别的是正确的方法。 Scala比这更成熟:它理解一种尺寸并不适合所有。

Scala仍然相当新(在这些东西的规模上),并且当我输入它时它的一部分正在稳定下来,但是有人用它来创建一个杀手级应用程序只是时间问题,数百万来自依靠。我当然希望那将是我:)

答案 5 :(得分:5)

我正在使用Scala,因为它可以让我更快更好地完成工作。我没有使用它,因为编程是一种乐趣(好吧,它与Java相比)。基本上我认为所有编程语言都很糟糕,我选的是较小的邪恶。

也许Scala是一种像我一样务实的人使用的语言。这并不意味着它是一种糟糕的语言。这也并不意味着,这些务实的人会为Clojure欢呼。也许他们只是不会使用它。

答案 6 :(得分:5)

我对斯卡拉非常感兴趣,事实上我打算打赌我的编码生涯。在成为一名Java粉丝之后,我最早的印象是,Scala只是一种学术时尚 - 一种计算机科学家的玩具语言,对于认真的软件开发人员,即天文学家对你的宇航员来说几乎没用,我当时想, “来吧,谁需要另一个Haskell?”,但经过第二次更难看,我被迷住了。

这是我一直在等待的语言 - 功能性,面向对象,基于JVM,并且一旦你掌握它就非常漂亮。有人提到通过撰写文章表现出热情,但Scala爱好者应该做编码员最擅长的事情,而不是编写代码。

我们发布的Scala越多 - 数据库引擎,应用服务器,消息代理,构建系统等越好。 May Scala从Jevil那里传授我​​们......嗯Java。

答案 7 :(得分:2)

在谷歌搜索scala language popularity一词后,我偶然发现了这个问题。具有讽刺意味的是,在我参加Scala Days 2011会议前四天,来自世界各地的数百名热心的Scala用户聚集在一起,用这种非凡的语言展示和讨论最新的发展。

@Rayne,我不知道是什么情况促使你建议大多数Scala用户不太关心语言,但我自己的经历完全相反。不可否认,我认识的大多数Scala用户都是通过本地用户组和Scala Days和OSCON Scala Summit等活动认识的。这显然创造了一个自我选择的子集,他们愿意放弃自由时间来学习和/或分享他们的Scala知识。

我也很惊讶,那些在2009年对Scala缺乏热情的人会费心去使用它。即使是现在,Scala仍然是一种“早期采用者”技术,对于不受Scala不感兴趣的开发人员来说,并不缺少令人信服的替代方案:Clojure,Groovy,JRuby,Ruby,Python ......我可以继续,但是惯于。这并不是说企业IT部门转而使用Scala 整体并强迫他们的开发人员使用它:未来的那一天还有一段路要走。你到底在哪里遇到过这些不热心的Scala用户?

我想,另一种可能的解释是,你用不公平的长尺度测量Scala用户。 @ mipadi关于Clojure的评论是正确的。你很难找到一群更加热心的语言爱好者来比较Scala用户。

我意识到你在18个月前提出了这个问题。我希望在这段时间里,你会遇到越来越多热心的Scala用户,甚至可能自己成为一个用户。

答案 8 :(得分:1)

我认为提问者做出了一个有点不合理的假设。 Programming Language Popularity似乎表明,除了两个相当热心的早期采用者群体之外,这些语言中的任何一种--Clojure或Scala都没有多少支持。如果早期采用者中的一组或另一组更愿意传播他们的新语言,他们都是相当小的社区。