perl

perlの単体テスト

概要 ちょっと用があって、perlでプログラムを書くことになりました. 少し規模感のあるプログラムなので、単体テストが無いと不安だなぁ…等と思い立って、perlでの単体テストについて調べてみました. せっかくなのでメモを公開しておきます.【目次】 Test::S…

Perlでもテスト

理解できない人には、なかなかその良さを理解してもらえないテストファーストですが、 私は結構好きです。べつにテストファーストにこだわっている訳じゃないけれども、開発をしてれば簡単な テストコードとか、動きを確認するための軽量なスタブなんかは作…

cpanを使ってみる

そんなわけで、軽くcpanを使って、モジュールを入手してみましょう。 わかりやすいところで、XML::DOMのインストールをしてみます。手始めにこんなスクリプトを書いてみました。 #!/usr/bin/perl use utf8; use strict; use warnings; use XML::DOM; my $a_p…

cpanの設定

折角cgiを動くようにしたんで、もう少し環境整備を進めておくことにします。やはり、何がなくともcpanを使えるようにしてみることが先決です。perl屋さんたちにとってみれば、cpanってのはあって当たり前の存在なんだろうけど、 私に取ってはよくわからない…

ディシプリンについて 補足

STDIN / STDOUT をバイナリとして取り扱いたかったんですが、どうもうまくいかなくてはまっていました。最初に大きな思い違いをしていたのが、":bytes"の指定で binmode(STDIN, ':bytes'); binmode(STDOUT, ':bytes'); とすることで、バイナリとして取り扱え…

ディシプリンについて 1

id:It_lives_vainly:20080310 で書いた、Perlの文字コード変換の話の続きっぽい話です。さて、perlでは、ファイルハンドルのフォーマットを指定するための、binmodeっていう関数が用意されています。これは、バイナリファイルなんかを取り扱いたいときにお世…

PerlMagick

ちょいと用があって、PerlMagickを使ってみたくなりました。windows XP上で動いている、ActivePerl 5.10.0 から使いたかったんですけど、インストールで躓いたのでメモを残しておきます。○ ImageMagick のインストール以下のサイトから、ImageMagick のダウ…

Perlの文字コード変換の話

なんかよくわからないけど、なんとなく理解したことをまとめてみました。id:It_lives_vainly:20080304 id:It_lives_vainly:20080305 id:It_lives_vainly:20080306 id:It_lives_vainly:20080307 id:It_lives_vainly:20080308 id:It_lives_vainly:20080309困っ…

Perlの文字コード変換の話 其の六

○ PerlIO に指定したエンコードの切り替えまれに、PerlIOに指定したエンコードを途中で切り替えたい時がある。このような場合には、次のようにエンコードの指定を行う。 use utf8; use strict; use warnings;binmode( STDOUT, ':encoding(utf-8)' );my $a_da…

Perlの文字コード変換の話 其の五

○ Encode::encode() / Encode::decode() utf8フラグとPerlIOは、Perl 5.6 以降では超重要な概念となる。 PerlIO に文字エンコードが指定されていた場合、渡す文字列はutf8フラグが立っている 文字列が期待される。 逆に、文字エンコードが指定されていない場…

Perlの文字コード変換の話 其の四

○ PerlIO のエンコード指定PerlIO にエンコードを指定する場合、binmode() を用いる。以下に例を挙げておく binmode( STDIN, ':encoding(shiftjis)' ); # STDIN を shiftjis として扱う binmode( STDOUT, ':encoding(shiftjis)' ); # STDOUT を shiftjis と…

Perlの文字コード変換の話 其の参

○ PerlIOPerl 5.6 以降からは「入力 -> Perl内部処理 -> 出力」の橋渡しをするためのレイヤーとして PerlIO というものが存在している。PerlIO に対して使用するエンコードを指定することができる。PerlIOに文字コードが指定されている場合、utf8フラグの立…

Perlの文字コード変換の話 其の弐

○ use utf8 プラグマを用いた場合の挙動use utf8 プラグマを用いた場合、次のような挙動をする。 ソースコードに含まれている定数文字列にutf8フラグを立てる PerlIO レイヤは、*何もしない* 変数にマルチバイト文字が使える 三番目の変数にマルチバイト文字…

Perlの文字コード変換の話 其の壱

○ スクリプト記述時に推奨される文字コードperldocより http://perldoc.jp/docs/perl/5.8.1/utf8.pod このプラグマは、そもそも、互換性のための工夫です。 Perl 5.6未満のバージョンでは、ソースコード中の恣意的なバイト列を許していました。ですが、将来…

Encode についての備忘録

全然だめっぽいです。明日の作業のための、メモになってしまいました...ちうか、わかりづらくね? ○ use encoding についてuse encoding プラグマを用いることで、標準入出力の文字コードが指定できる use encoding 'utf-8'; # STDIN / STDOUT を utf-8 に指…