Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    pocketberserker
    @pocketberserker
    milestoneが7.2になっているやつ、7.3とかにずらしたほうがよいのでは?
    milestone自体消すという手もありますが
    kenji yoshida
    @xuwei-k
    そうですねー。milestoneほとんど有効活用されてないし、一旦全部外すか
    kenji yoshida
    @xuwei-k
    もう放置され過ぎで謎だったり、scalaz関わらなくなった人が作ったissueも閉じるか
    kenji yoshida
    @xuwei-k
    あまりScalaの会社って感じしないな https://github.com/stripe
    あっ、でもspireのコミット数2位の人がいるところか https://github.com/tixxit
    そういえばなんかあった(なんのライブラリかはよくわかってない) https://github.com/stripe/brushfire
    kenji yoshida
    @xuwei-k
    scalaz/scalaz#1067 猫を観察していた甲斐があった
    kerr
    @hepin1989
    @xuwei-k don't have a scalaz/scalaz gitter channel?
    kenji yoshida
    @xuwei-k
    scalaz/scalaz#1063 誰かJava 8のtime詳しい人いないですかね・・・。反応無いけどそろそろ勝手にmergeするかな
    Tsukasa Kitachi
    @kxbmap
    普通に使ってはいたけど詳しくはない
    YearLocalDateEnumのインスタンスになってるけど、テストはorder.lawsでいいのかな?
    kenji yoshida
    @xuwei-k
    おっ、よくない気がする。直そう。ありがとうございます
    Tsukasa Kitachi
    @kxbmap
    YearMonthplus/minusMonthsEnumにできそう
    kenji yoshida
    @xuwei-k
    なるほど?それもやってみるか
    Tsukasa Kitachi
    @kxbmap
    あれ?EnumLawみるとsucc(pred(x))とかできなきゃいけないのか
    としたら、↑のやつはみんな例外吐いちゃうな
    kenji yoshida
    @xuwei-k
    Arbitraryもしっかり作ろうとすると面倒だった。本当はscalacheckがJava7サポート切り捨てれば、scalacheck側に存在してていいやつ・・・
    scalacheckがJava7サポート切り捨てない間、あの数十行を「scalacheck-java8」みたいな独立したライブラリにしてもいいのだけど、流石に面倒だしなぁ
    kenji yoshida
    @xuwei-k
    たしかに、このあたり https://github.com/scalaz/scalaz/blob/16c51d6ddda443a0faf0deea6eb9a4e6a31a1b45/core/src/main/scala/scalaz/Enum.scala#L196-L200 満たせそうにないから、テスト側修正じゃなくて、YearとかはEnumにするの諦めたほうが良い気がしてきた
    もしくはminやmaxをNoneのままにしておけばいいのか?
    Tsukasa Kitachi
    @kxbmap
    HaskellのEnumはsucc maxBoundは実行時エラーなのか
    Tsukasa Kitachi
    @kxbmap

    もしくはminやmaxをNoneのままにしておけばいいのか?

    これでいい気もする
    Year.MAX_VALUEでsuccが例外なのはBigIntがメモリ一杯まで使ったらsuccで例外になるのと同じだという理屈でいけば……

    あるいは諦める
    kenji yoshida
    @xuwei-k
    Noneにした
    HaskellのEnumとscalazのEnumが微妙に違ってるのとか、そもそもEnumのlawあれでいいのか、型クラスもっと細かく分けることも可能では?みたいな細かい論点あると個人的に思ってるけど、
    面倒なので議論してない
    Tsukasa Kitachi
    @kxbmap
    あと細かいとこいえばMonth.of(x).maxLengthとかMonth.of(x).length(Year.of(y).isLeap)でdayの最大値取れるよとか
    前にjava.timeのArbitrary書いたことあるの思い出した。pushし忘れててOSクリーンインストールしたときにプロジェクトごと消しちゃったけど
    kenji yoshida
    @xuwei-k
    https://twitter.com/mandubian/status/678237503074279425 Idrisの移植だったの・・・!?
    kenji yoshida
    @xuwei-k
    argonautがissue整理してるし、そろそろscalaz7.2に依存したやつが出る予感
    kenji yoshida
    @xuwei-k
    etorreborre/specs2@1dcb392 specs2にeff入った
    kenji yoshida
    @xuwei-k
    つよいなー。猫がますます広まるのか(?)
    Kazunari Mori
    @kazzna
    ドワンゴで口の悪い人を雇うしか(?)
    kenji yoshida
    @xuwei-k
    scalaz 7.2 をリリースしたらあまりやることなくて、若干やる気が消失している・・・。scala-js対応でも真面目にやるか否か・・・
    Mathias Sulser
    @suls
    失礼しますがScalazのFree Applicativeの例がありますか?
    Sanshiro Yoshida
    @halcat0x15a
    @suls Scalazではないですが私の記事にFree ApplicativeによるOption Parserの例を書いています。
    http://halcat.org/scala/freeap/index.html
    Junichi Kato
    @j5ik2o
    FreeとReaderを組み合わせた実装について質問です
    https://gist.github.com/j5ik2o/e99968bcdbe5d3555ad7
    kenji yoshida
    @xuwei-k
    そもそもasInstanceOfで無理やり型合わせてるところが合ってない(キャストエラー起きる)気がする
    あとは type R[A] = Reader[A, Account] だと、原理的に普通Monadにならないですね。 type R[A] = Reader[Account, A] ならMonadになるだろうけど
    Junichi Kato
    @j5ik2o

    あざす。
    https://gist.github.com/j5ik2o/e99968bcdbe5d3555ad7

    書き換えてみた。だいたいやりたいことができた。もうちょっと勉強します

    pocketberserker
    @pocketberserker
    ここで尋ねるべき事案だった(?)
    https://twitter.com/pocketberserker/status/697616173353947136
    pocketberserker
    @pocketberserker
    ということで募集開始しました
    http://connpass.com/event/27049/
    Kuchitama
    @Kuchitama
    :+1:
    kenji yoshida
    @xuwei-k
    何話そう・・・
    pocketberserker
    @pocketberserker
    shapeless+Scala.js?
    lyrical logical
    @lyricallogical
    shapeless ってカバーしてる範囲広いので実際何話せばいいか難しいですねえ
    lyrical logical
    @lyricallogical
    List.empty[Kleisli[A \/ ?, B, C]].sequenceU はいいのい type T[B, C] = Kleisli[A \/ ?, B, C]; List.empty[T[B, C]].sequenceU は駄目なのなんなんですかね…