Scalaで関数型で行うための障壁を取り除くのがCatsの目標。それは技術的な複雑さ、職場で未知への恐怖、社会的な障壁。 長期的で協力的なコミュニティを促進していく。#ScalaMatsuri #sm_c
2016-01-30 12:11:49#ScalaMatsuri #sm_c 問題ドメインとコンピュータの間をつなぐモデルを僕達はやってる。
2016-01-30 12:12:29"1" == 1 これはコンパイル通るべきではない。 = soundではない #sm_c #ScalaMatsuri #ThinkingInCats
2016-01-30 12:16:11soundness (健全性) : 雑に考えると、コンパイル通れば実行時に変なことが起こらないこと #ScalaMatsuri #sm_c
2016-01-30 12:17:13=== トリプルイコールを定義してコンパイルが通らないようにする (CatsにもScalazある) #sm_c #ScalaMatsuri #ThinkingInCats
2016-01-30 12:17:34#ScalaMatsuri #sm_c soundnessの考え方で、"1" === 1 をコンパイルエラーにする。
2016-01-30 12:17:43オペレータの種類を自分で増やしていくのがfunctional programmingの考え方 #ScalaMatsuri #sm_c
2016-01-30 12:17:53Cats の具体的な話が聞けるのかなと思ってたけどヒストリカルなコラムみたいになってきた #ScalaMatsuri #sm_c
2016-01-30 12:18:41こうなってしまったとき=爆弾が爆発してしまったとき ではもう遅い(合成できない) #sm_c #ScalaMatsuri #ThinkingInCats
2016-01-30 12:20:46よくある2つの間違いは早すぎる具現化、合成可能性を設計段階で考慮しない #sm_c #ScalaMatsuri #ThinkingInCats
2016-01-30 12:21:16#ScalaMatsuri #sm_c 具現化を早くしないと安心できないのがあるんだよな。プログラムしてると。
2016-01-30 12:21:20External Diagram と Internal Diagram #sm_c #ScalaMatsuri #ThinkingInCats
2016-01-30 12:23:52Int => Int の実装が2^64通りでA => Aだと1通りしかない? #ScalaMatsuri #sm_c
2016-01-30 12:24:04