‘perl’ タグのついている投稿

[perl] ハッシュのスライスと多次元ハッシュのエミュレーション

2010年1月28日 木曜日

XML::Simpleのコードを読んでいると以下の様な表現が頻繁に出てきました。問題は8行目なのですが、ハッシュをリストコンテキストで扱っているのですが、初めて見る表現で、調べるのにも少し手こずったのでメモしておきます。

#!/usr/bin/perl
 
use Perl6::Say;
use YAML;
 
my @keys = qw(key1 key2);
my @vals = qw(val1 val2);
@dic{@keys} = @vals;   # 問題の行
say Dump \%dic;
 
# 出力は以下のようになります
# ---
# key1: val1
# key2: val2

(続きを読む…)

CoroとthreadsとForkManagerでウェブページ取得の比較をしてみた

2009年10月16日 金曜日

以前Coroで効率よくスクレイピングなどと書いたんですが、恥ずかしながら書いた時はCoroがコルーチンを意味しているとは知らず、マルチスレッドを扱うライブラリだと認識していました。もう少し理解したいという事で、以下の3つの方法で並列にHTTPリクエストを発行して、その比較を行ってみました。

  • Coroによるマルチスレッド処理
  • threadsによるマルチスレッド処理
  • ForkManagerによるマルチプロセス処理

(続きを読む…)

PadWalkerでmy変数のシンボルテーブルを取得する

2009年10月15日 木曜日

最近perlのスタッシュと言う単語を覚えました。所謂パッケージスコープのシンボルテーブルで特定のパッケージ内に定義されている関数や変数の情報を得る事が出来ます。詳細は以下のページが解り易かったです。

wakaponさんの備忘帳

さて問題は何かというと、上記ページにも書かれているように、my変数がスタッシュではなく、別のスクラッチパッドと呼ばれる領域に格納されるため、スタッシュからはアクセスできないという事です。

(続きを読む…)

perlでモジュールのimportとunimport

2009年10月15日 木曜日

perlでモジュールをインポートする時に何気なく使ってるuse Hogeですが、調べてみると少し思ってたのと違ってたので、調べた事をメモしておきます。

(続きを読む…)

[メモ] TheSchwartzのサンプルコード

2009年10月11日 日曜日

遅まきながらJobキューを使いたくて、あれこれかじっています。perlだとTheSchwartzがメジャーな雰囲気だったので試してみました。

(続きを読む…)