2009-10-01から1ヶ月間の記事一覧

イントロスペクション

Perlはグローバルな(myで宣言していない)変数のルックアップにはシンボルテーブルが使用されます。 シンボルテーブルとはハッシュであり、キーと値の対の集合です。 シンボルテーブルのキーとは変数名であり、値は変数名のグロブです。例えば以下のようなコ…

perlで電卓

コーディング中に電卓使いたくなることってありますよね。 % perl -de 1 Loading DB routines from perl5db.pl version 1.31 Editor support available. Enter h or `h h' for help, or `man perldebug' for more help. main::(-e:1): 1 DB p 10*10 100 DB …

日本語の取り扱い。

前提知識 Perlからみると文字列は2種類あります。ひとつは、僕たちが見ている文字列と一緒で、Shift-JIS、EUC-JP、UTF-8といったエンコードされた文字列です。これをバイト文字列と呼びます。もうひとつはバイト文字列をデコードして作成されるPerlの内部表…

In-Memory File

参考:http://blog.livedoor.jp/dankogai/archives/50681645.htmlPerl5.8以降からIn-Memory Fileという機能が使えるんだそうです。 #!/usr/bin/perl use strict; use warnings; use Devel::Size qw(total_size); my @array = (0x21..0x7e); my $memfile; ope…

Perlのメモリ管理

Devel::Sizeというモジュールをみつけた。 http://perldoc.jp/docs/modules/Devel-Size-0.58/Size.podこれを使えばPerlの変数がどの程度メモリを喰っているのかを調べることができる。 というわけで以下のようなコードを書いてみた。 #!/usr/bin/perl use st…