タグ

2015年11月9日のブックマーク (6件)

  • Haskellでなぜストリーム処理ライブラリが必要なのか - fujimuradaisuke's blog

    関数型ストリーム処理勉強会で発表したので、ブログにも書いておきます。 元になった資料はこちら Haskellでストリームデータを扱う方法としては、Handleを使う方法、Lazy IOがありました。しかし、それぞれに問題があり、再利用性が高く堅牢なコードを書くことは困難でした。 この状況を解決すべく、Conduit、Pipes、io-streamsなどのストリーム処理ライブラリが現れたのですが、そもそもそれらが必要とされた経緯は具体的にはどのようなものだったのでしょうか? 元ネタ: http://okmij.org/ftp/Haskell/Iteratee/talk-FLOPS.pdf ソースコード: https://github.com/fujimura/functional-stream-processing-meetup-sample そもそもストリームとは 必要に応じて処理されるデ

    Haskellでなぜストリーム処理ライブラリが必要なのか - fujimuradaisuke's blog
  • モナド基礎勉強会vol2(#monadBase)で「米田の補題」の話をして来ました - Creatable a => a -> IO b

    はいはいどうも、花粉症で鼻水じゅびじゅばなちゅーんさんです、おこんばんわ。 色々あって現在求職中なのもあり、自分の書きたいコードをゴリゴリ書いたり、理論的な事をがつがつ勉強したりする良い時間を作れていて、だいぶ下請けPG時代に貯まった疲れも取れてきたのかなぁとか思ったりしてます。 これを期に手をつけはじめた事が色々あるので、そのうちいくつかでも自分の中でケジメを付けるまで、もうちょっとのんびりしたいなぁと思い、寄生している実家の母親の顔色と、銀行口座残高とにらめっこしつつ、やりたいようにやってる感じです。 さて、そんな機会を使って、名古屋で開催された「モナド基礎勉強会vol2」へ足を運んで登壇させて頂きましたので、今日はそのレポートというか、雑記みたいなエントリです。 どんな勉強会だったのか こんなんです xbase.connpass.com 「基」ではなく「基礎」ですから、午前の部でが

    モナド基礎勉強会vol2(#monadBase)で「米田の補題」の話をして来ました - Creatable a => a -> IO b
  • Haskellで学ぶ圏論・入門編 写像を対象に - bitterharvest’s diary

    1.圏の定義 一般的に、圏は次のように定義されている。圏は5つの要素と二つの条件により構成される。5つの要素は次のようになっている。 (1) 対象 圏は対象を有する。対象は、通常は大文字を用いて、\(A,B,C,..\)と表す(対象は多くの場合何かの集まりである。例えば、集合などが対象になる。しかし、集合の要素はこの場合対象とはいわない)。 (2) 射 圏は対象(複数の場合も可)から対象(こちらも複数の場合可)へ移す射を有する。射は、通常小文字を用いて、\(f,g,h,..\)と表す(これまで習ってきた関数は射となるが、射となるのは関数だけではない。これから説明するモノイドの場合はこれまでの関数とは異なる)。 (3) ドメインとコドメイン 射の出発(入力)側の対象をドメインといい、到着(出力)側の対象をコドメインという。 (4) 恒等射 射は恒等射\(id\)を有する。恒等射は自分から自分

    Haskellで学ぶ圏論・入門編 写像を対象に - bitterharvest’s diary
  • 子育てプログラマ・ITエンジニア・Webデザイナー Advent Calendar 2015 - Adventar

    ※満席になったのでPart 2を用意しました!参加したい方はこちらへ => Part 2 3年前に開催された子育てエンジニア advent calendarの2015年版です。(といっても僕は主催者ではありませんでしたが) お子さんがいるプログラマ・ITエンジニア・Webデザイナー・その他IT関連のお仕事に就いている方であれば、男性、女性、お子さんの年齢を問わず、誰でも参加可能です。 子育てが関連すればテーマも自由です。 テーマ例: 子どもが生まれる前と生まれた後で変わったこと(良かったこと、困っていること) 育児と自分の勉強を両立する方法 もうすぐ子どもが生まれそうなエンジニアさんへのアドバイス 子どもが3歳でプログラミングを覚えました etc 子どもが生まれると生まれる前では、多かれ少なかれ環境や心境の変化があったはず。 みんなで知見を共有して、有意義な子育て&エンジニアライフを送りま

    子育てプログラマ・ITエンジニア・Webデザイナー Advent Calendar 2015 - Adventar
  • Android 6.0 の Runtime Permissions (M Permissions) に対応するためのアクティビティ図 - visible true

    M Permissionsをやっつけようという事でAPIやドキュメントを眺めたらそれなりにシンプルだなと思っていたけど実際手を出してみるとすごくややこしかったのでアクティビティ図にした。気をつけるべき点を後述する。 targetSdkVersionの違いによる挙動 アプリのtargetSdkVersionによってインストール時の挙動が異なる点についてはドキュメントに書かれている。 Requesting Permissions at Run Time | Android Developers If the device is running Android 5.1 or lower, or your app's target SDK is 22 or lower: If you list a dangerous permission in your manifest, the user ha

    Android 6.0 の Runtime Permissions (M Permissions) に対応するためのアクティビティ図 - visible true
  • Comparison to Scala

    Edit Page Comparison to Scala The two main design goals for Kotlin are: Make compilation at least as fast as Java Keep useful level of expressiveness while maintaining the language simple as possible Taking this into account, if you are happy with Scala, you probably do not need Kotlin What Scala has that Kotlin does not Implicit conversions, parameters, etc In Scala, sometimes it’s very hard to t