タグ

2008年12月25日のブックマーク (3件)

  • Amazon で送料無料のためにあわせて買う商品はこれが決定版かも

    Amazon で買いたいが1500円未満だったらどうするか ということを何度か話題にした。 【改訂版】Amazonで「もう少しで送料無料なのに」という時はこれを買おう – 頭ん中 ただ、値段調整のために 封筒とかプラスチックのケースとか 別に欲しくもないものを買っても仕方ないので 何かもっといいものはないかという声がちらほら。 何が「いいもの」かは人それぞれだけど、 いま個人的にはこれが決定版になるんじゃないかと思っている。 Amazon.co.jp: サラダクラブ – 品&飲料: 品&飲料 キューピーのサラダクラブシリーズ。 サラダをはじめとする料理に使えそうな素材が 使い切りサイズにパックされたやつ。 コーンやらオリーブやらを缶詰や瓶詰めで買うと 使い切れないくらいたくさん入っていることが多いんだけど サラダクラブのはひとパックが少量なので 無駄になることを心配せずに開封できるか

    Amazon で送料無料のためにあわせて買う商品はこれが決定版かも
  • バイナリファイルを解析する

    Perlといえばテキスト処理や正規表現が得意で、バイナリを扱うような話についてはあまり聞かない印象があります。Perlが持つ関数pack/unpack等でもバイナリ処理は可能ですが、今回はData::ParseBinaryを使ってバイナリファイルを気軽に解析してみましょう。 基 ファイルからストリームを作る 解析したいファイルをData::ParseBinaryで扱えるストリームに変換します。 use Data::ParseBinary; my $stream = CreateStreamReader(File => $file_handle); 解析したい構造を定義する Struct関数で解析したい構造を定義します。Struct以下には基データ型やコンテナ型、ビット/バイトパディング型、制御構文型等を使用できます。各型に指定したラベルが解析結果として得られるハッシュのキーとなります。

    dann
    dann 2008/12/25
    Data::ParseBinary
  • 定数関数の威力 - Islands in the byte stream (legacy)

    JPerl Advent Calendar 2008 第一日目でも紹介されているように,特殊な方法で宣言した関数*1は定数関数として特別に処理され,コンパイル時に展開される。 しかし,定数の展開はコンパイル時にしか行われない。つまり,実行時に呼び出す実体が決まるメソッドでは,たとえ実質的に定数であっても定数の展開は行われない。 それでは定数を返すメソッドを定数関数にする意味はないのかというと,実はそうでもない。定数関数は特殊な形式でコンパイルされる*2ので,メソッドとして呼び出しても速い。 ベンチマークの結果は以下の通り。 method: 通常のメソッド呼び出し,func: 通常の関数呼び出し,const_m: 定数メソッドの呼び出し,hashelem: ハッシュリファレンスの要素参照,const_f: 定数関数呼び出し(実質的に定数と同じ)。 Perl 5.8.9 on linux Ra

    定数関数の威力 - Islands in the byte stream (legacy)
    dann
    dann 2008/12/25