タグ

ブックマーク / unknownplace.org (3)

  • OSX で tmpfs 的なことをする方法 - unknownplace.org

    MacBook Air 上で Test::mysqld なテストを走らせていると SSD の寿命縮めそうだなーとおもって tmpfs 的なものが OS X にもないものかと検索したら hdid(8) でできるとのこと。 man の一番下のほうに例が載っている。 $ hdid -nomount ram://128000 /dev/disk1 これでメモリから128000セクタ(1セクタ512バイトなので62.5MB)分とって仮想ディスクをつくり、 $ newfs_hfs /dev/disk1 Initialized /dev/rdisk1 as a 63 MB HFS Plus volume HFSで初期化して、あとは普通に $ mkdir /tmp/mnt $ mount -t hfs /dev/disk1 /tmp/mnt でマウントすればOK。 作ったディスクの破棄には $ hdidu

  • PerlエンジニアのためのObjective-C Blocks入門 - unknownplace.org

    OS X 10.6 以降の xcode では Objective-C に Blocks というシンタックスが追加されている。 Blocks Programming Topics: Introduction Perl でいうところの無名関数(コードブロック)を作ることができる機能で、Perlでいうところの my $f = sub { ... }; $f->(); は void (^f)() = ^{ ... }; f(); のように書ける。書式がきもいのはObjective-Cの定めなのであきらめましょう。 より詳しい書式については上記ドキュメントを見ると良い。 しかしデフォルトではPerlのコードブロックとはレキシカル変数の扱いが異なる。 my $i = 0; my $f = sub { return $i + 1 }; $i++; $f->(); # 2 を返す perlではこのようにレ

  • local::lib を切り替える - unknownplace.org

    レガシーなアプリをメンテするのにレガシーな Perl モジュールが必要になることがあり、そのために古いアプリ用には専用の local::lib ディレクトリを切っているわけですが、普段から日常的に local::lib を使用しているため shell が上がったタイミングではデフォルトの local::lib 環境変数がセットされていて切り替えが非常に面倒だった。 これまではそれほど頻繁に使用しなかったので放置していたのだが、ここのところ頻繁に必要になるためいい加減うざくなってきて簡単に local::lib を切り替えられるよう設定をしてみた。 zsh に次のような関数をつくり、それで local::lib を切り替えるようにする。 function locallib () { INSTALL_BASE=$1 if [ -d $INSTALL_BASE ]; then eval $(~/

  • 1