*1  「Perlベストプラクティス」一通り読んだのでまとめ

えーと、先日 Ruby信奉者の本拠地サイトってどこにあるんだろう と書いた上に Ruby もきちんと知っているとは言いがたいんだけど、これを読んで「Ruby 使えばいいのに」と思ってしまった。

参照の変数名は_ref付きに。

そもそも参照渡しが大量に必要になる時点で不便。Perl の getter/setter に参照を入れる場合にいつも悩んでしまう (ObjectTemplate 使う際は結局 ref で入れることが多いけど) 。Ruby のように配列やハッシュもオブジェクトとして渡せればいいのに。

if-efsif-efsif-elseの連鎖は止めてテーブル参照に。

これは Perl4 の頃から不思議なんだけど、何故 case が使えるようにしないんだろう?

エラー発生でundefを返さずに例外を出す。

Perl の例外って言語仕様にきちんと無いので使いにくい気がするけど最近のはそうでもないのだろうか。Ruby では標準で begin ... raise ... rescue が使える。

is_validやhas_foundなど真偽値にちなんだ名前にする。

foo.valid? や bar.found? と書ければ一目瞭然。

サブルーチン、メソッド、変数、ラベル付き引数の名前は小文字のみ。パッケージ、クラスには大文字と小文字を。

Rubyだと自然にそうなる。賛否ありそうだけど。

モジュールやクラスの内部専用のサブルーチン名には、先頭に_を付ける。

命名方針はともかく、Perl の場合にはそもそも package に隠蔽という概念が無かったので、その部分はいかんともしがたかった。今は private pragma があるんだっけ?

どうしても必要なとき以外はmyによるレキシカル変数だけを使う。

なぜ標準が lexical にならないんですかね(もちろん過去互換性のためだろうけど)。いや単に毎回 my を書くのが面倒だというだけの話なんだけど、use strict; したら lexical じゃないと怒られるのになぁと。

ループで配列やハッシュのインデックスを使わない。配列を直接ループさせる。

こんなのや、 keys %hash は遅いから values %hash を使う なんてのは Bad Know-how 以外の何者でもないな。Ruby なら hash.each do |key, value| .... end と明瞭にかける。

$_の乱用は混乱の元。
for, whileは$_ではなくmy $hogeで名前付きレキシカル変数を使う。

$_ は Perl 習いたての頃は凄い仕組みだと思っていたけど、今となっては混乱の元でしかないというのが悲しい。

Perl の There are many ways to do it. と言う考え方は好きだけど、実際には too many ways だったり、後から小声で But, the best way is only one. だなんて言われそうな気がするのがなぁ、と思ってしまう。

いやもちろん、こんな事だけで「Perl よりも Ruby の方がいいよ!」などと言いたいわけではないので念のため。所詮は言語なんて、使えるなら好きな方を、制約条件があるなら使わなければならない方を使うしかないんだし。でも上記のような部分は、個人的には Ruby の方が楽だなと思う。

それはともかく「Perlベストプラクティス」は読んでみようと思った。*::Util とか全然使ってなかったけど便利そう。結局は「不便な事も少なくないけど捨てがたい」というのが Perl の罪深いところなのかも。

( Permalink | Comments (1) | tags: perl  ruby  )
「Perlベストプラクティス」まとめ を読んでふと「Ruby使えばいいのに」と思った:http://yoosee.net/d/archives/2006/10/15/002.html Ruby >>>(越えられない壁)>>> perl:http://tobysoft.net/diary/archives/2006/09/ruby_perl.ht.....
Comments
1. 高野光弘について at 2008-11-12 14:35
takano32,TAKANO Mitsuhiroこと高野光弘(27歳、日立製作所エンタープライズサーバ事業部、日本UNIXユーザ会、日本Rubyの会)が、自身の『32nd diary』で公然と日立の機密を漏示し、障害者差別発言、さらに殺人予告までしています。

