HaskellでTwitterにTweetする

HaskellでTwitterにTweetする

About

Detail

 成果物のコードのベースつまり大部分はyunomu氏のモノです、感謝 :P

  • したこと
    • コードを少し整理した ( 少し )
      • 動かなくなっていたところを直した
      • Twitter API 1.1用のコードにした ( 少しの書き換え )
      • Readインスタンスの型の値を外部ファイルから読み込んでみた ( ちゅーんさんの教え、Thanks :P )
    • Conduitがどのようなものなのかを少し勉強した ( 少し )
    • 美しい型の海を泳ぐ ( 綺麗 ( モナドトランスファーわかってません ) )
      • Conduitの($$+-)関数を探し回っていた (Source型とResumableSource型の問題)
      • すごい人が「モナドトランスファーはliftIOするとなんかIOが動く」って言ってたの、本当だ…って思った

 面白かった話の一つとして、設定を外部ファイルに持つときに僕はyamlを使おうとしていたのだけど、
ちゅーんさんが「Haskellで読み込みたい設定値がReadインスタンスの型の値なら、read(とreadFile)だけで読み込める」(要☆約)
って言ってたから「確かに!!」ってなったというのがありました。 すごいです。 しゅごいい。

こんなん。

readFooSetting :: IO SomeType
readFooSetting = do
  foo <- read <$> readFile "path/to/config_file"
  return foo

 設定値を1つのファイルにまとめなくていいケースであれば、yamlやjsonすらいらないね!! すごい!!

ほげ

 そういえばyunomu氏のブログ記事にsignOAuth関数の型にMonad__Unsafe__IOというのがあったけれど、 今のバージョンだとちゃんとUnsafeじゃなくなってたのでよかった。(大丈夫)

筆者プロフィール

my-latest-logo

aiya000(あいや)

せつラボ 〜圏論の基本〜」 「せつラボ2~雲と天使と関手圏~」 「矢澤にこ先輩といっしょに代数!」を書いています!

強い静的型付けとテストを用いて、バグを防ぐのが好き。Haskell・TypeScript。