Perl

13 November 2006

Became CPAN Author!

I became CPAN Author.

Takatsugu Shigeta - search.cpan.org

My first commit is WebService::Riya that is Perl interface for Riya.com's Web API.

Thanks!

04 July 2006

Effective Perl

会社で購入してもらった Effective Perl をやっとざっくりと読み終えました。結構分かりやすかったと思います。中身としては充実しています。

全部で60個のケーススタディが並んでいますが、章で見ると、『第3章 正規表現』、『第5章 リファレンス』あたりがとても良かったと思います。続いて、『第8章 パッケージとモジュールの書き方』、『第9章 オブジェクト指向プログラミング』も悪くなかったです。CPANモジュールを作りたいと思っているので、導入編としては良い内容の書籍だったと思います。

全くプログラミングを経験したことのない人にはやや敷居が高いかもしれませんが、プログラミング経験者であればPerlを学ぶのにちょうど良い、手ごろな一冊だと思います。オススメです!

Effective Perl
Effective Perlジョセフ・N. ホール ランドル・L. シュワォーツ Joseph N. Hall

おすすめ平均
starsC互換でなく、perlらしい書き方をしたい人に
starsperl語を学ぶ
starsperl語を学ぶ
starsビギナーには不向き、中級者には目から鱗

Amazonで詳しく見る
by G-Tools

01 June 2006

Net::Delicious 気持ちいい!

Net::Delicious は、 del.icio.usAPI をラップした CPAN モジュールです。

例えばポストは次の通り。

#!/usr/bin/perl

use strict;
use warnings;

use Net::Delicious;
use Log::Dispatch::Screen;

my $del = Net::Delicious->new( { user => 'your name',
pswd => 'your password'});

my $res = $del->add_post(
{
url => "http://www.yahoo.com/",
description => 'Yahoo!',
extended => 'Yahoo! U.S.',
tags => 'CPAN',
dt => '2006-06-30T12:00:31Z'
});

これで、$res に true が返ってくればポスト成功!簡単です。

url はそのままurl、description は del.icio.us でいう title になります。あとは extended は、notes になります。 tags はタグですし、dt はポストした日です。(様々な日付でポストできます)

YAML、Log::Dispatch、IO::Stringy、TimeDate のそれぞれの CPAN モジュールが必要でした。


ということで、簡単に気持ちよくポストが出来たので、Net::Delicious を使って、何か作る予定です。
CPAN マンセー!ってことで今日はこれにて。

25 May 2006

Perl Tips - Carp

プログラミング言語は色々と進化を遂げています。プログラムを作成する敷居やコストも低下しています。とくに IDE (Integrated Development Environment) がコスト低下に一役買っていることは間違いないです。microsoft Visual StudioEclipse 辺りがその代表格でしょう。

では、Perl, PHP, Ruby などの LL (Lightweight Language) の分野ではどうでしょうか?基本的に IDE は使わないです。vi や emacs といったエディタが主流です。

そんなとき、IDE を使っているデベロッパの方々から見て、最も気になるのがデバッグではないでしょうか?

いえいえ、Perl だってちゃんとデバッガがついています。


$ Perl -d foo.pl

-d を使うことで、デバッガが起動します。ブレーク・ポイントを設定したり、ステップ実行やステップ・インなど、IDE と同じようなことが実現できます。Perl -d の使い方については、YAPC::Asia 2006 Tokyo での sekimura-san のセッション できる Perl debugger 音声 Video がオススメです。

でも、デバッガ起動するまでではなかったり、デバッガを立ち上げられなかったり、という人たちには、Perl のコア・モジュールである Carp を使うとよいでしょう。

Perl Best Practices の中でも、もちろん取り上げられています。

Reporting Failure
Have exceptions report from the caller's location,
not from the place where they were thrown.
p.283 - p.284 Chapter13 : Error Handling
perldoc Carp
で Carp のドキュメントが読めますが、次のようなメソッドを持っています。
carp
warnします。
cluck
carp + スタックトレース という感じ。
shortmess
carp と croak のメッセージを返します。
croak
dieします。
confess
croak + スタックトレース という感じ。
longmess
cluck と confess のメッセージを返します。
ということで、Carp は warn 系と die 系とあります。

スタックトレースを出力しないと細かなデバッグはできません。Carp モジュールはコア・モジュールだから手軽に利用できるので覚えておくとよいでしょう。

Perl Best Practices
Perl Best PracticesDamian Conway

Oreilly & Associates Inc 2005-08
売り上げランキング : 15,910

おすすめ平均 star
starあの会社にいた頃にこの本があったら

Amazonで詳しく見る
by G-Tools

12 April 2006

簡単なことは簡単に、難しいことも可能に

CNETで、Perlの生みの親ラリー・ウォール氏が語る、Perlの生い立ちと今後 という記事がありました。

ちょうどYAPC::Asia 2006 Tokyo で来日されたときですね。
このインタビューでちょっと気になった言葉。

「簡単なことは簡単に、難しいことも可能に」(Easy things should be easy, hard things should be possibleというPerlのスローガンのひとつ)

Perlにこのようなスローガンがあるんですね。知らなかったです。でも、とても良い言葉ですね。高度な技術もこうやって敷居を低くしていくことが重要ですもんね。すばらしい。

Access Ranking

Powered by Six Apart
Sponsored links