2010-05-01から1ヶ月間の記事一覧

なぜPerlで例外処理のfinallyが特に必要と感じないかを考えてみた

Perl › 読み物 Perlでは例外を発生させるにはdieを使います。これはJava言語でいうthrowにあたります。例外をキャッチするにはevalを使用します。これはJava言語でいうcatchにあたります。例外が発生したかどうかは$@にメッセージが設定されたかで判定できま…

utf8 - ソースコードのUTF-8で書かれた文字列を内部文字列に変換

Perl › モジュール › here utf8モジュールを使用すると、ソースコード中のUTF-8で記述された文字列を内部文字列に変換することができます。 # ソースコード中にUTF-8で書かれた文字列を内部文字列に変換 use utf8; my $message = 'あいうえお'; ソースコード…

Cwd - カレントディレクトリのパスを取得する

Perl › モジュール › here Cwdモジュールを使用すると、カレントディレクトリのパスを取得できます。 # モジュールの読み込みと関数のインポート use Cwd 'getcwd'; カレントディレクトリのパスを取得するにはgetcwd関数を使用します。 # カレントディレクト…

lib - モジュールの検索パスを追加

Perl › モジュール › here libモジュールを使用すると、モジュールの検索パスを追加することができます。 # モジュールの検索パスを追加 use lib 'home/user/local/lib'; Perlにおいては、モジュールの検索パスの一覧は特殊変数「@INC」に格納されていますが…

FindBin - スクリプトが存在するディレクトリのパスを取得

Perl › モジュール › here FindBinモジュールを使用すると、スクリプトが存在するディレクトリのパスを取得することができます。 # モジュールの読み込み use FindBin; スクリプトが存在するディレクトリのパスは$FindBin::Binというパッケージ変数に代入さ…

Storable - データをシリアライズ化する

Perl › モジュール › here Storableモジュールを使用すると、データをシリアライズ化することができます。シリアライズ化というのはPerlのデータ構造を外部に保存できる形式に変換することをいいます。 # モジュールの読み込みと関数のインポート use Storab…

Sys::Hostname - ホスト名を取得する

Perl › モジュール › here Sys::Hostnameモジュールを使用すると、ホスト名を取得することができます。 # モジュールの読み込みと関数のインポート use Sys::Hostname 'hostname'; ホスト名を取得するにはhostname関数を使用します。 # ホスト名の取得 my $h…

Net::Ping::External - OSに依存しない形でpingコマンドを実行する

Perl › モジュール › here Net::Ping::ExternalモジュールはOSに依存しない形でpingコマンドを実行するためのモジュールです。 # モジュールの読み込みと関数のインポート use Net::Ping::External 'ping'; pingコマンドを実行するにはping関数を使用します…

Net::Ping - リモートホストの生存確認

Perl › モジュール › here Net::Pingモジュールを利用すれば、リモートホストの生存を確認することができます。 # モジュールの読み込みとオブジェクトの作成 use Net::Ping; my $p = Net::Ping->new; リモートホストの生存を確認するにはpingメソッドを使用…

MIME::QuotedPrint - quoted-printable形式にエンコード

Perl › モジュール › here MIME::QuotedPrintモジュールを使用すると、データをquoted-printable形式にエンコードすることができます。 # モジュールの読み込みと関数のインポート use MIME::QuotedPrint qw/encode_qp decode_qp/; quoted-printable形式にエ…

MIME::Base64 - base64形式にエンコード・デコード

Perl › モジュール › here MIME::Base64モジュールを使用すると、データをbase64形式にエンコードすることができます。 # モジュールの読み込みと関数のインポート use MIME::Base64 qw/encode_base64 decode_base64/; base64形式にエンコードするにはencode…

Getopt::Long - コマンドラインオプションを処理する

Perl › モジュール › here Getopt::Longを使用するとコマンドライン引数のオプションを処理することができます。 # モジュールの読み込みと関数のインポート use Getopt::Long 'GetOptions'; コマンドライン引数で次のようなオプションを指定する場合を考え…

Archive::Tar - tarファイルの作成と展開

Perl › モジュール › here Archive::Tarを使用すると、tarファイルを展開あるいは作成することができます。 # モジュールの読み込みとオブジェクトの作成 use Archive::Tar; my $tar = Archive::Tar->new; メモリ上にtarファイルの情報を読み込むにはreadメ…

Benchmark - ベンチマーク(性能比較)を行う

Perl › モジュール › here Benchmarkモジュールを使用すると、ベンチマーク(性能比較)を行うことができます。 # モジュールの読み込みと関数のインポート use Benchmark qw/timethese cmpthese/; timethese関数を実行すると各関数の性能情報を取得できます。…

Devel::NYTProf - 見やすいプロファイラ

Perl › モジュール › here Devel::NYTProfはプログラムの中のどの処理に時間がかかっているかを調べるツールです。このようなツールをでプロファイラといいます。解析結果をHTMLファイルに変換してくれるので、とても見やすいです。 プロファイルを作成する…

Devel::DProf - シンプルなプロファイラ

Perl › モジュール › here プログラムを実行しても必要なパフォーマンスが得られないことがあります。どの部分がボトルネックになっているのかを調べるのは簡単なことではありません。プロファイラと呼ばれるツールを利用すればプログラムの中のどの処理で時…

CPAN - CPANからモジュールインストール

Perl › モジュール › here CPANモジュールを使用すればCPANからモジュールインストールすることができます。CPANは無料で利用できるモジュールがたくさん集められたサイトです。CPANモジュールはコマンドラインから利用することが想定されており、cpanコマン…

Digest::SHA - SHAによるダイジェスト値を求める

Perl › モジュール › here Digest::SHAモジュールを使用すると、各種SHAの値を求めることができます。SHA-1値を求めるには以下の関数を使います。 # モジュールの読み込みと関数のインポート use Digest::SHA 'sha1_hex'; sha1_hex関数を使用するとSHA-1の値…

Digest::MD5 - MD5を使ったダイジェスト値

Perl › モジュール › here Digest::MD5モジュールを使用すると、MD5を使ったダイジェスト値を求めることができます。 # モジュールの読み込みと関数のインポート use Digest::MD5 'md5_hex'; md5_hex関数を使用するとMD5の値を32桁の16進数の文字列として取…