前回
サンプルコードの実行
今回
予習
sbtログ
とりあえず、ワンファイルの実行環境を作ってみました
まとめ
- 今回は正格と遅延の話
- 関数型コードを記述するときに効率性を回復させるための手法(existsなどを見ても分かるように遅延評価でメモリの消費を抑えている)
- 非正格性は、式の記述をその評価の方法やタイミングから切り離すことで、モジュール性を向上させることを目的
- 同じ記述を複数のコンテキストで再利用することが可能となり、式の異なる部分を評価することで異なる結果が得られるようになる
- スマートコンストラクタ (追加の不変条件を満たすデータ型、あるいはパターンマッチングに使用される「本物」のコンストラクタとはシグネチャが少し異なるデータ型を生成する関数 ここではcons)
- サンクの処理が実行されるのは、サンクの強制的な評価が最初に行われたときだけ
- 遅延を利用することで、式の記述をその式の評価から切り離すことが可能
Scala関数型デザイン&プログラミング ―Scalazコントリビューターによる関数型徹底ガイド (impress top gear)
- 作者: Paul Chiusano,Rúnar Bjarnason,株式会社クイープ
- 出版社/メーカー: インプレス
- 発売日: 2015/03/20
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (6件) を見る