この記事は以下のページに移転しました. blog.ryota-ka.me たまには初学者向けにライトな話題を. 対象読者 すごいH本を12章か13章ぐらいまでは読んだ do 構文を使って IO などの処理が書ける Haskell のプログラムはなんとなく書けるが,あまり綺麗に書けている気がしない IO の中で Maybe を使う 例として,以下のようなプログラムを考えてみよう. 2つの整数 a b を標準入力から1行ずつ順に読み込む a と b の和を標準出力に出力する 与えられた入力が整数でなかった場合には,その時点でエラーメッセージを出力し,プログラムを終了する これらの要件を満たすプログラムを素朴に実装するならば,以下のようになるだろう. import System.Exit (die) import Text.Read (readMaybe) readInt :: String -
write_nonblock(string, exception: true) -> Integer | :wait_writable[permalink][rdoc][edit] IO をノンブロッキングモードに設定し、string を write(2) システムコールで書き出します。 write(2) が成功した場合、書き込んだ長さを返します。 EAGAIN, EINTR などは例外 Errno::EXXX として呼出元に報告されます。 書き込んだバイト数(つまり返り値)は String#bytesize の値より小さい可能性があります。 発生した例外 がErrno::EAGAIN、 Errno::EWOULDBLOCK である場合は、その例外オブジェクトに IO::WaitWritable が Object#extend されます。よって IO::WaitWritable を wri
This post was adapted from a talk called “String Theory”, which I co-presented with James Edward Gray II at Elixir & Phoenix Conf 2016. My posts on Elixir and Unicode were also part of that talk. It’s been said that “the key to making programs fast is to make them do practically nothing.” Imagine you’re going to write some data to a file, or send a web response to a browser. What’s the minimum amo
This post was adapted from a talk called “String Theory”, which I co-presented with James Edward Gray II at Elixir & Phoenix Conf 2016. My posts on Elixir and Unicode were also part of that talk. IO Lists and Phoenix In my last post, I showed how Elixir’s IO lists enable us to build and write output with minimal work and memory usage. This is nice enough for writing files, but it’s absolutely kill
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く