タグ

2015年10月10日のブックマーク (2件)

  • モナドの実装いろいろ - Qiita

    モナドと一口に言っても内部実装色々あるので、同じ機能のモナドを色々な書き方で書いてみます。 要件 あまり複雑にしてもアレなので、State,WriterとIOの制約くらいにしておきます。 インスタンスはFunctor, Applicative, Monadのみ 内部にIntで0開始のカウンタと、DList Logで表現されるログを持つ incr :: Int -> DSL ()でカウンタを増減し、ログにI iを追加 reset :: DSL ()でカウンタを0に戻し、ログにRを追加 current :: DSL ()で標準出力に現在のカウントを出力。文脈内でそれ以外のIOは不可能とする runDSL :: DSL () -> IO (Int, [Log])でDSLを実行し、最後のカウンタの値とログを返す。 Logデータ型はこんな感じにして共通に使用し、

    モナドの実装いろいろ - Qiita
    mono-hate
    mono-hate 2015/10/10
  • Apache PDFBoxライブラリを使ってPDF文書の表示(着手編) - torutkのブログ

    ときおり、PDF文書から任意のページを切り出したいということがあります。PDF文書を扱うのはAcrobat(≠Acrobat Reader)を購入するのが一番でしょうし、フリーのツールも多々存在しますが、ここはJavaでツールを作成してみたいと思います。 まず、第一歩としてPDF文書をページ単位でJavaで表示するPDFのビューアーを作成し、次にページを指定して切り出す機能を付けるという段階で進めていこうと考えました。 JavaからPDFを扱うオープンソースライブラリとしては、昔からの定番のiTextと、ApacheのPDFBoxが著名でしょうか。ぐぐっていると次のまとめページがありました。このページは分かりやすいです。 今どきのJavaPDFライブラリ まとめ (2014年版) | WEB ARCH LABO iTextは商用ライセンスとAffero GPLのデュアルライセンスです。A

    Apache PDFBoxライブラリを使ってPDF文書の表示(着手編) - torutkのブログ