トップページ⇒php
357コメント87KB

KENT=PERL神

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。01/09/25 14:50ID:???
KENT=PERL神
0075名無しさん@お腹いっぱい。02/03/01 06:52ID:???
>72
勝とうと思えば一年で勝てる。
勝とうと思わないだけ。
0076名無しさん@お腹いっぱい。02/03/01 18:25ID:jF8HgF+z
#!/usr/local/bin/perl
print "Content-type: text/html\n\n";
if (KENT==PERL神){
print "ふ〜ん";}
exit;
0077ホワイトde−もうすぐ02/03/01 18:32ID:???
>>74
仮状態でも前回の自作のがあるし。
0078名無しさん@お腹いっぱい。02/03/01 20:04ID:???
>>76
偽と判断されるとネスケちゃんに「ドキュメントにデータが含まれていません。」と言われてしまいますが。
それにContent-Typeはtext/plainでしょ。
0079名無しさん@お腹いっぱい。02/03/02 01:55ID:XHcTa6/n

サイトの人気ということでいえば、
KENTのセンスは真似できるようで真似できない
0080nobodyさん02/03/02 02:45ID:???
まぁKENTさんはPerl神ではないが、
個人向けCGIスクリプト配布神ってことで。
0081nobodyさん02/03/02 11:26ID:???
正直、ファイルロックのルーチンがヘタレ。
0082nobodyさん02/03/02 12:28ID:???
名無しの名前決定?

>>81
あれはとほほが考えたものをそのまま使っただけでしょ(mkdirを使ったファイルロックのことだよね?)。
flock関数でいいと思うんだけど。
0083nobodyさん02/03/02 16:03ID:c3stoqUz
つ〜か、KENTが
ファイルの読み込みに
open(IN,'log.txt');
@log = <IN>;
close(IN);
とかクソなコーティングするから
それが広まって、どこのCGIスクリプトを見ても
みんな同じようにクソなことやっとる!
書籍でもやってるんだからなけてくる・・・。
0084nobodyさん02/03/02 20:28ID:???
>>83
ログを読むためだけにログファイルのサイズと同じ量のメモリーを消費しているということ?
0085nobodyさん02/03/02 21:03ID:???
>>84
多分。
単にファイル読み込んで、そのデータを加工してから出力ってケースだと、
配列に放り込まずに一行ずつ読み込むとか別の方法とれば、
メモリ消費量減らせるってことでないかな。
まぁlog.txtとかはサイズ小さそうだし、
そんなに神経質にならんでもいいとは思うが、気分は悪いよな。
まぁ、さっさとファイル閉じたいから中身を一気に読み込んでるのかもしれない。

とほほにせよKENTにせよ、影響力強いんだから
あまりいい加減な情報を流さないで欲しいよな。>>83さんに同意。
0086nobodyさん02/03/02 21:48ID:???
>>85
前半の文章がkentに反対なのか同意なのかはっきりしないから
ヨクワカラン
0087nobodyさん02/03/02 21:59ID:???
>>86
KENTには同意しかねるけど、そんなに神経質にならなくてもいいんじゃない?
ということなんじゃないかな。


神経質といえば、2chでの自動リンクはサーバーに負荷をかけるからhを抜けと言っている奴。
なんて神経質なんだろうと思う。
深刻なほどまでに負荷をかけるのならそんな機能はつけないって。
00888502/03/02 22:44ID:???
ごめん、文書乱れてるな。
87さんの言うとおりです。
フォロー有り難う。

>神経質といえば、2chでの自動リンクはサーバーに負荷をかけるからhを抜けと言っている奴。
え、h抜くのって、リンク先のサイトに2chでURI晒されてるのを悟られない為かと思ってたよ。
最近2chに出入りするようになったんで、いまいち此処の風習が分かってないです。
しかし、なんかわけわからん主張が結構まかり通ってるよな。
2chの危機をみんなで救おう!とかいって変に団結してるっていうか。
>>+数字とかも負荷がかかるから止めろって言ってた人居たし。
いや、団結することは悪いとは思わないんだが、
んなことより掲示板システムを根本的に見直すべきだと思う。
ソース見てないのにこんな事言うの失礼だが、
どうもデキが悪い気がして。
そう言うこと議論してるスレもあったっけな。
00898502/03/02 22:48ID:???
なんでKENTが好きになれないか今気付いた。
昔同名の奴に彼女寝取られたんだよ。
0090nobodyさん02/03/02 23:55ID:???
>>88
h抜きが出てきたのは、たしかにリファラ漏れないようにするためだYO
去年の転送量危機の時に、負荷軽減っつってそれを流行らせた奴がいたってわけ。

