scala は MultiThread 用に設計されているが、実際には汎用目的であると言っているのを聞いたり見たりしています。
そして、「問題は、Java でクラスをスレッドセーフにすることはできますが (自分が何をしているのかわかっていれば)、Scala ではそれを簡単かつ自然に行うことができるということです。」
そして実際、AKKA と Lift は scala で記述されています (実際には Java と scala)。
しかし、java は、java.util.concurrent の新しいパッケージによって、この面でも改善されました。では、AKKA と Lift はなぜ JAVA で生まれなかったのでしょうか。
たぶん、scala は Java を C のように見せると言うでしょう :-)
誰でもこれについてより深い洞察やより深い考えを伝えることができますか?
JAVAとscalaを混在させることができるという事実を知っています。Scala は Java コードをシームレスに呼び出すことができます。だから、Javaが持っているものは、scalaもそうです。
しかし、さまざまな文法に関係なく、Java がまだ行っていないことを実際に改善する scala は何ですか?
Actors/Agents などの一部のデザインだけですか? (アクター/エージェントはマルチスレッドのすべての問題を解決できないことに注意してください。)
それとも、scala コンパイラーと関数型言語文法の採用は、本当に重要であり、Java よりも役立つのでしょうか?
scala が XText を採用できるようになるというニュースを耳にしました。XText を活用してスレッド ロジックを記述できるようにするには、これが正しいかどうかはわかりません。
Scala は複数の言語が混在しているように見えますが、このアプローチを使用すると、この側面の問題をより拡張して解決できますか?
アップデート
さまざまな角度から素晴らしい回答をありがとうございます。それらはすべて非常に優れていると思います。どちら側に立っていても構いません。
編集
以下のトピック (SO で 1 年前) は、同様のことについて尋ねていました。「建設的な」結論は非常に似ています。でも、今回は新しいポイントが出てきているのかもしれません。参考までに。
関連している:
実際、私は誰かがこの質問にまったく新しい角度で答えて、私の心を啓発し、これまで知らなかったアイデアを提供できることに非常に興味があります.
しかし、建設的ではないため閉鎖されています。:-)