CGIに依存しないPerlの話題一般/Part2
配列にぶち込んでる時点で負け。
allocするコストがでかいから、1行単位に読んだ方がはやかったりするよ。 Wordのデータファイルをperlでプレーンテキストだけ出したいんですけど
Wordのデータファイルの構造がのっているサイトとかありませんか? 25歳。
去年まで金無し君だったけど、オンラインカジノとパチンコで
二年で350万貯めた。一度やってみなよ。
初回のみだけど、1ドル以上のチップを買えば30ドル(4000円くらい)貰える。
もらうだけもらってプレイせずに換金することもできるし、ルーレットで赤か黒に
思い切って賭けてしまえば50パーセントで二倍になる。
金なきゃオフラインでゲームすればいいだけ。暇つぶしになる。
ビデオポーカーとかスロとか色々あるのでマジでお勧め。
http://www.imperialcasino.com/~1kl5/japanese/
25歳。
去年まで菜食主義だったけど、吉野家の牛丼並で
二年で350杯食った。一度行ってみなよ。
牛丼の日のみだけど、1杯以上の並を買えばスピードくじ貰える。
もらうだけもらって外れても味噌汁か玉子に換金することもできるし、
思い切って特盛にすれば550円で二倍になる。
金なきゃお茶飲んで帰ればいいだけ。店員にマークされる。
ねぎだくとか牛鮭とか色々あるのでマジでお勧め。
>>143
自分でさがしてみてなければ自分で作る。
んで、それをサイトに公開するとアンタが一番乗りの栄誉。多分。 今使ってるperlソースの本体が大きいため、パフォーマンス向上の為に
dump label;
label:
を使用してundumpで取り出したソースを使えないかと相談されました。
なんでも実行時のperlソースのコンパイルが一番時間がかかるらしい。
これって要するに変数の使用領域とかずっと固定になると思うんです
が、大丈夫なもんなんですか? もしパフォーマンスが上がって安全
であれば、もっと一般的な手法になってそうなので。要は動作させるた
めの安全性を知りたいわけです。使用してるperlのverは5.6です。
ageてみる。
>147
別に使用領域は固定ではなかろう? >>147
ソースを書き直すとかCで書き直すとかの選択はなしですか? ソース修正はありですが、期間とコストの問題で全面改修は無理との事です。
dumpのほかにperlccを使用することも検討しているようなのですが。 >>150
Apache::Registry 使うのがてっとり早くていいでしょう。 >>151
webサーバーがネットスケープサーバーという。
私もそれ最初に言って却下されますた.. んでPerl6はいつでますの?
大方
JavaVM=ParrotVM
Jave+Perl+Python=Perl6
みないなもんだろうけど にちゃんねるの鯖監視所みたいな鯖監視やってみたいんですが
URLを設定して
それがGET出来た場合1を返すプログラムってどんな感じなるんでしょうか? >>155
1. Connect出来たらTRUE
2. HTTP/1.1 200 OKならTRUE
3. 持ってきた内容に、指定したキーワードが入ってたらTRUE
どれがいい? Perlでネットワーク関連のおもちゃ作ってるんですが
バイナリデータの処理はやっぱpackやunpackでいいんですかね
ビットフィールドの扱いはvec関数がいいとかは聞いたんですが。。 WINでDOS窓消して、バックグラウンドで実行する方法って無いでつか?
WHSよりPERLの方が使い慣れてるので・・・
>>158
用途が違うのでいいとか悪いとかは無いよ。
やりたい事が実現できるのならどっちでもいいと思う。
>>159
wperl script.pl
で。
ただしSTDERRの出力先は開けといた方がいいかも。 おおー 有難う御座います >>◆hMJAPH9PWA さま
wperl(とVER付きの実行ファイル)は自分でも何となく試したのですが、パスの指定が間違えて居た様です。
拡張子を関連付けたら上手く行きますた
STDERRは適当にリダイレクトして使いたいと思います。
侍のVBSを色々弄ってるんですが、文字列の扱いに辟易してたんです
これで正規表現パワー炸裂できます
やっぱりPERLはイイ(・∀・)!!
多謝!!
>>153
Netscape enterprise server ならNSAPIでPerl組み込めばイイじゃん。
http://search.cpan.org/author/BSUGARS/nsapi_perl-0.24/
Netscape::Registry とか色々あるよ。 >>158
ぃえす。pack()/unpack()で気持ち良くなれます。
ただ32bit以上の大きめな桁で論理演算しようとすると悲しいことが起こるので、
そーいうときは分割して処理するかMath::BigIntをつかうかXSで書くとよろし。 >>160
>>163
仕事が忙しくて来れませんですた。。
レスさんきぅです。やぱしpack、unpackがラクでいいですね。
それと、話ついでの質問で恐縮ですが、
時刻合わせのためにNTPサーバに接続して
タイムスタンプを取得しますよね。
そんで自分のPCをサーバに同期させる、
というようなプログラムを作ってるんですが、
DOSに取得した時刻を渡すことってできるんでしょうか?
自PCがWinXPなので
system("C:\windows\cmd.exe");
でDOSを開くところまでは行ったんですがそのあとが分かりません。。
pack、unpackと全く関係ない質問で申し訳ないですが(;´д`)A 腐れマカーのみんな、CamelBonesで、Perl + Cocoaしよう。
RealBASICが買えないチミにおすすめですよ。
http://sourceforge.net/projects/camelbones/
Delegateでない、普通の串をPerlで作りたいんですが、無理ですか?
Proxomitronに限界を感じる… みんな気がついてないのか?
気がついていていえないのか?
どうみてもスレタイ日本語変だろ?
Perlに依存しないCGIの話題一般 っていうなら日本語になってるw
なんでPerlのスレなのに逆の意味になるんだYO アフォ CGIに依存しない、Perlの話題。これでわからないか? >>168はPerlをCGI専用の言語だと思ってるのかな? Perl 5.8なんですが,
use encoding 'euc-jp';
$a = 'あ';
print '1' if $a eq 'あ';
print '2' if $a =~ /あ/;
だと「1」が出力されます。
use encoding 'euc-jp', Filter=>1;
$a = 'あ';
print '1' if $a eq 'あ';
print '2' if $a =~ /あ/;
だと「12」が出力されます。
どうしてでしょう? スクリプトはEUCで書いてます。
まあひとつ言えることはおそらく板違いだということ。
プログラム技術板にPerlスレあるだろ。
WebProgに依存しないと言ったら確実に板違いだな。 >>179
Perl・CGI/レンタルサーバ板からPerl・CGIがPHP板に移動してきて出来たのがWebProg板なので板違いではありません >>177
12とでるのは、print '1';print '2'だから、12と思う。
ここは分かってるよね?
$a = 'あ';
print '1' if $a eq 'あ';
print '2' if $a =~ /\Qあ\E/;
というのはどうだろうか?
しかし、EUCなら/あ/で通ると思うが..
$a = 'あ';
print '1' if $a eq "\xa4\xa2";
print '2' if $a =~ /\xa4\xa2/;
で、12とでる? >>179
177が板違いなのは間違いないがスレ自体が板違いの可能性大
スレタイの日本語からしておかしいが
WebProg版のスレなのだからPerlに依存しないCGI一般の話題と解釈するのが普通
100歩譲ってCGIに限定しないPerlの話題一般 と解釈するならばこのスレ自体が板違い
>>182
昔からPerlはプログラム板とは独立してレン鯖板にあって、
それがココに移ってきたから板違いじゃない。
新参者は出て行けと言うつもりはないが、昔からの慣習を無知のまま勝手な事言うのは勘弁。 >>181
#!/bin/perl
use encoding 'euc-jp';
$a = 'あ';
print '1' if $a eq 'あ';
print '2' if $a =~ /\Qあ\E/;
print '3' if $a =~ /\xa4\xa2/;
からは1が出力され,
#!/bin/perl
$a = 'あ';
print '1' if $a eq 'あ';
print '2' if $a =~ /\Qあ\E/;
print '3' if $a =~ /\xa4\xa2/;
からは123が出力されます。
いまいちEncode.pmがわからないです。
>>184件のスクリプトをテストしてみたが
スクリプトの漢字コードeucで保存してる?
スクリプトの漢字コードが
Jisなら1だけ
Shift-Jisなら1,2
EUC-JPなら1,2,3
が出力されておるのだが・・・
\xa4\xa2 はEUC-JPのコードだからSJIS JISでまっちしないというのはりかいできるだろうけど
Jisならば KI KOが入るから \Qあ\E のパターンマッチは失敗してるってかんじでないかい?
てめえらperlのコンパイル手順について詳しく、超詳しく書いてあるサイト教えやがれ。
日本語のな。 >>186
自分で出来ねーんだったらエラそーにすんな
大体OSもいわねーのに手順も糞もあるかボケ >>186
$ perlcc foo.pl
話題にのって質問。
perlを無料でwindowsのexeにコンパイルできないだろうか?
贅沢言うとTk.pmも使いたいのですが。
ActivePerlのperlccは単体では使えないもよう。 >>185
下のスクリプトから123が出てくるのは期待通りなんですが,
上から1しかでてこないのが理解不能なんです。
use encodingの使い方間違ってる?
>>188
perl2exe
ttp://www.indigostar.com/perl2exe.htm
がexeにできるけどシェアウェアか・・・
どうせおもちゃだし・・・ >>189
encodingプラグマを理解していないんじゃない?
>>185で回答してもらっているでしょ
なんのためにencoding使おうとしている? >>183
だから、それならプログラム版に移ればよかっただけの話だろ
大量の2ch系掲示板郡が散在していて、
それぞれの掲示板がそれぞれの流儀でカテゴライズするのはかまわないが
板が増えてくれば、それなりにカテゴライズされた法則にしたがって運用しなけりゃ
ただのごみため場と化すのが自然の理
別鯖の板をどこかに移動するなら移動先のカテゴライズにしたがわなきゃダメだろ
移動するときプログラム版が許容量いっぱいで無理だったとかか?
それなら、移動する時期を誤ったか 無理せずもとの場所で存続するか
元の場所が閉鎖せざるを得ないとかの問題があったなら、ここ以外の他の場所探せばよかっただけだろ?
少なくとも、移ってきたから板違いじゃないっていうのは見当違い
>>192
よーするにだ。後から出てきて勝手な講釈たれんなボケナス。
そー言う事。
よーするにだ。最初からあったこのスレの内容がワケワカ。
そー言う事。 それだけWebプログラム関連の負荷が大きかったって事だろ
まぁ、板作るなら WebProgじゃなく NetProg だろ・・とは思うけどな
perlのパイプってのは非同期なのでしょうか?
b.pl ---------------------------------処理終了
|パイプ開始 |パイプクローズ
a.pl-----------------------------処理終了
パイプでデータを一通り渡し終えた後、b.plの処理が終わる前にa.plが死んでも問題ないでしょうか?
また、b.plが終了するまでa.plのパイプクローズがブロッキングされたりはしないのでしょうか?
答えてもらえたら前代未聞の2ch閲覧環境の開発を開始します。 >>201
確かに前代未聞だ。
答え。やってみれば良い。理論上は、close処理をしっかりすれば動作するはずだが。 ActivePerlで試したよ。
local($from,$to,@data) = @_;
unless(open(DELI,"| " . $deliveryprocess . " " . $from . " " . $to)){
return 0;
}
print DELI @data;
close(DELI);
return 1;
てなコードで、
#! /usr/bin/perl
print $ARGV[0] . "\r\n";
print $ARGV[1] . "\r\n";
while(<STDIN>){
print;
}
while(1){}
なスクリプトにパイプでデータ送ったら見事にブロックしてくれやがりました。
開発中止。 普通は同期を想定しているパイプで*パイプを同期で扱うスクリプト*を使って試せば、それは*同期な結果*しか帰って来ないだろう、頭悪い。
非ブロッキングにしたかったらちゃんとおぷちょん書きなさい。 >>205
> 普通は
普通でない場合について詳しく教えてください。 >>205
一ヶ月前のレスを煽ってるのも大概だと思われ。 perl 5.005 を使っていますが、
このような古い環境で UTF-8 → Shift JIS (EUC でも可) の
変換方法がありましたらお教え願えますか? >>210
jcode.pl の方ばかりを気にしていたので.pm の方をすっかり失念していました。
スレ汚しすいませんでした。 use strict;
sub new {
my $that = shift;
my $class = ref($that) || $that;
my $self = { a=>{A=>'A',B=>'B'}, b=>[qw/A B/] };
bless ($self, $class);
return $self;
}
sub method {
my $self = shift;
my $a = $self->{'a'};
my $b = $self->{'b'};
}
$a,$bをデリファレンスして利用するのではなくて
型グロブで選択的別名定義して%a,@bと実装できますか?
できるのでしたらどのように実装するのでしょうか? sub method{
my $self = shift;
our(%a, @b); # or use vars pragma
local *a = $self->{a};
local *b = $self->{b};
$a{foo} = 1;
push @b, 'foo';
}
またはAlias.pmとかな。
http://search.cpan.org/~gsar/Alias-2.32/Alias.pm
どっちにしてもあまりメリットは感じないが。 sub new
{
my $pkg = shift;
bless
{
name => shift,
age => shift
equips => undef
}, $pkg;
}
ここでequipsを配列にしたいのですが、
そのような事は可能でしょうか?
push($self->{equips}, $object);
$self->{equips}->[1]->getEffect();
($objectは別のクラスオブジェクトでgetEffectはそのメソッド)
みたいな感じで使いたいのですが。 equips を配列へのリファレンスにすることならできる
sub new
{
my $pkg = shift;
bless
{
name => shift,
age => shift,
equips => []
}, $pkg;
}
としておいて
push(@{$self->{equips}}, $object);
$self->{equips}->[1]->getEffect(); 巷のスクリプトを見るとPerlでサブルーチンにプロトタイプ宣言を行っていない
ものがほとんどなのですが、なぜプロトタイプ宣言を行っていないのでしょうか?
プロトタイプ宣言を行うと低速化したりという弊害等があるのでしょうか?
sub func($$@) #プロトタイプ宣言あり
sub func #プロトタイプ宣言無し >>216
反対に、宣言しなくてもいいのにわざわざ宣言するメリットって何?
その「巷のスクリプト」とやらはサブルーチン呼び出すのに &
つけてたり、メソッドとして呼び出してたりしてないか?
あと Perl 関係のメインスレは以下なので以後はそちらに。
http://pc5.2ch.net/test/read.cgi/php/1089779036/
http://pc5.2ch.net/test/read.cgi/tech/1090889189/ >>217
コンパイルタイムの型チェックと最適化がされるらしいので、
より効率的でより安全だと思うのですが。 らしいじゃなぁ
PerlOPみて調べて自分で考えろ >>219
要するにあなたは何も知らないんですね ;-)
簡単にお金稼ぎ!!!
以下の手順でやれば、無料でお金稼ぎができます。
企業も広告の宣伝になるから、お金をくれるわけです。
最初の1日目で 2000 円〜3000 円 は確実に稼げます。
実際の作業は数十分程度、1時間はかかりません。
(1) http://sinsetsu.lxl.jp/#.2ch.net
↑このアドレスからサイトに行く。
(2) ゲットマネー登録サイトに移動するので、
そこで無料会員登録をする。
※フリーメールアドレスでもOK。
(3)ポイントを稼ぎます。
懸賞の応募や無料会員登録をすればするほど、
ポイントが貰えます。
他にも沢山種類があるので、1日目で
約 20000 ポイントは GET できます。
(4) 10000 ポイントから、現金に交換できます。
(5)キャッシュバックという所がありますので、
そこから交換をしましょう。
これで現金を稼ぐといいですよ!!!
無料会員登録はこちらから↓
http://sinsetsu.lxl.jp/#.2ch.net >>168
お前頭悪いなwww
ばああああああああああああああああああああかwwwwwwwwwwww
死ねクズww
>>168
どっちかっつ〜と「CGIに特化しないPerlの話題一般」だな
突っ込んどいて間違えてるお前はマヌケ たとえばPerlスクリプトが$ENV{HTTP_REFERER}を期待していた場合、そのPerlスクリプトは、
CGIに依存してる。
use CGI;はCGIに依存してる。
だからスレタイ通りで何も間違いはない。 forkする前にhttpヘッダから取得した値を環境変数にセットしPerlはそれを読み出しているだけです。
環境変数は標準入出力と並んで主要なデータやり取りの手段でGUI、CUIといった区別無くC、Java、PHP等様々な言語で利用されています。
CGIがこのやり取りの手段を提供しているのは事実ですがCGIに依存しているという言い方は誤解を招くと思います。 >>228
最初の2行と最後の1行が全然繋がらないな。
CGIに依存したPerlに関する話題なんていくらでもあるだろ。 もっと簡単に言うのであればCGIは環境変数へアクセスする仕組みを用意しているが環境変数を
使ったからといってCGIかもしれませんしtcl windowsアプリかもしれませんしunix cuiアプリかもしれないのです。
また
> use CGI;はCGIに依存してる。
> だからスレタイ通りで何も間違いはない。
CGIに依存しているのであればスレタイに反し間違いです。
この読解力には驚くべきものがありますがあまりにも高度すぎる罠かもしれません。 >>230
いや、CGI:が何かはいや過ぎるほど知っているのだが。別に知識披露しなくていいよ。
「スレタイが間違ってる」という指摘に対し「何も間違ってない」と答えたまで。 >>230
凄いコミュニケーション能力ですね。
仕様書読めてますか? >>232
自分の知識をひけらかして相手を圧倒することで、
コミュニケーション能力の欠如を補うタイプだね。
そんな中途半端なCGI豆知識いらんっつの。
つーかさ、>>228、forkする前セットしたら親もセットされたままになるだろ。
forkの後、execの前が正しいんじゃないか?
あと当時はコマンドライン引数も主要なデータやりとりの手段だったんだぜ。 過去レス見てるとこのスレはCGI/Perl以外のPerlの話題で
板違いという風に言ってるように思えるんだけど
ここはCGIに依存するPerlを語るスレなの? >>231
use CGIしてもCGIには依存しませんよ。CGIを良く知っている人の発言とは思えませんが。 >>235
当たり前だろ。禅問答かよ。CPAN::CGIの存在そのものがCGIに依存してるんだよ。
それで揚げ足取ったつもりかw >>235
仕様書を縦読みして客に迷惑かけてそう。 >>236
揚げ足を取ったつもりはないのですが不快にさせてしまったようで申し訳ありません。
私の不勉強のためCPAN::CGIというものが何であるか分かりませんでした。
CGIに詳しい貴方様にCPAN::CGIが何であるのかご教示頂ければ幸いです。 >>238
そんなもん実在しない。スラング。
で、CPAN::CGIの話が思いっきりスレチになることが
分かってないな君はw
さすが仕様書読めない君。 ありがとうございます。
・CGI::CPANはCGIに依存しているので「CGIに依存しない話題」スレで話す事はスレ違い
という事は分かりました。結論で言うと貴方が初めに仰った
・use CGI;はCGIに依存しているので「CGIに依存しない話題」スレで話す事はスレタイ通り
というのは間違っているという私の指摘通りで合ってますでしょうか? >>240
あ、そんなとこで引っ掛ってたの。
俺は「スレタイが日本語として間違っている。言い直すべき」という指摘に対して
「スレタイの日本語は間違っていない。今のスレタイ通りでいい」と言ったまでなんだが。
やってくれるわ仕様書読めない君。