ブックマーク / gfx.hatenadiary.org (3)

  • MouseX::Foreign (a port of MooseX::NonMoose) released! - Islands in the byte stream (legacy)

    ずっとやろうと思っていてやっていなかったMooseX::NonMoose の Mouse版をようやく書き上げました。なかなか完成しなかったのは、いい名前が思いつかなかったのと、Mouse体に組み込めるかどうかの検討をしたかったからです。検討の結果、Mouse体に組み込むのは無理があるという結論に達したため、モジュールとしてリリースすることにしました。 http://search.cpan.org/dist/MouseX-Foreign/ http://github.com/gfx/p5-MouseX-Foreign 以下のようにすることで、Mooseクラスを含む任意のクラスを継承できます。ただし、ハッシュリファレンスベースのオブジェクトでなければならないのと、複数の「foreign class」を親に持つことができないという制限はありますが。 #!perl package MyDate

    MouseX::Foreign (a port of MooseX::NonMoose) released! - Islands in the byte stream (legacy)
    cou929
    cou929 2013/01/22
  • source-mapを可視化する - Islands in the byte stream (legacy)

    source-mapは非常に期待のできる技術だが、軽く仕様を読んでもどのように動くのかよくわからない。そこで、souce-mapを可視化するツールを作ってみた。source-mapの処理にはmozillaのJavaScriptによる実装を使った。 左がオリジナルのソースコード、右がclosure compilerで最適化したコードである。具体的なコマンドラインオプションは以下のrepositoryのMakefile参照のこと。要素から要素への線はcanvasを利用した。ChromeとFirefoxでのみ確認したので、他のブラウザではうまく表示できないかもしれない。 demo repository 改良の余地はあるものの、とりあえずこれでデバッグできるようになった。

    source-mapを可視化する - Islands in the byte stream (legacy)
  • Re: Perlスクリプトの一行目には何と書くべきなのか - Islands in the byte stream (legacy)

    Re: Perlスクリプトの一行目には何と書くべきなのか もしCPAN形式でスクリプトを配布するなら、それは#!/usr/bin/perlないし#!perlとするべきで、env(1)を使うべきではないと思います。 CPAN形式のディストリビューションでは、インストールするスクリプトのshebang行をインストール直前に修正し、正しいパスに書き換えてくれます。ただし、このルーチン*1はいまのところenv(1)を認識してくれません。つまり、env(1)を使った場合、インストールに使用したperlと実際に実行されるperlが一致するとは限りません。perlを一つしかインストールしていないシステムなら、これでも問題なく動きます。しかし最近では、システムにインストールしてあるperlには触らず、アプリケーション用のperlを別途perlbrewなどでインストールしてそちらを使うということもよく行われ

    Re: Perlスクリプトの一行目には何と書くべきなのか - Islands in the byte stream (legacy)
  • 1