2007-08-22 14:24:35 ついに職場で人が倒れた。担架で運ばれていった。みな、ほんとうに死んだ魚を見ているようだった。管理者は苦笑している。
2007-10-26 09:18:30 たまに社内のファイルサーバが重くなりすぎる。社内Winnyネットワークでも作りゃいいんだよ!!
2007-11-13 09:45:20 そういや、配属元の上司はほんとにバカでISO9001で不要な文書をポリシー化しているだけなのに、それをISO9001のせいにしていた。しかも、ISMSとか話題にしたら「なにそれ?うちの会社は情報漏えい気をつけてるから大丈夫」だってさ。死んだほうがいいよ。ほんと。
2007-12-06 06:57:37 起きている。今日の目覚めは最低だ。いつ会社にエンジニアとして殺されるのか、そして、いつその波によって殺されるということがありうるのか。他人が聞いたら信じられないような話だろうがボクは恐怖している。
2007-12-14 17:29:51 社内システムが無駄に Ajax するようになった。作れない Permalink があることに気づけよ!
2007-12-19 16:40:32 この会社の拡販の部署はクソ。身をもって知った。客層広げることをまったく考えてないんだな。
2007-12-28 09:26:38 社内システムクソうんこ。 Ajax とか生半可にかじりはじめて、 Query を Cookie で渡すような仕組みになっている。検索条件を指定済みのブックマークとか作れねえじゃんかよ。うんこ改悪すんな。うんこ。
2008-01-11 07:45:05 社内でPathtraq使いたいが、真面目に情報漏洩の可能性があるので困る。とりあえず、思いとどまっておこう。
2008-01-22 06:29:23 昨日の課長は「デモ環境作成にあたり、ついでにバグ出しもできる」という考えにもあきれたが、机をバシバシ叩きながら話すという威圧的な行動に閉口だったなぁ・・・合理的かつ理論的に会話する人間が少ない。
2008-01-28 13:45:00 内部で rlog がこけてる、とか思ったら、 author が数字なんですけど・・・これじゃ名前として認識されないだろ・・・この会社バカだなぁ・・・ほんとに。
2008-01-30 23:56:19 今日の仕事は非常識な言動の上司に腹が立った。「自分で考えないならそこらへんのお姉ちゃん雇った方がいいじゃん」とかいうわけよ。なんだこいつ、と、放置決め込んだんだが、オレに分かんないことを質問してくるわけよ。なんなの、こいつは。こいつの代わりにお姉ちゃん雇いたいわ。マジで。
2008-01-31 08:58:22 ちなみに、朝言ってたクソは異動になる。ブラフばっかでむかついてたんで清々する。しかし、ダメなやつの巣窟だなぁ・・・ほんとに進路を間違ったわ・・・
2008-02-18 12:28:46 今の会社うんこすぎる。社会人として以前に人としてブラフはきまくり&いうこと聞かないやつたたいたら俺が社会人としてどうなのよ?と疑われた。なんつーヒエラルキー重視の北朝鮮。ほかの企業経験してないだろ?
2008-02-19 19:15:02 ってか、課長居眠りこきすぎだっつーの・・・・なのこのムカムカは。
2008-05-26 20:00:58 自分のやりたいことを就業時間中にやると給料泥棒とかうんぬん言われた。技術泥棒のくせになに言ってんだよ。どんどん機会が奪われていく。胸糞が悪い。
2008-05-27 22:36:35 きゅうりょうどろぼうはきょうもよるおそくまでおしごとしてこれからかえるのでした。心バキバキ川田くん。
2008-05-28 04:23:33 三時間で目が覚めた。自分にとってはクビが飛ぶくらいなんでもねぇ、一言入れれば明日にでも雇ってくれるところは複数あるもんね、と思っていたが、心のそこがバキバキなんだめう。人事は恐ろしい。ちょっと寝なおす。
2008-05-28 08:20:01 社内から技術者以外に見られるとうざいと思って access deny にしていたが、開放した。一度、一騎打ちしようと思う。たぶん、そのひとりが変な考え持ってるので。←誹謗中傷ではない
2008-05-29 09:11:59 何度言ってもわかんねーようだなぁ。オレなんかが個人で発信する情報よりウィニー(笑)で漏洩する情報を先にどうにかするのがさきなんじゃないの?
2008-05-30 07:17:00 しっかし、会社はやり方にいらつく。誰からの制裁かわかんない。てめぇのメールアドレスでスプーフィングして、全社員にメール送るスクリプトでも組んでやろうか、という気分。まぁ、マジにやるつもりはないけど、あんまなめてるとやりかねませんよ、と。
2008-05-31 22:33:30 んで、キチガイがいる *.tokyo.ocn.ne.jp を解禁したいのだが、いつぐらいにしたらいいのか迷う。あのキチガイはもう他のところにポインタ向いたかね?
2008-6-14 予告 心バキバキ川田くんを殺します。
2008-6-15 日本の警察をみた。いつも行動力がないと言われている日本の警察ですが、今日は変な行動力をみた。 理不尽で半端な行動力なので、もう少しガイドラインを固めないとダメだと思った(現場の人は悪くないので、上がきちんとしろ、という意味)。 予告.in 予告.out 事情を話し、くだんの書き込み元IPアドレスなどを回答した。

理不尽なのは、「殺します」、「死んだほうがいいよ」、「クソ」、「うんこ」、「バカ」、「キチガイ」という発言の方なのではないでしょうか?

高野光弘の発言をどうお考えでしょうか?

Please write your comment. email address won't appear. Cannot use any HTML tags in comment.
コメントをお書き下さい。メールアドレスは公開されません。 またHTMLタグは利用できません。
Name   E-mail   URL
Comment

About W.W.Walker

World Wide Walker は yoosee による blog です。PDA, Web・サーバ技術, 美味しい食べ物などの話題を取り上げています... read more

このエントリーのブックマーク

Monthly Archives

Select Month to read