Scala勉強会第53回 (EitherやScalazのValidationについて)
昼間からの、勉強会とは直接関係ないtweet( でもScalaやScalazには関係する )とかも自分の好みで含めてるけど気にしちゃだめだ!
自分がblogに書いた、EitherとかScalazのValidationについて、もにょもにょしました。スライドなくてすいません(´・ω・`)
http://d.hatena.ne.jp/xuwei/20110927/1317156625
ねこはる
@halcat0x15a
しかしscalaでapplicativeやるとちょっと残念な感じだな。 カリー化したやつじゃないといけなし、結合の順序とかも。 forでいい気がしなくもない。
2011-09-28 22:36:03
Toshiyuki Takahashi
@tototoshi
scalazのValidation、Validationって名前がついてるんだからValidationのためのものなんだろうし、一般的なエラー処理を扱うものではないのでは?普通にエラー処理したいとこにValidationってのが出てきたら不思議なような。
2011-09-28 23:31:23
Toshiyuki Takahashi
@tototoshi
Eitherは2つのものを振り分け?るものでそういうそもそもな話をするとエラー処理よりも範囲が広いけど、ソースのコメントにも書いてある通り一般的にエラー処理に使われることが多いのだから普段のエラー処理にはこっちを使うのがお行儀としてはいいのでは。
2011-09-28 23:34:43
kmizu
@kmizu
@akihiro4chawon 任意の型A, B について、Union[A, B] と Union[B, A] が型として等しいような union typeの事を指しておられます? #scalajp
2011-09-28 23:40:17
akihiro
@akihiro4chawon
@kmizu えっと、私の意図としては、A =:= Union[A] =:= Union[A, A] ... (後略) が成り立ち(型引数の重複は無視される)、かつ、おっしゃるとおり型引数の順序は問わないというつもりでした。いわば、with の双対をイメージしていました。
2011-09-29 01:25:01
akihiro
@akihiro4chawon
@kmizu で、cowith[A, B] なるものが作れたとすれば、仕様霊的には、var intOrStr: Int cowith String = _; intOrStr = 1; intOrStr = "foo"; みたいにできると。そんな感じです。
2011-09-29 01:28:05