初めてのPerl
だいぶ前に業務でPerl を触れた。 とりあえず遊ぶ準備が出来る所まで記録した。 近いうちに言語の特徴と便利そうなライブラリの記録も残しておく。
関連情報の調べ方
とりあえず下を知っていれば気楽になれる。
- ドキュメント(日本語訳)
- コミュニティ一覧(日本語訳)
- ドキュメントコマンド
perldoc
- 構文チェック
perl -c $scriptname.pl
- Perlデバッガ
perl -d \$scriptname.pl
構文チェック・Perlデバッガはとても助かる。 他にも便利なモジュールがあるのでこれを参考にした。
はじめてのPerlコード
さっそくPerlコードを書いてみる。
|
|
シンタックスチェック
上記を以下の様にするとシンタックスチェックが動く。
|
|
行末の;
はコードブロックの終わりを除いて必要なので追記する。
そうして実行すると以下の様になる。
|
|
未定義な関数があるよって言われてからHello World って表示される。 ブロック内の名前解決は評価前に一括で実行される様な挙動をしている。 素直に関数名も修正して実行する。
|
|
ちゃんと動く様で嬉しい。
解析ツール
プログラムの解析が必要な事は結構あって、Perlランタイムがどう呼ばれているか知りたいって事はあるので調べておいた。
ツール | 補足 |
---|---|
プロファイラ | dprofpp |
デバッガ | -d オプションを付けて実行すれば良いみたい(perldoc) |
デバッガを使ってみる
試しに動かしたので解析する方法も知っておきたい。
最初に書いた様に-d
オプションで起動するとデバッガが動くので試してみる。
|
|
よく使うのをメモしておくと以下になる。
コマンド | 内容 |
---|---|
h | ヘルプ |
| cmd | ぺージャを利用する |
q | デバッガ終了 |
- | 直前(実行済み)の行を表示する。 . | 現在(実行前)の行を表示する。 v[line]| 指定した行周辺を表示 p expr | perl式を評価する M | 読み込んでいるモジュールを表示する T | スタックトレースを表示する b [ln|event|sub] [cnd] | ブレークポイントを指定 w expr | 式にwatchを設定 W expr|* | 式のwatchを除去 s expr | Step In 実行 n expr | Next Step 実行 r | リターン(現在のサブルーチンから脱出)