タグ

2008年10月13日のブックマーク (7件)

  • drutil and hdiutil. - With malice toward none

    CLI で ISO9660 image の作成/書き込みを行いたかったので MacPorts で cdrtools を導入しました……が。 mkisofs は他のプラットフォーム同様に使えたものの、 cdrecode の dev= に何を指定するか分からず、書き込みが行えませんでした :( 対処 これらは GUI では Disk Utility.app で行う作業です。Apple の事だから多分 Disk Utility.app の CLI があるだろうと探したところ、やはりありました。 機能ごとにいくつかに分かれていて diskutil(8), hdiutil(8), drutil(8) などがあるようです*1。 名称 機能 相当する別コマンド diskutil 主にローカルディスクに対する操作 fdisk, fsck など hdiutil ディスクイメージの作成や操作 mkisofs(

    drutil and hdiutil. - With malice toward none
    KGA
    KGA 2008/10/13
  • [haskell] How To Arrow3 選択 - 言語ゲーム

    import Control.Arrow newtype SF a b = SF {runSF ::[a]->[b]} instance Arrow SF where arr f = SF (map f) SF f >>> SF g = SF (f >>> g) first (SF f) = SF (unzip >>> first f >>> uncurry zip) instance ArrowChoice SF where left (SF f) = SF(\xs -> combine xs (f [y | Left y <- xs])) where combine (Left y:xs) (z:zs) = Left z: combine xs zs combine (Right y:xs) zs = Right y: combine xs zs combine [] zs = []

    [haskell] How To Arrow3 選択 - 言語ゲーム
  • [haskell] How To Arrow2 並置 - 言語ゲーム

    import Control.Arrow newtype SF a b = SF {runSF ::[a]->[b]} instance Arrow SF where arr f = SF (map f) SF f >>> SF g = SF (f >>> g) first (SF f) = SF (unzip >>> first f >>> uncurry zip) -- ではややこしい話の前に、Arrow の利点を強調する例。向こうからやって -- 来た数字の値を二倍したい。やってくるのは数字と分かっているが、数字 -- は一つかも知れないし、リストに入っているかも知れないし、IO 操作に関 -- する物かも知れない。なんと Arrow を使うと、同じ定義が、リストにもス -- カラにも(多分モナドにも)使える!ここ感動する所です! double :: (Arrow a, Num b)

    [haskell] How To Arrow2 並置 - 言語ゲーム
  • [haskell] How To Arrow 基本 - 言語ゲーム

    http://d.hatena.ne.jp/propella/20070807/p1 1:基 http://d.hatena.ne.jp/propella/20070807/p2 2:並置 http://d.hatena.ne.jp/propella/20070808/p1 3:選択 -- なんか知らんうちに Arrow 流行ってるようなので試してみる。 -- http://www.cs.chalmers.se/~rjmh/afp-arrows.pdf によると、ポイントフ -- リースタイルに IO を混ぜるのが Arrow だと考えればよいらしい。 import Control.Arrow -- Arrow では高階型を使いまくるので慣れないとちょっと恐ろしく見える。 -- Arrow は Monad と同じくクラスだが、Haskell で言うクラスとは他でいう -- インタフェース

    [haskell] How To Arrow 基本 - 言語ゲーム
  • Haskell/Understanding arrows - Wikibooks, open books for an open world

    We have permission to import material from the Haskell arrows page. See the talk page for details. Arrows, like monads, express computations that happen within a context. However, they are a more general abstraction than monads, and thus allow for contexts beyond what the Monad class makes possible. The essential difference between the abstractions can be summed up thus: Just as we think of a mona

  • ArrowによるHaskellプログラミングの基礎。…パイプ感覚で順次/分岐/繰返し - よくわかりません

    Programming with Arrowsを読んで理解したつもりのメモ。誤りなど乞うご指摘。 (復習)Arrowってなに? と思って以前調べたメモが"3分で解るHaskellのArrowの基メモ - よくわかりません"。それにちょっと補足というか観点を変えてまず感覚の整理。 Monadに色んな種類があるように、Arrowも色んな種類がある。 Monad: IO、Maybe、… Arrow: 関数そのまんま(->)、Kleisli m、… ある種類のMonadに色んな型の色んな値を入れられるように、ある種類のArrowに色んな型の色んな関数を入れられる。 Monad: Maybeの例→ 「Maybe Int」 にreturn 0もreturn 777もOK。「Maybe Char」 にreturn 'a'もreturn ' 'もOK。 Arrow: (->)の例→ 「Int -> In

    ArrowによるHaskellプログラミングの基礎。…パイプ感覚で順次/分岐/繰返し - よくわかりません
  • 3分で解るHaskellのArrowの基本メモ - よくわかりません

    語でArrowの説明があまり見付からなかったので、Haskell/Understanding arrows - Wikibooks, open books for an open worldを読んで理解したつもりのメモ。オリジナルの図を見ながらだと分かりやすいかも。誤り・間違いなど、乞うご指摘。 b->cな関数をArrowなるからくり箱に入れると、 (Arrow a) => a b c こんな型になる。型パラメタが、引数のbと返値のcのふたつ。 Monadは、値をからくり箱に入れたもの。からくり箱は基的に(ヘンな)値。 Arrowは、関数をからくり箱に入れたもの。からくり箱は基的に(ヘンな)関数。 arr :: (b -> c) -> a b c Monadでは、値をからくり箱に入れる関数returnがある。 Arrowでは、関数をからくり箱に入れる関数arrがある。 (>>>)

    3分で解るHaskellのArrowの基本メモ - よくわかりません