トップページ⇒php
988コメント342KB

CGIに依存しないPerlの話題一般

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2001/05/31(木) 21:49ID:bKRSBFew
・コマンドラインからのPerl活用
・モジュール、オブジェクト指向プログラミング
・Perl6や.NET対応など
・各種GUIツールキット(Perl/Tk, Gtk-Perlなど)
・他言語による拡張(Inline::*, XS, Swigなど)

についてマターリと語り合うスレッドです。

#CGI関連の話題は、なるべく専用スレッドで。
0382Perl上級者01/10/26 16:02ID:???
何でも聞け。
0383名無しさん@お腹いっぱい。01/10/26 16:28ID:???
$fooRef = \$foo;
と
*fooGlob = *foo;
の違いを教えてちょ、上は$だけだ、とかじゃなくて
内部でどんな風にエイリアスされるのかが知り鯛DEATH
0384名無しさん@お腹いっぱい。01/10/26 16:30ID:???
あ、コイツ !!!!!!!!!!連発猿じゃん  (鬱
吐き気して来た
死ね!!
0385 != 382 01/10/26 16:56ID:???
連発猿?
0386 != 384  01/10/26 17:18ID:???
教えてください!!!!!!!!!! ←こう言う奴だろ?
彼は、〜〜級者、と言うキーワードに酷く敏感な様子 (p   
0387名無しさん@お腹いっぱい。01/10/26 17:42ID:???
むか〜し_gunzipさん(最近見かけないけど)が書いてた↓が参考になるかも。
http://www.angelfire.com/ak5/2ch-web-program/kako/979894521.html#825
0388名無しさん@お腹いっぱい。01/10/26 18:11ID:???
CGI.pm使ってるのってどうなの?
0389名無しさん@お腹いっぱい。01/10/27 00:20ID:e8mRTudG
ルーチンを関数にするののデメリットって何?
0390名無しさん@お腹いっぱい。01/10/27 01:58ID:???
関数呼び出しは非常に時間がかかる。
0391名無しさん@お腹いっぱい。01/10/27 18:37ID:???
ageageageage
0392名無しさん@お腹いっぱい。01/10/27 22:56ID:???
移転age
0393Perl上級車01/10/28 18:00ID:???
何でも聞け。
0394名無しさん@お腹いっぱい。01/10/28 18:57ID:xDgqA1mb
タイムスタンプでソート
ってどうやってやるんですか?
0395Perl上級社01/10/28 19:03ID:???
俺に相応しいことを聞け。
0396仕様書無しさん01/10/28 19:06ID:???
my $name = 'tinko pinpin';
1)
if($name eq 'tinko pinpin') {
 cnt++;
}
--------と
2)
cnt++ if($name eq 'tinko pinpin');

