1 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 00:07:22 ] "The duct tape of the Internet" こと、Perlについての質問箱です。 "There's more than one way to do it" ということで、Perlの奥深さについて皆で語り合い、追求してまいりましょう。 CGIについての質問は板違いです。WEBプログラミング板でどうぞ。 CGIとPerlの区別がつかない人もWEBプログラミング板に行ってください。 (WEBプログラミング板 ttp://pc11.2ch.net/php/ ) CGIの質問は答えがPerlと全然関係ない話に帰着する場合が多かったりするのでWEBプログラミング板に行って聞いたほうが得ですよ。 このスレでは(CGI以外の)純粋にPerlのみに関係する質問を取り扱っていこうと思います。 スレ違いの質問にはスルーか、速やかな誘導をお願いします。 ttp://www.perl.org/get.html ● 2008/01/11現在の最新版: 5.10.0 ● 2007/01/11現在の開発版: 5.9.5 前スレ Perlについての質問箱 33箱目 pc11.2ch.net/test/read.cgi/tech/1192463997/ リンク集は>>2-3 過去スレは>>4 あたり
231 名前:デフォルトの名無しさん [2008/01/30(水) 00:39:53 ] >>229 >ネットワーク周りの設定を改めて行うか >どうか問われている事ぐらい容易に想像できるだろ? もちろんです。ですがそれ以上は想像できません。つまり、それ以上は「背景知識」を 摂取することで補完する必要がありました。 なぜ補完の必要があったか、それは以下のことが分からなかったからです。 1. たしかにlibnetと書かれているし調査の結果libnetがネットワーク関連だということも 分かったが、聞かれているのが本当にlibnetについてなのか、つまり、 do you want to modify/update your configuration(y|n)? [no] というのは「configuration of libnet」の意味なのか 2. my configurationをmodifyとあるが私はこれまでにlibnetの設定をした記憶がない。 なのに、my configurationとはどういうことか。 3. configurationをなぜ今する必要があるのか 4. 今configurationの各項目をいい加減に決めてもconfigurationをあとで修正できるのか 5. もしそうなら知る必要があるconfigurationの保管場所はどこか
232 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 00:44:02 ] ここはお前の哲学を語るスレじゃない。
233 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 02:18:43 ] >>231 この"configuration"は「設定」というより、「構成」なんだろうよ。
234 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 02:56:38 ] Perlの話をしなさい。 ここは自分の思想を押し付けるスレじゃない。
235 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 05:11:37 ] 英語が分かるなら英語圏のユーザーに 聞けばいいんじゃねえの?
236 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 05:27:59 ] IDが無い板なんだからコテハンつけてほしいな あぼーんする手間が面倒だよ
237 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 05:50:31 ] >>231 ドラゴンボールの中でフリーザが一番好きです まで読んだ
238 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 08:52:31 ] >>233 そうなのですか。参考にします。 >>232 >>234 とんだ誤解ですね。私は決めつけられた誤解に対して答えただけですよ。 うらむ相手が間違っています。 それに私は私の哲学をどこで語っているんでしょうか。 Perlに関する質問のやりとりのなかで、致命的な誤解が生じてしまったので、 事情説明をしてコミュニケーションの修復を図っただけですよ。 どこにも私の主観・思想が語られておらず、ただ私に関する事実が述べられているのみです。 (もう一度お読みになってみることをお勧めします。) それなのにその部分だけとりあげて哲学を語っているからスレ違いだとするのは あまりに早計ではないでしょうか。 >>235 それだけの英語力があるかはやや不安です。 やはり、日本人だから日本語のほうが話しやすいものです。
239 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 09:00:21 ] >>238 つうかもっと完結に書く能力はないの? どうせ「誤解のない詳しく書いてどうのこうの」ってくどくど書くんだろ? その妙な書き方 前に見たような気がするが…
240 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 09:10:20 ] >>238 > うらむ相手が間違っています。 >>232 >>234 がお前さんを「うらんでいる」という解釈こそ、この場で最も大きい「とんだ誤解」では。 どこから「うらむ」という発想が出てきたのか、まるで見えてこない。
241 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 10:03:47 ] 自分がなんで注意されてるかさっぱり理解できない天然さんぽいから放置で。
242 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 10:28:45 ] なんという入れ食い
243 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 10:34:40 ] >>239 確かに簡潔に書くことは大切ですが、私が簡潔に書く能力がないとするのは論理の飛躍です。 それに、私の文章が簡潔でないというのも偏見ではないでしょうか。 文字数が特別多いわけでもないでしょう。 あと、簡潔に書けるのになぜ簡潔に書かなかったかというと、その必要を感じたからです。 つまり、あらぬ誤解をかけられて、それがために質問者としての目的の遂行に障害が発生したので、 必要なだけの対策を講じたまでです。 そうした些末なことはまさにスレ本題ではないので、>>241 の言うように放置をお勧めします。 それから、2chは私は数年前から定期的に利用しているので、私の文章をあなたが見た可能性は否定 できませんが、私の今回の文章を見ただけで、あなたが過去に見た特定の文章の書き手と同一視して しまうのは早計ではないでしょうか。 そもそも、仮にあなたが過去に見たような気がするというその文章が私のものだったとしても、 だからどうしたというんですか? 発言の意図が見えてこないし、スレ違いもはなはだしいので自重お願いします。 >>240 うらむという表現は「敵対的な言い方をされる」という表現に置換することも可能です。 要するに、表現方法の問題です。 そもそも、仮に、私が>>238 で「とんだ誤解」といったときに最大な過ちが私の表現方法 にあったのだとしても、>>232 >>234 が誤解をしていることには何ら変わりがありません。 >>241 具体的にどんな点で私が注意されるべきなのでしょうか。 もっとも、>>241 が私に向けた発言でないことは明白ですが。
244 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 10:39:18 ] にゃーにゃー
245 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 10:42:17 ] 日本語として成立しなくなったら釣りも終わりだな。
246 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 10:54:08 ] しねばいいのに・・・
247 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 12:47:15 ] 日本語の得意な朝鮮人が来てますねwww
248 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 12:52:09 ] 895 名前:デフォルトの名無しさん[sage] 投稿日:2008/01/07(月) 02:32:27 頭が悪いのに口だけは達者な馬鹿の典型だなw
249 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 13:13:01 ] 会社で嫌われてんだろうなぁ・・・
250 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 13:15:37 ] >>243 早くインストールしろよw
251 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 13:18:17 ] >>243 > そうした些末なことはまさにスレ本題ではないので、>>241 の言うように放置をお勧めします。 オマエガナ
252 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 13:23:42 ] 祭りと聞いて(ry
253 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 13:32:31 ] ごめんなさい。釣りでした。
254 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 13:39:22 ] 続きまだぁ?
255 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 13:50:44 ] Perlでは珍しいタイプの狂人だな
256 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 16:52:12 ] この無駄な冗長さはコボラー
257 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 21:53:12 ] 珍しく伸びてると思ったら …珍しくもないか
258 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 22:51:58 ] それに、あと、つまり、それから、そもそも、 こんな接続詞が多用されている時点で 簡潔に書けてない事がよく分かるな。
259 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 23:22:35 ] みんな、楽しそう。
260 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 00:11:09 ] あーこんな文章をどこかで見たことがあると思ってたらアレだ 精神病の人が医者に「これこれで私は精神病じゃないです」って言ってるのにそっくりなんだわ たとえばこれとか ttp://www.so-net.ne.jp/vivre/kokoro/psyqa1331.html
261 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 00:16:37 ] 3行でおk
262 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 00:43:52 ] ス レ 違い
263 名前:デフォルトの名無しさん [2008/01/31(木) 02:25:46 ] なぜこのスレに、精神異常者チェイサーズが集結しているのか?
264 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 11:37:30 ] 後に現れるのは、もちろんキティガイ
265 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 20:03:28 ] エンターキーを押さなくてもキーボードから 一字だけ入力を受け付けたいときはどうすればいいでしょうか?
266 名前:デフォルトの名無しさん [2008/01/31(木) 20:08:05 ] >>265 っ[Term::ReadKey]
267 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 20:19:17 ] できました。ありがとうございました。
268 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 22:23:46 ] $count = $x =~ tr/0-9/0-9/; で数字の桁数を数えられるようですが、どういう仕組みなのか分かりません・・・ くだ質の類だと思いますが、よろしくお願いします。
269 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 22:47:50 ] tr演算子は置換した文字の数を返す
270 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 22:48:16 ] $xの数字を同じ数字に置換して,置換した回数を$countに入れてる. $xが数字だけなら桁数と一致するわな.
271 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 23:32:10 ] 目からウロコが落ちた。確かに数えられるねぇ。 でもなんか違う気がする。
272 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 23:46:35 ] 面白いコードと実用的なコードには差があるからな。
273 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 00:59:15 ] できるこたできるけど中身が数字列の場合に限るし それが保証されてるならlengthでもいい気はする。
274 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 03:09:51 ] >>273 my $num = '-123,456'; print $num =~ tr/0-9//, "\n"; # 6 print length $num; # 8
275 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 08:49:13 ] 実戦での桁数は計算で出すよね
276 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 10:18:25 ] 計算てw
277 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 11:53:20 ] n進数の桁数は計算だすよ
278 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 11:54:25 ] >>274 いや数字だけの列と保証されてる場合よ。
279 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 12:08:24 ] 電話番号やカード番号みたいに、ハイフンがあったりなかったりのチェックで・・ ・・・文字数だけじゃあんまり意味ないか
280 名前:268 mailto:sage [2008/02/01(金) 14:12:06 ] trは置換した文字列を返すんですね。 処理の順番も勘違いしてました。↓の順番なんですね $count = ( $x =~ tr/0-9/0-9/ ); ありがとうございました。
281 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 14:25:00 ] 「置換した文字列」ではない。 置換もしくは削除した文字数を返す。
282 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 14:32:45 ] while ($x =~ m/\d/gs) { $count++ }
283 名前:268 mailto:sage [2008/02/01(金) 14:41:11 ] >>281 書き間違えでしたスイマセン
284 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 15:47:47 ] 重箱の隅だけど、 tr/a/a/ ってのは置換したことになるの?
285 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 16:05:17 ] やってみろ。
286 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 17:08:30 ] tr/hoge/hage/ の hoge にマッチした回数でいいんじゃね?
287 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 18:12:45 ] >>284 文法上は置換する(したことになる)が、実際の置換は行われない。 tr/X// や tr/X/X/ は対象に含まれるXを数える為の記述で、この場合には対象が 左辺値である必要もない。 perl -le "print q/123,456/ =~ tr/0-9a/0-9a/" # エラーにならない perl -le "print q/124,456/ =~ tr/0-9a/0-9b/" # エラーになる perl -le "print int(1234.56) =~ tr/0-9a//" # エラーにならない
288 名前:デフォルトの名無しさん [2008/02/01(金) 21:17:49 ] ちょっと自分で試してみればすぐ答えが出るのに。 なんで試さないのかなぁ。 もしかして、ナイコン?
289 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 13:24:32 ] 確かにわけわからん レスを書くよりキーを叩く回数が少ないのに。
290 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 13:55:00 ] 重箱の隅とか言いつつperlバイナリのソースコードのレベルの話を求めてるんじゃね?
291 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 15:24:02 ] % perl -MO=Deparse -e 'print q/aaaaa/ =~ tr/a//' print 'aaaaa' =~ tr/a//; -e syntax OK % perl -MO=Deparse -e 'print q/aaaaa/ =~ tr/a/a/' print 'aaaaa' =~ tr/a//; -e syntax OK
292 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 17:10:44 ] 5.00503だと 'aaaaa' =~ tr/a// は Can't modify constant item in character translation と怒られてdieした。5.6.1なら置換回数が返された。
293 名前:デフォルトの名無しさん [2008/02/03(日) 23:24:30 ] 質問です。 だいぶ前に書かれたライブラリ(*.pl)が現役で動いているとします。 色々な箇所で使われているため、(動いている限りは)できるだけこれを修正したくありません。 このライブラリの中に、以下のようなサブルーチンがあります。 sub Func { local *data = $_[0]; #ハッシュにいろいろ詰め込む } このサブルーチンは、以下のように呼び出すようにとサンプルコードが示されています。 local %hash; &Func(*hash); これを呼び出し側だけでもlocalを排除しようと、以下のように書き換えました。 実行してみた結果、ちゃんと動いているように見えます。 my %hash; Func(\%hash); この場合、 1.呼び出し元だけを書き換えることに意味はあるのか? 2.あるとしたら正しい書き方は?(cron、CGI、mod_perlで動かすことを想定) よろしくお願いします。
294 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 02:17:53 ] バージョンによる
295 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 02:25:32 ] >>293 一般論としては、その修正で得られるのが自己満足だけなら、さわらないことをお勧めする。
296 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 10:16:16 ] >294 あ、バージョン書き忘れてました。 Perl 5.005 Apache/1.3.28 (Unix) mod_perl/1.29 ※下2つはCGIやmod_perl動作時のもの。 >295 自分がlocalの挙動をきちんと理解していないこともあり、予期せぬバグを生み出す原因になるので なるべくmyで統一したいと考えています。 それに、そのサブルーチンを呼ぶときだけlocalなのも変かなーと。
297 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 10:21:10 ] >>296 > 自分がlocalの挙動をきちんと理解していないこともあり、予期せぬバグを生み出す原因になるので > なるべくmyで統一したいと考えています。 そんな変質的行為に突入する前に、localの挙動をきちんと理解しろ。
298 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 10:41:31 ] localだと値を追いかけるのが面倒で……。
299 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 11:08:20 ] 基本的にはそれで正しく動くはず。 ただ、1.2.の問いがあるから「書き換える必要はないんじゃないの?」って言われてるわけで。
300 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 11:38:30 ] ありがとうございます。 ライブラリの方を修正したいけど……中途半端に手を出したら悲惨なことになりそう……
301 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 11:52:29 ] 古いライブラリをmod_perlで使おうとは思わないなぁ
302 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 12:18:11 ] 古いライブラリをmod_perlで使うんじゃないんです 古いライブラリがmod_perlで動いてるんです……
303 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 12:22:08 ] 自分なら、そんな動作よくわからない関数mod_perlで使わないが・・・ なんかラッパー関数作ってそっち使うようにしてけば そのうち古い関数は淘汰されるんでは?
304 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 12:51:20 ] まあ、その少しずつやってます……。
305 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 13:53:56 ] 他人の書いたperlの読みにくさは異常 書き換えるよりも書きなおしたほうが早いことさえある
306 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 14:38:28 ] 読みながら書き直したりする。 以前、「どう見てもPrologです。本当にありがとうございました」な プログラムをもらったことがある。
307 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 18:33:33 ] よくわからない物はよくわかるようになるまで触らない方がいいとは思うな。 localが気になるならコメント添えてここはこういう理由って記述しときゃ後で見たときにもわかるし。 せめてそのライブラリの流れ把握できるくらいになってからでないと。
308 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 19:53:07 ] localの98%くらいはmyにしてしまっても問題なくね?
309 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 00:06:02 ] いや、97%くらいだろ。
310 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 05:09:26 ] 動いてんならいじるなよ
311 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 18:09:00 ] 懸念してるのは想定外の2%だか3%のバグの発生だからな。 上でも言われてるがいじるメリットが自己満足だけなら俺もそのままのがいいとは思う。
312 名前:デフォルトの名無しさん [2008/02/05(火) 20:11:35 ] Exporter が import を強制的にexportしなくなったのって、 仕様変更はいつから? 実装変更は、perl 5.9から?
313 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 00:30:23 ] 人狼ってゲームのCGI設置したいんだけど(nifftyに) できなくて質問CGIが動かないんだけど、以下エラー Wed Feb 06 00:22:09 2008 Client Abort 2-- detected during CGI/SSI process Wed Feb 06 00:22:10 2008 Warning: Connection closed and CGI process ID=400 still alive Wed Feb 06 00:22:11 2008 Warning: Connection closed and CGI process ID=400 still alive Wed Feb 06 00:22:12 2008 Warning: Connection closed and CGI process ID=400 still alive Wed Feb 06 00:22:14 2008 Warning: Connection closed and CGI process ID=400 still alive Wed Feb 06 00:22:15 2008 Warning: Connection closed and CGI process ID=400 still alive Wed Feb 06 00:22:16 2008 Warning: Connection closed and CGI process ID=400 still alive Wed Feb 06 00:22:18 2008 Warning: Connection closed and CGI process ID=400 still alive Wed Feb 06 00:22:19 2008 Warning: Connection closed and CGI process ID=400 ・・・・・・ 以下の文法あやしい? sub sub_lock { # 1分以上古いロックは削除する if (-e $lock_path) { local($mtime) = (stat($lock_path))[9]; if ($mtime < time - 60) { &sub_unlock; } } local($retry) = 5; # mkdir関数式ロック while (!mkdir($lock_path, 0755)) { if (--$retry <= 0) { &error('LOCK','LOCK is BUSY'); } sleep(1); } $sys_lockflag=1; } ニフティで設置してる人いたからできるとは思うんだけども誰か助けて(;;)。。。
314 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 01:18:29 ] 鼬害です
315 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 03:27:35 ] >>1 の冒頭くらい読んでね。 ここはプログラムの板でってCGIの板じゃないよ。はい移動。 pc11.2ch.net/test/read.cgi/php/1176143582/
316 名前:デフォルトの名無しさん [2008/02/06(水) 16:20:24 ] Perlって数ヶ月書かないだけでかなり忘れるんだけど、 おまいらPerlは毎日のように書いてるの? 俺のような記憶力弱いやつはPythonに替えるべき?
317 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 16:22:52 ] $str =~ tr/a-z/A-Z/g; として小文字を大文字に変換しようとしてますが、 Bareword found where operator expected〜 とか言ってエラーになります。 何度ググってもこれであってるぽいんですが…。わけがわかりません助けて。
318 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 16:26:31 ] その前後が問題なんじゃないの?
319 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 16:29:44 ] >>317 自己レス gをなくしたら通りました。g使えないの? ぐぐってでてきた複数の例で使われてるんだけど。 試したVerは5.8.2と5.8.8。
320 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 16:31:36 ] tr///はcdsだけみたいね
321 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 17:01:29 ] uc($str);
322 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 17:26:53 ] >>316 そんな毎日やるわけないけど 忘れたらリファレンスのページとか参考にすりゃいんじゃないの? >>319 gはm s // だけのはず。 tr y は>>320 似てるけど一応動作は別もんだからね。
323 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 18:47:07 ] >>316 Pythonでも、クラスのメソッドとか多くて覚えられないけどね。 ただ、Pythonに乗り換えたらPerlには戻れないと思う。
324 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 20:38:28 ] >>316 使うときはWebサイトか昔書いたソースを見ながらやってる
325 名前:デフォルトの名無しさん [2008/02/06(水) 22:47:26 ] >>316 毎日とは言わないが、けっこう頻繁に使ってるな。 1回しか使わないような使い捨てスクリプトは perl で書いてる。 何度も使うのはCやjavaやVBやVBScriptや・・・・ perl って便利ですよ。 バッチファイルみたいに手軽にかけて、バッチファイルよりも遥に高度な処理ができるからね。 perl が嫌われてる理由を俺なりに考えてみた。 ・漢字(ShiftJIS)に対応していない ・サーバアプリに向かない(CGI は負荷が重い) ・ソース丸見えだから業務アプリに向かない(納品できない) でも使いようによっては超強力だよ。
326 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 22:56:53 ] perlって嫌われてるのか? ところでperlで自分で書いたものって一月も前に書いたものは修正したくてならなくなるんだがwww
327 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 22:58:19 ] > 漢字(ShiftJIS)に対応していない Encode.pmがあるじゃない > サーバアプリに向かない(CGI は負荷が重い) Hatena, Mixi, その他探せば色々あると思うんだけど Perlが糞な理由はOOPやリファレンス回りの小汚い記法と 省略の美学(笑)によって解読不能なコードが書けるからだろう きちんと書けば(『Perlベストプラクティス』みたいに)大分ましだが Perlの特長を削いでる感じがするね
328 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 00:21:34 ] >>325 >ソース丸見えだから業務アプリに向かない 暗号化する仕組みがあるよ。
329 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 00:33:04 ] 個人で使うならRubyかPythonのほうが幸せになれる?
330 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 00:46:13 ] >>329 個人で使うだけなら、迷わずPerl。 まぁ、好き好きだけどね。
331 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 00:57:31 ] 理由はユーザーが多いから?年期の入った言語ゆえにソースが転がってるから?? 後発の言語のほうが練られてそうなんですが。 初学者なんでこのままマスターしようか乗り換えようか迷ってるのですわ。