">>"のリンクなんかは、どっかの板ではローカルルールで禁止になってたような・・・。
もっと他に(略
0091nobodyさん02/03/03 00:30ID:???
2chのコードの出来が悪いとは思えないが。
0092nobodyさん02/03/03 00:35ID:???
”ttp://www.2ch.net
00938502/03/03 03:20ID:???
>>88
ああそっか。ローカルルールとかもありましたね。

>>91
あ、ごめん、憶測で物言って。
なんでCGIなんだろ、とか、
たまに書き込みが逆転してたりするけど、一体どういう処理してんだ?とか
マークアップの仕方(文法おかしい、かといって
極限まで削ってるとかいう訳でもないようだし)とか、
色々疑問に思う点があってさ。
ログが平のテキストで保存されてるってのもちょっと意外だった。
スレ違いだし、詳しい仕様もしらんのにケチつけてゴメンよ。
そもそも俺はそんな詳しくないので勉強するわ。
00948302/03/03 09:13ID:gvxCUUBv
レス遅くてごめんよ。
>>84
>>85さんが言ってくれてるように
メモリ消費が激しいからやめとけ、と。
KENTは@logを
foreachで一行づつ展開して処理してる。
それなら初めからwhile使っとけ!と思う。
メガバイト単位のログを配列で読み込んでたら
サーバーの負荷は著しい。
最悪メモリに読み込めず、エラーになる。

(俺はKENT使っててメモリ関係のエラーがでたぞ!
それ以来、CGIスクリプトは自分で作ることにした。)

まっなかなかメガバイト単位のファイルはないけどね(^^;
そもそも、ホームページでCGIスクリプトを使う場合、
借り物のサーバで動かす人が大抵なんだから
やっぱり負荷はデキルだけ少なくするべきだと思うよ。俺は。
0095nobodyさん02/03/03 14:05ID:???
>>94
> KENTは@logを
> foreachで一行づつ展開して処理してる。

まじすか?
00968302/03/03 14:26ID:gvxCUUBv
>>95
マジっすよ(笑)
しかも不必要な変数作ってるし。
変数の宣言が適当だし。
というか、コーティングに無駄が多すぎ!
実にシロート丸出しなところが多い。
更にそのスクリプトを見てまわりの連中が
「素晴らしい!」
と褒め称えてるのが非常に痛い。
0097nobodyさん02/03/03 14:41ID:???
まあWeb上で配布してるCGIってKENTやらRESCUEの影響受けて、酷いスクリプトを
更に悪化させてるヤツが結構多いから、仕方無いんじゃない?
0098nobodyさん02/03/03 14:43ID:???
>>96
そもそもPerlには変数の宣言なんてないんじゃ・・・・(糞言語たる所以)
myやlocalのことを言っているの?
0099nobodyさん02/03/03 15:04ID:JwoKgoKx
そんなに素人なのに、本を出したり、
あそこまで人気が出るのはすごいな。
大衆的なセンスはあるんだろうな。
01008302/03/03 16:11ID:gvxCUUBv
>>97
そうですね。
仕方がないのかも。
>>98
>myやlocalのことを言っているの?
そうです。
たまに思い出したように宣言してたりすることはあるけど。
気分で表記を変えられると
ただでさえPerlスクリプトは読みにくいのに・・・。
あっ、なんなら局所宣言と言い直しましょうか?(^^;
>>99
そうですね。
デザインやアイディアは当時としては
素晴らしいと思いますよ。
0101nobodyさん02/03/03 17:59ID:???
KENTが有名になったのは良く言えば先見の明があった、
悪く言えば運が良かった。
それはそれですごいことだ。
0102nobodyさん02/03/03 19:05ID:???
ヤフーでメガネマーク(Coolマーク?)が
ついてるのも大きいやねぇ。
0103nobodyさん02/03/04 00:04ID:???
>83
変数の宣言適当って?

あ、別にKENTのスクリプトなんて全然知らんのだけど、
どういう手法が適当にあたるのか知りたくて
01048302/03/04 08:32ID:GsS8DugV
>>103
そうですねぇ、
プチボードを例にあげると、
サブルーチンhtml_logの中で
次のような部分がある。

# ログを読み込み
open(IN,"$logfile") || &error("Can't open $logfile");
@lines = <IN>;
close(IN);

# 記事番号をカット
shift(@lines);

# 親記事のみの配列データを作成
@new = ();
foreach $line (@lines) {
local($num,$k,$date,$name,$email,
$subj,$com,$url,$host,$pw,$color) = split(/<>/,$line);
# 親記事を集約
if ($k eq "") { push(@new,$line); }
}

localで局所変数を宣言してますよね?
けど、それ以外の変数は宣言してないですよね?
このサブルーチンでしか使ってない$lineとかは
my($line);
とかして宣言するべき。
なんで一部だけ思い出したように宣言してんの?

ついでだから言っておくけど、
if ($k eq "") { push(@new,$line); }
ってのは最悪ですよね。
配列に一個づつ付け足していく処理だから
付け足すたびに配列が変更される。
・・・・・・
なんてダサイんだ・・・。
01058302/03/04 08:35ID:GsS8DugV
省略されちゃった。ごめんよ。

ちょい訂正。
$lineは宣言しなくていいっすね。
というより、$lineは使わない方がいい。
$_つかっとけ!
0106nobodyさん02/03/04 09:00ID:???
>>105
「$_は使うな(or使わない)」って言うヒトも
いるよ。好みの問題だと思うけど。

むしろグローバルが多くて、しかも小文字で
コメントも無かったりするのはあんまりだと
思う。
01078302/03/04 10:08ID:???
>>106
ほんと?$_使うなって言うヒトいるんだ。
煽りじゃなくて、初みみ。
いや、変数は少ない方がいいと思ってるから
$_は推奨されるもんだと思ってた。
0108nobodyさん02/03/04 10:28ID:???
>>107
ブロックによって内容ころころ変わるからね。$_。
すべてのサブルーチン+グローバルに用途の違う$omaemonaが定義されている状態に似てる。
01098302/03/04 11:56ID:???
んじゃ、$_を使うなっていう理由は
$_の中身がころころ変わって分かり難いから?
0110nobodyさん02/03/04 12:18ID:???
>>109
そじゃないの?
01118302/03/04 12:28ID:???
ぬぅ。
ブロックで見るだけだから
分かり易いと思うんだけどなぁ・・・。
便利だし。省略できるから書き易いし。
きれいになるし。
良い事しかないと思うよ。
まぁ、そのへんが>>106さんが言ってる"好みの問題"なのかな。
0112nobodyさん02/03/04 12:35ID:???
>>111
>>108 110だけど俺も$_派。
011310302/03/04 12:50ID:???
83さんありがとう
なるほど、確かに使い方が変ですね・・

ちなみに俺は$_派
省略出来るしなんかスッキリする
01148302/03/04 13:09ID:???
>>103
ちなみに個人的には局所変数の宣言は
サブルーチンの先頭にまとめてするのがいいと思う。
どの変数が使われてるのかが一目でわかるから。
これは明らかに個人的な趣味の範囲ですけど(^^;
0115nobodyさん02/03/04 13:09ID:???
>>114
C言語erにありがちな発想。
俺もそれ大推奨(笑)。
0116nobodyさん02/03/04 13:37ID:???
>>114
俺も先頭で全て宣言している。
グローバル変数もvarsでスクリプトの先頭で宣言している。

>>115
C++使いなら変だと思わないかもね。途中でint i=0;なんてのができるらしいから。


Perlへの文句だけど、仮引数を@_に収めるのはやめてほしい。
サイズが可変の配列も気持ちが悪い。
型なしは論外。
01178302/03/04 15:37ID:???
>>116
>グローバル変数もvarsでスクリプトの先頭で宣言している。

いやぁ、厳密ですねぇ(^^)
もしかして、subsやstrictも使ってます?
0118nobodyさん02/03/04 18:01ID:EPIeUZr0
http://www.kent-web.com/
落ちてる?
0119nobodyさん02/03/04 18:03ID:???
>>118
落ちていない。
5千万HITを越えたんだね。
0120116じゃないが02/03/04 18:33ID:???
厳密ですね、っていうか、
-T(これに相当するプラグマあったっけ?)と
use strict、warningsはしとく事を個人的にはすすめる。
あとvarsじゃなくてourがあったろ、5.6くらいから。
バージョンが古いなら仕方がないけど。
ああ、KENTはPerl4で書いてるからこの辺どうなるんだろうな。
Perl4は分からない。
0121nobodyさん02/03/04 19:48ID:???
>>120
4ならmyもuseも使えないはず。
あとリファレンスも。
01228302/03/04 20:34ID:???
そっか。KENTはPerl4で書いてるのか。
ならmyがないのは許せる。
01238302/03/04 20:55ID:GsS8DugV
>>118
俺もアクセスできねぇ〜。
0124nobodyさん02/03/04 22:41ID:???
でもlocalは使って欲しくないか?
0125nobodyさん02/03/04 22:45ID:???
>>124
スコープのない言語なんてBASICと対してかわらん。

と、暴言を吐くテスト。
01268302/03/04 22:52ID:???
>>124
非常に使ってほしいです。

>>125
そういう意味ではその通りですよねぇ。

なんか気付いたら
俺、このスレに寄生してるな。
そろそろ巣にかえろ。
0127nobodyさん02/03/04 22:58ID:???
KENTのスクリプトってサブルーチンに引数を
渡している箇所がほとんど無かったような気が。
# 皆無だっけ?
0128nobodyさん02/03/04 23:05ID:???
>>127
そんなにひどいスクリプトなんですか!?
拾ってこよう・・・・
012912802/03/04 23:27ID:???
@_ = 2個
$_[n] = 4個でした。

すくねぇ・・・・
しかもローカルにした方がよい変数もグローバルにしちゃっているし。
Perlの言語仕様にも問題があるんだけどね。
013012902/03/04 23:28ID:???
あ、スクリプトはおなじみのYY-BOARDです。
0131nobodyさん02/03/05 00:48ID:???
いや、$_[n]を使いまくってる方がどうかしてると思うが。
危険性とか速度って意味では。
KENTの場合は見通し良くするために各処理を纏めてるだけみたいだから、
引数渡すような機会がそもそも少ないじゃん。
引数これこれに関してはこれで良いんじゃない?

>>121
ごめん、Perl4に-T、-w、それとuse strictの代わりがあったっけ?
って意味です。あるなら使うべきだろうし、
無いならKENTがやってなくても仕方ない、っていうか当然だし。
#まぁTとwに関しては自分でデバッグするときのみ使ってるって可能性もある。
0132nobodyさん02/03/05 00:56ID:???
しっかしKENT、よくPerl4で頑張るわ。
$pname = "<a href=\"mailto:$pmail\">$pname</a>";
とかさ。
Perl4ってqqないんだろ?
0133nobodyさん02/03/05 01:22ID:???
名無しさん@お腹いっぱい。
0134nobodyさん02/03/05 02:21ID:???
今時Perlのヴァージョンが4以下のところってあるの?
某大手プロバイダの一部のサーバーでは4をつかっているらしいけど。
0135nobodyさん02/03/05 08:35ID:???
凡人は凡人について語る 、と。
http://www.namazu.org/~satoru/misc/nasty-laws.html
0136nobodyさん02/03/05 19:25ID:kyumy2tr
今日もkent落ちてるみたいですが・・・?
0137nobodyさん02/03/05 20:28ID:zOhxQHL3
なぜつながらないの。。。?
アンケートのページを作成したいのに(;´Д`)
ずーっとつながらないよ
0138nobodyさん02/03/05 21:29ID:???
書け。
0139nobodyさん02/03/05 22:29ID:E/vDu3TX
URL変わったのかな?
↓のアドレスだと表示されるよ。
http://www.kentweb.jp/
0140nobodyさん02/03/05 23:17ID:???
神様ありがとーヽ(´ー`)ノゎ-ぃ
0141 02/03/06 00:26ID:???
でもCGIダウソできない。
0142nobodyさん02/03/06 00:30ID:???
>>141
できるよ。
リンク先のアドレスを見るとどこにあるか分かるでしょ。
それのkent-web.comをkentweb.jpに変えるだけ。
0143nobodyさん02/03/06 00:36ID:???
www.kent-web.comからIPアドレスを正引きできないねぇ・・・・
0144nobodyさん02/03/06 02:40ID:???
俺ずっと普通に見れたけど
なんで?
0145nobodyさん02/03/06 08:15ID:???
KENT=Perl厨
0146nobodyさん02/03/06 08:22ID:PUpcydRz
145=凡人
0147nobodyさん02/03/06 13:11ID:???
おい、お前ら!KENTの掲示板のスクリプトは処理に無駄があるとか
変だとかぬかしてるけど、お前らからみてスマートな処理をしてる
掲示板スクリプトを配布しているところを教えてください。
レス機能と削除機能(できれば投稿者が自分のレスを削除できる)が
ついてたらOKです。
0148nobodyさん02/03/06 13:13ID:???
訂正
誤:投稿者が自分のレスを削除できる
正:投稿者が自分の投稿を削除できる
0149nobodyさん02/03/06 13:27ID:vlDYU2B/
自分でつくれ。
教えてやっから。
0150nobodyさん02/03/06 13:44ID:+NQmBIw/
投稿者が自分の記事を削除できる機能って必要?
0151nobodyさん02/03/06 13:46ID:???
>>135
これなんだよな。
技術のある人はデザインのセンスが無い。
だからうけない。上で誰か同じこと言ってた気がするけど。
0152nobodyさん02/03/06 13:52ID:???
>>147
くずはすくりぷと。積み上げ式ならこれだろ。
配布元は消えてるけど検索すれば見つかるよ。
0153nobodyさん02/03/06 14:40ID:???
>>150
必要。
できれば2chも(ワラ
0154nobodyさん02/03/06 15:41ID:???
イラネーヨ
0155nobodyさん02/03/06 16:55ID:DGEvFRh3
Web Forumの返信がいくら付いても右に寄らないで全て真下に付くように
するにはどこを改造すれば良いのでしょうか。
0156nobodyさん02/03/06 17:06ID:???
>>155
リスト関連のタグを削る
0157nobodyさん02/03/06 17:14ID:???
>155
他のスクリプト使う
0158nobodyさん02/03/06 19:29ID:6ja0P+vf
tripod.comなんですが、Trees BBSは動きませんでした。2ちゃんねるタイプ
も動かないのですが、Web ForumやYY BBSなどKENT氏のスクリプトは動作して
くれるんで助かっています。
0159nobodyさん02/03/06 20:24ID:???
極めて単純な単純なスクリプトだからね(pu
0160nobodyさん02/03/06 23:52ID:jDeJV0tv
KENT-WEB、いつになったら復活すんだろ?管理人死んだかな。
0161nobodyさん02/03/07 00:49ID:???
>>160
ん? どういう事?
普通に見えるが -> KENT-WEB 50,827,803count
0162nobodyさん02/03/07 01:23ID:???
>160
鯖移動みたいなのしたみたい。
1週間もすればDNSに行き渡るんじゃない?
0163nobodyさん02/03/07 06:52ID:45MhKeor
Web Forumで返信に元記事を含めないようにするにはどうすれば良いので
しょうか。
0164nobodyさん02/03/07 06:55ID:???
>163
PERL神に聞け
0165nobodyさん02/03/07 07:45ID:OGcrVR/H
サポート掲示板では以下の行為は「禁止」させていただきます

改造に関する質問
あくまで設置のためのお手伝いをすることが主旨です。「改造」については各自で工夫して行ってください。

です。
0166nobodyさん02/03/07 08:31ID:BW2DunIr
>>165
おまえなんか偉そうだな
0167nobodyさん02/03/07 12:57ID:???
ここで質問する人いるけど、
なんなの?
俺らにそのスクリプトをKENTのとこから探して
ダウンロードしてソースを見て解析しろと?
そんなメンドクセーことできるかよ。
せめてソースくらいUPしろや!
0168nobodyさん02/03/07 13:59ID:WvGJvci4
784行から788行を削除すると元記事が含まれません。
791行から799行を削除するとRe:元タイトルが表示されなくなります。
0169nobodyさん02/03/07 15:23ID:???
クソKENTのスクリプトをセキュリティだの何だのを
改造して配布しているやつほど気が知れない
0170nobodyさん02/03/07 16:02ID:???
>>169
いいこと言った!
0171nobodyさん02/03/07 17:40ID:1P3MQqbK
うまくいきました。ご親切にありがとうございました。
0172nobodyさん02/03/07 17:58ID:???
>170
いいとか悪い以前に、169ってなんか日本語が変じゃないすか?
0173nobodyさん02/03/07 17:58ID:???
まぁ169=170なのは明白だがな
017417002/03/07 18:05ID:???
>>173
ざんねん。
■ このスレッドは過去ログ倉庫に格納されています