「Scalaスケーラブルプログラミング」1章

所感

  • Scalaの長所や狙いについて,概念はわかるが本質を実感できているのは半分もないと思う. でもそんなものと思ってまずは読み進める.
  • 共感する点
    • 並列計算で問題が起こらないように制約を課すというアプローチ
    • 副作用禁止
    • 簡潔性: 制約を課してエラーが起こりにくい形に制限していると期待
    • 静的な型: 複雑なアルゴリズムでは指定すべきと思う
  • まだ共感できない/わからなかった点
    • プログラム内の操作は,データの書き換えではなく写像であるべき
      • 確かに混乱した経験はあるがappendなどもそうすべき?
    • 新しい制御構造を作れる言語 … それって普通なことでは?と思ってしまう. 機能が実現できるのは普通だが言語としての見え方がよくなるのだろうか.

つまづいた概念

  • スレッドセーフ
    • コードに対して,並列に計算しても大丈夫であるという性質のこと
    • Map(PythonでいうDictionary)の例: 並列処理で更新されると確かに変になりそう
  • リテラル
    • 定数のこと
    • 整数リテラル,というと,整数とみなされる定数のこと