タグ

ブックマーク / moriyoshi.hatenablog.com (7)

  • Goならわかるシステムプログラミング第2版が出たので書評しますね - moriyoshiの日記

    少し前になりますが、3月23日に、渋川よしきさんの著された「Goならわかるシステムプログラミング 第2版 」が発売されました。初版と比べてかなり加筆されておりパワーアップしているので、初版をすでにお持ちの方でもさらに興味深く読むことのできる内容に仕上がっている、というのが第一印象です。 残念ながら初版発売時に記事にする機会がなかったのですが、あらためて今回書評したいなと思いましたので、徒然書いていきたいと思います。 このは実はシステムプログラミングのではないかもしれない 「システムプログラミング」とは何でしょう。正直私にもわかりません。その語をはじめに思い浮かべた人は、プログラミングという概念のその中にあえて「システムプログラミング」という分類を作ろうと思い至ったということですから、きっと「非システムプログラミング」というものもあるということでしょう。知らんけど。しかし、これは書の位

    Goならわかるシステムプログラミング第2版が出たので書評しますね - moriyoshiの日記
  • PHPEncode書いた - moriyoshiの日記

    The JUI 2009 Returnsに参加してきました。発表者の皆様お疲れさまでした!!!! JavaScript は柔軟な文法を持っていながら、ドメイン特化型言語として生まれた宿命か、何度もその寿命を宣告されてきた言語だと思いますが、今回の発表はそんなことを微塵も感じさせない、JavaScript の未来を予見させるような talk がいっぱいでとても触発されました!特に、JavaScript の未来型ユーザーインターフェイスについての知見を得ようとして参加したのですが、この期待を完全に、根から、裏切る*12 つの presentation が印象的でありました。 Yoshinori Takesako - Polyglot Yosuke Hasegawa - jjencode まあそんなわけで発表中に適当に手を動かして作りました。 PHPEncode です。 何をするためのもの?

    PHPEncode書いた - moriyoshiの日記
  • 「ユニコード」で予期せぬ目に遭った話 - moriyoshiの日記

    自分の知らないCJK Ideographのバリエーションがまだあったことに戦慄している pic.twitter.com/kUlyRLDDTM— moriyoshit (@moriyoshit) March 9, 2017 などというツイートをしたところ、思ったより反響があったのでまとめておく。 上記ではあいまいに「バリエーション」などと書いたが、Unicodeとそれを扱う環境においては、バリエーションと一口に言っても次のような状況がある。 意味論的に等価な異なる字形の集合 同じ字形で異なるコードポイントの集合 aは結構なじみ深いと思う。 a-1. 異なるコードポイントにそれぞれ異なる字形が割り当てられているもの 例: 「東」(U+6771) ⇔「东」(U+4E1C) 「斉」(U+6589) ⇔「齊」(U+9F4A) 「高」(U+9AD8) ⇔「髙」(U+9AD9) a-2. 同じコードポイ

    「ユニコード」で予期せぬ目に遭った話 - moriyoshiの日記
  • VMware Server 上で利用している Windows XP のイメージを KVM に移行する際、ブルースクリーン (0x0000007B) が出てしまう問題への対処法 - moriyoshiの日記

    ずっとこれで困っていて、いろいろ検索をしてみたのだけど、結果的に「Migrating Virtual PC Windows servers to KVM」の次の記述が役に立った。 To avoid getting a 0x0000007b / 0x7b BSOD on startup due to the mass storage controller changing, run the registry modifications in MS KB 314082. I save the text inside the “copy here” block to a .reg file and ran it before converting below, and it was enough. Migrating Virtual PC Windows servers to KVM KB314

    VMware Server 上で利用している Windows XP のイメージを KVM に移行する際、ブルースクリーン (0x0000007B) が出てしまう問題への対処法 - moriyoshiの日記
    msakamoto-sf
    msakamoto-sf 2009/11/16
    地味な記事だけど、地味に見えるけど原因がディープなだけに、助かります。
  • これまで作成した変態パッチを管理しているgithubのレポジトリ - muddy brown thang

    追記: 漏れていた 2 つのパッチを追加 追記2: git fetch が抜けていたので訂正 実はこれも発表の際に降れておくべきだったんだけど、PHP のソースコードの VCS が subversion に移行したおかげで git のミラーが実現し、楽しくパッチを VCS で管理しつつ upstream に追従するということができるようになった。これは実はすごく革命的なことで、 「一人に一つのPHP」 を実現するという野望に一歩近づいたのである。 というわけで、 Autoboxing と new Hoge()->method() を可能にするパッチ: http://github.com/moriyoshi/php-src/tree/PHP_5_3-autobox PHP をテンプレートエンジンとして進化させるパッチ: http://github.com/moriyoshi/php-src/

    これまで作成した変態パッチを管理しているgithubのレポジトリ - muddy brown thang
  • epollのなかみ - moriyoshiの日記

    よく C10K 問題とかいって epoll(7) の話が出てきて select(2) 遅いね poll(2) 遅いねってなるんだけど、正直なところ、これらのシステムコールを実際に使ってコードを書いてみたひとはどのくらいいるのだろう。ましてや eventpoll が何やってるか知っている人はそんなに多くないんじゃないだろうか。もう O(n) だの O(1) だのって煙に巻かれるのもうんざりだ。 というわけで、2.6.26 の fs/eventpoll.c のコードを読んでみた。正直 Linux カーネルにすごく詳しいわけでもないので、誤りがあったら適宜突っ込んでもらえると幸いです。 前提知識として VFS モジュールがどうなってるかとかは LinuxのFSモジュールを書いてみる LinuxのFSモジュールを書いてみる (その2) のソース中のコメントを追ってもらえればと。 登場する構造体 e

    epollのなかみ - moriyoshiの日記
  • JavaScriptで音を鳴らしてみよう - moriyoshiの日記

    id:Voluntasのおかげで自分的に再燃したブックマークレット熱。まあブックマークレットというと実用的な感があるけど、まったくそんなことはなく、要はワンライナーのこと。 いろいろ作ってみた中で、ちょっと汎用化できそうなものがあったので若干体裁を整えてみたのがこれ。仕組みは単純で、16KHz 8bitのwavファイルをオンザフライで生成して、それをdata:スキーム化した上で隠しiframeのsrcに突っ込んでいるだけ。なので、ブラウザ側にaudio/wavを再生できて、しかも自動再生してくれるプラグインが必須というところに注意。 追記1: undefinedとNaNの扱いでバグがあったので修正。 追記2: generateして余った分を切り取るspliceで符号が逆になっていたのを修正。ほんとすみません。 var SoundPlayer = { HEADER: "WAVEfmt\x20

    JavaScriptで音を鳴らしてみよう - moriyoshiの日記
  • 1