連載
モダンPerlの世界へようこそ
Perlが誕生して早20年。Perl 5が登場してからでさえもう15年になろうとしています。
人の子が,たどたどしい赤ちゃん言葉から,無邪気な子供言葉,背伸びをした思春期の言葉,落ち着いた成人の言葉へと,だんだん物の言い方を変えていくように,Perlの言葉も,この5年,10年でずいぶん変わってきました。
人を傷つけるような言い方を避けるのはもちろん,なるべく明瞭で筋の通った言い方になるよう,慣用句の使い方などにも工夫をこらすようになりましたし,自分たちとは異なる世界に暮らす人たちの言い回しを取り入れて表現の幅を広げたり,言葉の正しい使い方をめぐって審議が行われるようにもなってきています。
ただし,だれもがPerlとともに成長してきたわけではありません。早くに社会に出てしまい,揺籃期のPerlしか知らない人もいれば,いきなり大人言葉の渦に巻き込まれて目を白黒させている人もいるでしょう。
この連載では,そのようなPerlの世代間ギャップに悩んでいる方に,いくらかの背景知識と,これだけは知っておいたほうがよいという最低限の慣用句をお届けします。
- 第43回 Text::Xslate:永続環境に特化したテンプレートエンジン
- TTの本体を差し替える
- Template::Alloy
- Template::Tiny
- Text::Xslate
- Text::Xslateのキャッシュ
- Text::XslateとTTの違い
- Text::XslateはTTのかわりになれるのか?
2011年7月22日
- 第42回 Template Toolkit:Perl製テンプレートエンジンのデファクトスタンダード
- 組み合わせ自由なツールキット
- Template::Provider::Encoding
- Template:Stash::AutoEscape
- Template::Plugin::JavaScriptとTemplate::Plugin::JSON::Escape
- Template::Directive::XSSAudit
- Template::AutoFilter
- TT3
2011年6月30日
- 第41回 HTML::Template::Pro:テンプレートに極力コードを書かせたくないときは
- 何でも埋め込めるのは楽ですが
- テンプレートからコードを追い出す
- HTML::Template
- HTML::Template::Expr
- HTML::Template::Pro
- HTML::Template::Compiled
- HTML::Template::Bundle
2011年5月12日
- 第40回 Text::MicroTemplate:得意分野なんだからPerlを使えばいいじゃない,という方に
- テキストの整形はPerlの基本
- Text::Template
- HTML::Mason
- Text::MicroTemplate
2011年3月24日
- 第39回 DBIx::Skinny:DBIx::Classに不満を感じたら
- DBIC以降の選択肢
- DBIx::Skinny
- Teng
- Data::Model
- DBIx::ObjectMapper
- ORLite
- ほかにもいろいろありますが
2011年2月1日
- 第38回 DBIx::Class:拡張性の高さが売りではありますが
- 国内では微妙な立ち位置に
- もともとはオブジェクトを永続化するためのもの
- NEXTの時代
- DBICもいずれはMooseに
- 単なるデータベースのラッパとして使うのはもったいない
- 用途にあったものを使ってください
2010年12月21日
- 第37回 YAPC:国際的なイベントなのだ,ということはお忘れなく
- 連載の裏話を発表してきました
- 気になることの多いYAPCでもありました
- YAPCが生まれるまで
- YAPCの流行と発展
- 国内だけで話を決めていいのかしら
- イベントを開催するときは
2010年11月1日
- 第36回 SQL::Abstract:簡単なSQLはより簡単に
- DBIの泣き所
- 非対称なハッシュの扱い
- DBIレベルでの解答
- DBIx::Abstract
- SQL::AbstractとSQL::Abstract::Limit
- SQL::Interp
2010年9月21日
- 第35回 DBI:生のSQLが散らばると言う前に
- Perlとdbm
- DBperlとDBI
- DBIはPerl界標準のインタフェース
- ODBCとDBIの違い
- DBIの便利機能
- DBIの課題
- 素のDBIを使うことが悪いのではありません
2010年8月9日
- 第34回 Perl Mongers:顔の見える仲間を増やそう
- もうひとつの.pm
- 基本的には都市単位
- 大きすぎず,小さすぎずがよい理由
- YAPCとPerl Mongers
- 日本にはもっとあってもよいと思います
- 新しくグループをつくるときには
2010年6月30日
- 第33回 enc2xs:標準の文字コード表にはない文字を変換する
- Encodeを使っても文字化けするとき
- 文字化けを許容したくない場合
- 文字参照を利用する
- 自分でエンコーディングを用意する
- マッピングを追加する
- encode専用のマッピングを追加する
- decode専用のマッピングを追加する
- さらに複雑なマッピングをしたい場合
- みんなの利益になるものはCPANに
2010年6月15日
- 第32回 Encode:日本語だけ扱えればよいのではなく
- 一般的には推奨されないencodingプラグマ
- Encodeの基本
- Encodeのむずかしさ
- あらかじめ問題が起こらないようにする
- find_encoding
- 文字コードがわからない場合
- from_toは避ける
- EncodeのラッパとしてのJcode
2010年5月31日
- 第31回 encoding:いつまでもjperlから抜け出せない方に
- いまさら使う人はいないと思っていますが
- なにが問題だったのか
- jperlがもたらしたもの
- jperlの制約
- encodingプラグマを使う
- encodingプラグマの仕組み
- encodingプラグマの制約
- encodingプラグマを省略してしまう
- openプラグマを使う
- Encodeモジュールを使って個別に対処していく
- 取り残されたformat()の問題
- 内部表現を意識するのは面倒かもしれませんが
2010年5月18日
- 第30回 Test::Class:ユニットテストに使うだけでなく
- メタデータからテスト件数を取得する
- Test::Class
- テストを追加してみる
- テストを指定した順番で実行させてみる
- Test::Classの仲間たち
- Test::Able
- Test::Sweet
- サブテスト
- テストがないコードはレガシーコード
2010年5月4日
- 第29回 Test::Base:データ本位のテストをするときは
- テストは実行する前にも数えられるはず
- ファイル探索型のテスト
- モジュール作者専用のテスト
- データファイルを利用するテスト
- Test::Base
- さらにテストの再利用性を高めるために
2010年4月5日
- 第28回 Test::More:no_planからdone_testingへ
- 計画的に実行するのはよいことですが
- skip_all
- skip
- todo
- no_plan
- no_planの問題点
- done_testing
- たしかにdone_testingは便利ですが……
2010年3月24日
- 第27回 Test::Most:Test::Moreでは物足りなくなってきたら
- Test Anything Protocol
- Test::SimpleとTest::More
- Test::Moreで利用可能なテスト
- Test::Most
2010年3月8日
- 第26回 ShipIt:モジュールのリリースをもっと手軽に
- CPANにモジュールをアップロードする前に
- リリース前の定型処理
- CPANへのアップロード
- ShipIt
- Dist::Zilla
- Githubからのリリース
2010年2月23日
- 第25回 Module::Starter:モジュールを書くためのテンプレート
- モジュールを再利用可能にするためのツールたち
- 本来とは異なる用途で使われているh2xs
- ExtUtils::ModuleMaker
- Module::Starter
- pmsetupとModule::Setup
- たまにはひな形の更新を
2010年2月8日
- 第24回 CPAN:Perl界の水先案内人
- CPANが生まれるまで
- See PANTS
- CPANPLUS
- distroprefs
- モジュールを書く人ができること
2010年1月25日