タグ

2009年3月16日のブックマーク (3件)

  • "The 20 Things: You Must Know About Music Online"翻訳にあたって | P2Pとかその辺のお話

    P2Pとかその辺のお話 WinMXとかWinnyとか、日ではろくな扱いを受けていないP2Pですが、海外ではけっこう真面目に議論されてるんですよというブログ。 しばらくの間、このブログの更新をお休みして、New Music Strategiesというウェブサイトの「The 20 Things You Must Know About Music Online」というe-bookの翻訳を行っていました。このでは、メジャーではなく、中小規模の展開を図っているレーベルやインディペンデントなアーティストのオンラインの活用とそのための戦略、心構えに関して20の重要なことをあげつつ、インターネットを手に入れた「これからのミュージシャンたち」がどのようにして自らの存在を広めていくのか、ということに焦点を当てています。 こののベースとなっているのは、筆者であるAndrew DubberのウェブサイトNe

  • memologue - UNIX上でのC++ソフトウェア設計の定石 (2)

    鉄則2: シグナルハンドラで行ってよい処理を知ろう sigaction関数で登録したシグナルハンドラで行ってよい処理は非常に限定されている 次の3つの処理だけが許されている 自動変数の操作 “volatile sig_atomic_t” 型の大域変数の操作 「非同期シグナルセーフ」関数の呼び出し これ以外の処理を記述しないこと! 説明: シグナル受信時に何らかの処理を行うためには、シグナルハンドラと呼ばれる関数を用意し、それをsigaction関数でシグナル名と紐付けておけばOKです。しかし、シグナルハンドラ内で行ってよい処理は、上記の通り非常に限定されています。これを把握しないまま奔放なコードを書くと次のような現象が起き得ます: 問題1: プログラムがデッドロックする危険がある タイミングに依存する、再現困難なバグの原因となる デッドロックの発生が典型例だが、それ以外にも関数の戻り値不正

    memologue - UNIX上でのC++ソフトウェア設計の定石 (2)
  • Perlの正規表現のバグ? (前編) - moriyoshiの日記

    「鬼車の[[:print:]]はPOSIX流じゃないらしい」でid:ockeghemさんやid:nihenさんと先週いろいろやりとりしてた中で、一つだけ解決していない問題があった。 utf8フラグが立っているかどうかでPOSIX文字クラスのマッチの挙動が変わるという件。 大変詳しい調査をありがとうございます。トラックバックのブログに書いたように、[:print:]の挙動は、Perlでもutf8フラグの有無でも変わってくるようです。[:print:]は実用できないなと思いました え?まじ?と思うも、一応Perlのコード例も出していたので検証しないわけにはいかない。以下のようなコードで試してみたが、utf8フラグが立っていない場合と同じ結果となり、再現しないのだ。 use encoding 'utf8'; for (split //, "\t\r\n a") { printf("%d:%d:%

    Perlの正規表現のバグ? (前編) - moriyoshiの日記