差し迫った2.8リリースで提供されるScalaコレクションライブラリの再実装を検討し始めたところです。2.7のライブラリに精通している人なら、ライブラリは使用法の観点からはほとんど変わっていないことに気付くでしょう。例えば...
> List("Paris", "London").map(_.length)
res0: List[Int] List(5, 6)
...どちらのバージョンでも機能します。ライブラリは非常に使いやすいです。実際、それは素晴らしいです。ただし、以前はScalaに慣れておらず、言語を理解するためにざっと見ていた人は、次のようなメソッドシグネチャを理解する必要があります。
def map[B, That](f: A => B)(implicit bf: CanBuildFrom[Repr, B, That]): That
このような単純な機能の場合、これは困難なシグネチャであり、私が理解するのに苦労しているものです。Scalaが次のJava(または/ C / C ++ / C#)になる可能性が高いと私が思うわけではありません。その作成者がその市場を狙っていたとは思えませんが、Scalaが実現することは確かに実現可能でした次のRubyまたはPython(つまり、大幅な商用ユーザーベースを獲得するため)
- これは人々がScalaに来るのを先送りにするでしょうか?
- これは、専門の博士課程の学生だけが理解できる学術的な遊び道具として、Scalaを商業の世界で悪名にするのでしょうか?されCTO sおよびソフトウェアの頭はオフ怖がって取得するつもり?
- ライブラリの再設計は賢明なアイデアでしたか?
- Scalaを商業的に使用している場合、これについて心配していますか?すぐに2.8を採用する予定ですか、それとも何が起こるか確認するのを待ちますか?
Steve Yeggeは かつてScalaを攻撃した(私の意見では誤解している)が、過度に複雑な型システムと見なしたものを攻撃した。私は誰かがこのAPIでFUDを広める実地の日を過ごすことを心配しています(Josh Bloch がJavaにクロージャーを追加することからJCPを怖がらせたのと同様に)。
注 - 私は私がいることを信じていながら、ことは明らかであるジョシュア・ブロックが、私は提案が間違いを表現することを彼の正直、信念以外にこれを帰ませんBGGA閉鎖案の拒否で影響を与えました。
私の妻や同僚が私に言い続けていることは何でも、私はばかだとは思わない:私はオックスフォード大学で数学の学位を取得しており、約12年間は商業的にプログラミングしており、Scalaで約1年(これも商用)。
扇情的な主題のタイトルは、1980年代初頭の英国の政党のマニフェストについてなされた引用であることに注意してください。この質問は主観的ですが、本当の質問です。CWにしました。この件についていくつかの意見をお願いします。