をループさせて速度を測ったら
1)21 wallclock secs (20.95 usr + 0.01 sys = 20.96 CPU)
2)10 wallclock secs (10.23 usr + 0.00 sys = 10.23 CPU)
くらい違いますが、内部ではどのような処理の違いがあるんですか?
アホな私にも分かるように教えていただけませんでしょうか?
0397Perl上級謝01/10/28 19:09ID:???
>>396
そんなことも分からんのか。とことん程度低いな(ワラ
039839601/10/28 19:10ID:???
教えて!!!!!!!!!!!!!!!!!!!!
0399名無しさん@お腹いっぱい。01/10/28 19:17ID:???
まともなスレッドに戻れよ...。
0400名無しさん@お腹いっぱい。 01/10/28 19:18ID:???
??????????????????????????????
?どれくらいの事ができたら「脱初心者」といえるのでしょうか?
??????????????????????????????
0401名無しさん@お腹いっぱい。01/10/29 01:20ID:???
>>396
どっかで見た質問。
0402名無しさん@お腹いっぱい。01/10/29 06:09ID:???
面白いね
0403あげ01/10/29 16:56ID:???
なにが?
0404[01/10/29 23:16ID:???
なにが?
0405名無しさん@お腹いっぱい。01/10/30 17:20ID:???
>>402
なにが?
0406名無しさん@お腹いっぱい。01/11/06 21:14ID:0STlIz2P
関数の処理の不可に関する日本のサイトあれば教えて欲しいです。
こんな処理するならこんなコードがベストだよ。みたいのとかです。
あと前でてましたけどこんな処理をすると内部ではこんな事がおきてるよ。
とかでもうれしいです。
0407名無しさん@お腹いっぱい。 01/11/07 00:16ID:???
関数って言うと漠然としすぎだなあ
結局アルゴリズムだと思うからム技のこのスレはBMかな・・・
http://pc.2ch.net/test/read.cgi/tech/967778156/l50
後、Cだけど診断室とか
http://www.pro.or.jp/~fuji/mybooks/cdiag/

後半は俺も知らない、正規表現エンジンの実装とか知りたくも無いし (汗;
ちょっとレス違いかなあ・・・
0408名無しさん@お腹いっぱい。01/11/07 00:33ID:???
サイトではないが

前半:
Perlクックブックを読む

後半:
ソースを読む

なんて。
0409名無しさん@お腹いっぱい。01/11/07 01:04ID:???
だれか解説キボン
0410名無しさん@お腹いっぱい。01/11/08 17:16ID:???
だれも分からないのかなぁ。
0411名無しさん@お腹いっぱい。01/11/09 01:43ID:???
>>408
いやそれで正しいでしょ。
結局ソース読まないと分からないことは多いし。

ま、個々の関数の処理効率なんかよりも、
書くプログラムのアルゴリズムが最適かどうかの方が、
全体の速度にはるかに寄与する。
アルゴリズムが最適でさらに速度を求めるならインライン C で書くべし。
0412名無しさん@お腹いっぱい。01/11/09 04:22ID:???
>>406
Perlメモ
http://www.din.or.jp/~ohzaki/perl.htm

わかりやすい Perl チューニングの話
              ミケネコ研究所
http://www.mikeneko.ne.jp/~lab/perl/tuning/

あとはログから_gunzip氏の発言拾うとか。
0413名無しさん@お腹いっぱい。01/11/10 23:53ID:???
パールのチューンアップについてもっと知りたいです
0414名無しさん@お腹いっぱい。01/11/11 01:37ID:???
use Benchmark;
use strict;

timethese(1, {
t1 => q{&addstr1;},
t2 => q{&addstr2;}
});

sub addstr1 {

    my($str) = '_' x 1000000;
    $str = '';

    foreach (0 .. 1000000) {
        $str .= '_';
    }

}
sub addstr2 {

    my($str) = '';

    foreach (0 .. 1000000) {
        $str .= '_';
    }

}

Benchmark: timing 1 iterations of t1, t2...
t1: 2 wallclock secs ( 1.97 usr + 0.00 sys = 1.97 CPU)
(warning: too few iterations for a reliable count)
t2: 3 wallclock secs ( 2.81 usr + 0.00 sys = 2.81 CPU)
(warning: too few iterations for a reliable count)
0415名無しさん@お腹いっぱい。 01/11/11 01:43ID:???
Cやれば良いのに (ボソッ
0416名無しさん@お腹いっぱい。01/11/11 10:25ID:???
んな程度の差違を気にするくらいならCで書けばいいのに。
0417名無しさん@お腹いっぱい。01/11/15 11:30ID:HBIil14t
「オブシェクト指向使えばいろいろ便利だ。」てのがよく言われてます。
掲示板程度ならオブジェクト使わないほうが効率いいんじゃないかと思うんですが,
どんな時に,どういう風に使えば便利ですか?
いいサンプルや解説ページとかあれば教えてください。
0418名無しさん@お腹いっぱい。01/11/15 11:50ID:???
憂鬱なプログラマでも読めば、perlerならRubyやるとか
>「オブシェクト指向使えばいろいろ便利だ。」
まあこう言うのはITオヤジのレベル、オブシェクト指向で彼女は出来ないし、
オブシェクト指向で奥歯に詰まったフライドチキンのカスは取れない
0419名無しさん@お腹いっぱい。01/11/15 12:35ID:???
>>370
何がどうすごいんだか分からないんですけど。
実行してもコードがでてくるだけだし。
0420名無しさん@お腹いっぱい。01/11/15 13:48ID:???
>>419
平行法で見ると#!がうき出て見える。
より目(交差法)で見ると引っ込んで見える。
0421名無しさん@お腹いっぱい。01/11/15 16:56ID:???
not 419だが

恥ずかしながら>>420のおかげで>>370がやっとわかった。
3Dってあるだろうがヴォケが!>俺
0422名無しさん@お腹いっぱい。01/11/15 18:59ID:???
Perlのハッシュについての情報きぼんぬ
0423名無しさん@お腹いっぱい。01/11/15 19:16ID:???
ハッシュの何を?
0424名無しさん@お腹いっぱい。01/11/15 22:15ID:???
naibukouzou!!!!!!!!
0425名無しさん@お腹いっぱい。01/11/15 22:34ID:???
>>2
0426名無しさん@お腹いっぱい。01/11/15 23:07ID:???
baka desuka?
0427名無しさん@お腹いっぱい。01/11/15 23:16ID:???
このスレッドには、内部構造についての知識を持った人は居ません。いじょ
0428名無しさん@お腹いっぱい。01/11/15 23:38ID:???
内部構造内部構造って女のパンツの中みたいに思ってんだな  ワラ
リンクリスト繋いでるだけだろ?
0429名無しさん@お腹いっぱい。01/11/15 23:45ID:???
例えが人格の卑しさを露わにしてますね(プ
0430名無しさん@お腹いっぱい。01/11/15 23:50ID:???
>>428
そんなこと誰でも知ってるだろ。(爆笑)
0431名無しさん@お腹いっぱい。01/11/15 23:58ID:???
PERL上級者くんは内部構造が大好きなんだね   ケラケラ(^∀^)
0432名無しさん@お腹いっぱい。01/11/16 01:29ID:wuoKPRpJ
>>431
うん、じゃないと万年ヘタレどまりだからね。
0433名無しさん@お腹いっぱい。 01/11/16 02:38ID:???
Effectiveあたりに載ってるので気に入らないなら
ソース読めとしか言えないなぁ・・・・
Perlは言語だけど、それ自体はCで書かれてるツールみたいなもん
だからね。
ドライバー(Perl書き)に求められるのは上手な車の運転
(常識的なコーディング作法)で、それはPerlに限った事じゃないだろ?
メカ(低レベルな内部構造)が知りたいならメカニック(C屋、asm屋)に
なってソース読むのが一番だよ
0434名無しさん@お腹いっぱい。01/11/16 05:12ID:???
まあ、マターリ行きまひょ。ム板みたいに荒れると嫌だし。
0435名無しさん@お腹いっぱい。01/11/16 17:16ID:???
>>433
激しく同意
0436名無しさん@お腹いっぱい。01/11/17 17:28ID:hx+Z154t
そんな事よりちょいと聞いてくれよ。
先日、OSの再インストールしたんです。WindowsME。
そしたら何故かSOSが使えなくなってるんです。
で、よく見たらなんかそ err 02 とか出力してるんです。
もうね、アホかと。馬鹿かと。
お前な、再インストール如きでエラー吐いてんじゃねーよてんじゃねーよ、ボケが。
再インストールだよ、再インストール。
なんかバックアップし忘れたファイルとかあるし。一家4人で再設定か。これは関係ねーや。
よーしCygwinフルインストールだー、とか言ってるの。これも無関係だな。
お前な、頼むから動いてくれと。
SOSはな、今まで何の問題も無く動いてたんだよ。
ActivePerlのpl2batがいつ捨てられてもおかしくない、
IOリダイレクトは出来るわパイプは繋がるわ、そんな便利さがいいんじゃねーか。バッチファイルはすっこんでろ。
で、再度ダウンロードをしてきたところ、どうやら"#command /c perl ..."だと動くんです。
そこでまたぶち切れですよ。
あのな、command /cなんてきょうび流行んねーんだよ。ボケが。
得意げな顔して何が、command /c だ。
お前は本当にcommand /cが必要なのかと問いたい。問い詰めたい。小一時間問い詰めたい。
俺、何か設定し忘れてるだけとちゃうんかと。

ダレカタスケテ...
0437名無しさん@お腹いっぱい。01/11/17 18:05ID:???
あう、省略されていた。

上のような現象に困ってます。
識者の方助けてくだされ…
0438名無しさん@お腹いっぱい。01/11/19 09:51ID:???
perl.comって頻繁に記事が追加されてるじゃないですか。
日本語でそういうことをやってるサイトってないんですか?
0439名無しさん@お腹いっぱい。01/11/22 14:39ID:5zsxNECC
age
0440名無しさん@お腹いっぱい。01/11/23 00:18ID:Xjh4pQJe
Windows上でActive Perl使ってるんですが、
Perlからドライブのボリュームラベルを取得する方法ってありますか?
今のところsystemでdirさせて得てるからダサいんでなんとかしたいっす。
0441名無しさん@お腹いっぱい。01/11/23 00:53ID:???
>437
ワラタ
最後の一行が大事ですな。
漏れはわからんです。。。
0442名無しさん@お腹いっぱい。01/11/24 06:28ID:???
>>440
Win32API
0443名無しさん@お腹いっぱい。 01/11/25 18:41ID:???
>>440
Win32API::File
044443601/11/25 22:50ID:???
うう、今だ解決の兆しなし…;-(
0445名無しさん@お腹いっぱい。01/11/25 23:09ID:???
>>442-443
お〜、ありがとっすー
モジュール、便利なんですねぇ
0446檀那さん、名無しです01/11/30 11:16ID:???
新しいモジュールを書きましたが、根性も勇気もないのでCPANに登録できません。
誰かレビューしていただけないでしょうか。
レビューしていただける方がいらっしゃったら改めてここにURLを貼り付けます。
0447名無しさん01/11/30 19:23ID:???
>446
誰もオメーに根性も勇気も期待してねぇーよ。CPANに
登録しねぇーならウゼェーから消えな。
0448名無しさん@お腹いっぱい。01/11/30 21:22ID:???
>>447 ウザイ。お前こそ消えろ。
口先だけのヘタレが大きな口をきくなカスが。

>>446 例えどんな物でも、公開してフィードバックを得ようとするのは有益だと思われ。
ただ2chはどうかな...と思わないでもない。
0449名無しさん@お腹いっぱい。01/11/30 21:32ID:???
>>446
*.pmとかmod_perl MLとかperlMLのがいいんじゃない?
0450名無しさん@お腹いっぱい。01/11/30 21:59ID:???
普通はcomp.lang.perl.modulesと思うよ。
ただ、似たようなモジュールがないかよーく確認してね。

ここに張っても誰かレビューしてくれるとは思うよ。
0451/名無しさん[1-30].jpg01/12/01 21:19ID:???
>>450様ほかの厚意に甘えてうpしました。
http://home.att.ne.jp/wind/love_cats/Time-JapanHolidays-0.03.tar.gz
0452名無しさん@お腹いっぱい。01/12/03 08:25ID:ttBTmnrV
age
0453名無しさん@お腹いっぱい。01/12/03 10:21ID:???
Perl5.5ってPerl5.005のこと?
0454名無しさん@お腹いっぱい。01/12/03 10:25ID:Jpx3osh/
あ。質問なのにsageちゃった。
ずっと疑問だったんで、誰か教えてください>>453
0455むぎ茶01/12/03 12:31ID:???
>>451
スキル低いので細かいところしか指定できんです(_ _)
@ISA は use base のがかっちょいいかと。
@EXPORT よりは @EXPORT_OK のほうがいいのでは?
名前空間分かれてるほうがいいって人多いと思う
0456むぎ茶01/12/03 12:34ID:???
>>451
read_holiday_list だけど
use Time::JapanHolidays(holidaysList => "myHolidays.list");
ってして IMPORT で呼んどいてくれるとうれしいかも。
0457むぎ茶01/12/03 12:39ID:???
>>451
デフォルトのデータは日本の祝日だけど中身はそうじゃないんで
Time::Holidays.pm のほうがよいのでは?
あと Holiday だけじゃなく MemorialDay もはいってるから
そういう名前もいいかも

あとね日付のデータだけど デフォルトにマージする仕掛けも欲しいです
身近な記念日とかマージして登録できるとうれしい
0458むぎ茶01/12/03 12:43ID:???
>>451
計算を必要とする祝日がべた書きなのがちと悲しい
ここもカスタマイズできるとうれしいなと。
0459名無しさん@お腹いっぱい。01/12/05 03:02ID:???
451はやる気なし。
0460名無しさん@お腹いっぱい。01/12/05 20:13ID:vhbZliPL
perlでグラフを書きたくて今月号のCマガのperlの連載にのってたGDGraphを
いれようと思ったのですが、ppmでinstall GDGraph としてyesを選んでも
Error installing package 'GDGraph': Could not locate a PPD file for package GDGr
aph
というエラーが出ます。
どうすればいいんですか?
0461名無しさん@お腹いっぱい。01/12/05 23:40ID:???
>>460
http://www.geocities.co.jp/Bookend-Soseki/6187/xiaxiu/pg/5.html
046246001/12/06 03:51ID:???
>>461
perlのバージョン上げたらいけました。
0463名無しさん@お腹いっぱい。01/12/12 06:28ID:???
ところで、451はどこいった?
0464名無しさん@お腹いっぱい。01/12/12 11:45ID:fZlaima3
LWP::UserAgent\?\?\???\????§????´?????
credentials\?\?\?\????????????°????????????????????????????????????´?°??????????±????????????????¶??¨??????????

?????¨??
\???\?192.168.0.1??admin????????\???\¶????root??\?\?\???\?pass??
credentials('192.168.0.1', 'admin', 'root', 'pass');
??\???\?????????\?\?\¨\?\???????????????
401 Unauthorized?????????????????±??????????

\?\???\?\?\???v5.6.0 built for i586-linux
0465すいません01/12/12 11:57ID:fZlaima3
LWP::UserAgentモジュールの認証に関する
credentialsメソッドがちゃんと動いていないみたいなんです。(使い方を間違ってるだけかもしれないので教えて下さい)

たとえば
サーバ192.168.0.1のadmin権限に、ユーザー名root、パスワードpassに
credentials('192.168.0.1', 'admin', 'root', 'pass');
をコールしてからリクエストを実行しても、
401 Unauthorizedしか返ってくるだけなんです。

ヴァージョンはv5.6.0 built for i586-linuxです。
0466名無しさん@お腹いっぱい。01/12/12 15:19ID:I43ox8JP
マニュアルを見る限りそーいう使い方はしないぞ。
perldoc LWP::UserAgent
/credentials

$ua->credentials($netloc, $realm, $uname, $pass)
Set the user name and password to be used for a realm. It is often
more useful to specialize the get_basic_credentials() method
instead.
0467すいません01/12/13 00:54ID:GtMIZEFM
credentials('192.168.0.1:80', 'admin', 'root', 'pass');
というふうに、第一引数に"ホスト名:ポート"と指定したらできました。
0468名無しさん@お腹いっぱい。01/12/19 05:09ID:???
詳しい人話題振って欲しいなage
0469あぼーんNGNG
あぼーん
0470名無しさん@お腹いっぱい。01/12/20 20:30ID:???
436の人どうだった? age
0471名無しさん@お腹いっぱい。01/12/23 10:56ID:DF8u6Gm1
こんなことしてもいいんでしょうか?

sub a {
my @i = (1, 2,3,3,3,3,3,3,3,3,3,33,3,3,3,3,3,334);
return \@i;
}

my $i = &a;
print $_ foreach ( @{$i} );

一応ちゃんと動くみたいですが、
my変数と
C言語の自動変数とは全然意味が違うんでしょうか?
0472名無しさん@お腹いっぱい。01/12/23 11:26ID:???
ok! 何の問題もなし。参照がある限り破壊されることはないよん。
0473デフォルトの名無しさん01/12/23 11:30ID:gQHYl0sG
動くね
何でだろ?リファレンスが有効だとスクラッチパッドって開放されないのかな・・・・
Perlのうんちくは全然分からないや。
個人的には凄く嫌だ(w

どなたか解説キボン
0474デフォルトの名無しさん01/12/23 11:32ID:???
あ、有難う>472 (^^
でも気持ち悪いなぁ・・・・
0475名無しさん@お腹いっぱい。01/12/23 13:35ID:???
ポインタを返しても変数は死んでるっていうほうが変だと思うけどねぇ……。
呼び出し元で使いたいからリファレンスを返すんでしょ。
使いたいものを返せばそれは使える、というのがPerl的なの。

>>473
>>472 がすでに全て解説している。
0476名無しさん@お腹いっぱい。02/01/01 18:04ID:???
age
0477名無しさん@お腹いっぱい。02/01/02 00:03ID:0AIkB5pj
ぬぬ。bcc32でなんとかXSモジュールをビルド出来ないものかと
二時間ほど粘ってみたがダメだった。無念じゃ…。
0478 02/01/02 10:03ID:XJ6nVU2M
>>477
どのモジュール?
mingw32とかはだめ?
あと、bcc32付属のmake使わずに、gnu makeつかえば、bcc32でもいけるかもね
0479名無しさん@お腹いっぱい。02/01/02 13:19ID:???
makeは付属のmakeだと明らかにダメなのでMake.pm(pmake)使ってます。
問題はperl.hとperlvars.hがコンパイルエラー。

エラー E2257 C:\perl5.6.1\lib\CORE\perl.h 1755: , が必要
エラー E2257 C:\perl5.6.1\lib\CORE\perl.h 1756: , が必要
エラー E2257 C:\perl5.6.1\lib\CORE\perl.h 1757: , が必要
エラー E2257 C:\perl5.6.1\lib\CORE\perl.h 1758: , が必要
エラー E2141 C:\perl5.6.1\lib\CORE\perlvars.h 22: 宣言の構文エラー
エラー E2141 C:\perl5.6.1\lib\CORE\perlvars.h 39: 宣言の構文エラー
エラー E2141 C:\perl5.6.1\lib\CORE\perlvars.h 22: 宣言の構文エラー
エラー E2141 C:\perl5.6.1\lib\CORE\perlvars.h 39: 宣言の構文エラー

因みに

#line 1755 perl.h
typedef pthread_t perl_os_thread;

です。
他のtypedefは引っかからないのに…お手上げです。

mingw32はよくわかりません。
0480名無しさん@お腹いっぱい。02/01/02 16:05ID:???
477,479です。

mingwはヘッダファイルのコンパイルは通りますが、
Makefileが全然ダメですね。
Config.pmのcc/ld/cppを分かる範囲で書き換えてもまだダメです。
mingwでコンパイルしたPerlがあればいいのかも…。
0481名無しさん@お腹いっぱい。02/01/02 20:46ID:???
ふと思ったんだがPerl6の"is"演算子ってPerl5の":"演算子みたいなものなんだろうか?
0482デフォルトの名無しさん02/01/03 02:15ID:???
>>480
bcc32は独自拡張、独自縮小が甚だしいから(GCCもだけど ^^ )
素直にCygwin入れてgcc使った方が良いような。。。。
「,」引っ掛かりなんていかにもbccが原因っぽい
■ このスレッドは過去ログ倉庫に格納されています