結局自分で作ればいいんだが、
標準で「これがあれば便利なのに・・・」
と思う関数は、どんなもの?
便宜的に名前をつけて、仕様を説明してみてくれ。
新しくperlで標準で欲しい関数は?
1名無しさん@お腹いっぱい。
01/12/15 03:41ID:43dxFG5680nobodyさん
02/04/21 17:38ID:??? #include "perl6.h"
#include "perl6/dbi.h"
// usage: program perl-expr files
int main(int argc, char** argv){
PERL6_MAIN_BEGIN;
Perl::SV dbh = Perl::DBI::connect("dbi:foo:bar.db");
Perl::SV sth = dbh->prepare("SELECT * FROM hoge");
sth->execute();
Perl::SV row;
while(row = sth->fetchrow_arrayref){
Perl::println(Perl::join(" ", row));
}
sth->finish();
dbh->disconnect();
PERL6_MAIN_END;
return 0;
}
#include "perl6/dbi.h"
// usage: program perl-expr files
int main(int argc, char** argv){
PERL6_MAIN_BEGIN;
Perl::SV dbh = Perl::DBI::connect("dbi:foo:bar.db");
Perl::SV sth = dbh->prepare("SELECT * FROM hoge");
sth->execute();
Perl::SV row;
while(row = sth->fetchrow_arrayref){
Perl::println(Perl::join(" ", row));
}
sth->finish();
dbh->disconnect();
PERL6_MAIN_END;
return 0;
}
8281
02/04/21 18:37ID:??? C++だった。ハズカシ
83ぺるにゃん
02/04/28 20:10ID:gfGqCBjT sort のお話ですにゃ。
今の Perl は、巨大な配列を sort すると、効率が悪くなります;;
@sorted = sort(@array);
@array の要素数が増えるにしたがって、処理時間が爆発します。
これは Perl の sort() 関数が、効率の悪いアルゴリズムを
使っているせいでしょうか?
かんたんな実験により、配列の要素数 を N とすると、perl の sort() 時の
比較回数はおよそ N * log N 回のオーダーという結果がでました。これは、
配列が 100 万要素だったとしても、たかだか N の20倍程度の比較回数にすぎません。
おそらくは最高レベルの効率です。私はこれに文句をつけることはできません。
では、sort() 自体は実用じゅうぶん速いのに、
なぜ上の1行は爆発的に遅くなるのでしょうか?試しにこう書いてみました。
sort(@array);
これは@array が100万要素を超えていても、じゅうぶん高速でした。
(当然、ボイドコンテキストなので、結果は捨てられるので、意味はありません)
ということは、巨大な配列の「複製」のために、ものすごく時間を
取られているということです。それはありうることです。
ソート結果を直接 @array に代入してしまう関数があれば、
これは解決できると思います。そういう sort関数を希望ですにゃ。
( 私は ruby 使いじゃないのですが、
ruby には、「破壊的 sort」が用意されているらしいんですねぇ・・・
さすがにゃ)
今の Perl は、巨大な配列を sort すると、効率が悪くなります;;
@sorted = sort(@array);
@array の要素数が増えるにしたがって、処理時間が爆発します。
これは Perl の sort() 関数が、効率の悪いアルゴリズムを
使っているせいでしょうか?
かんたんな実験により、配列の要素数 を N とすると、perl の sort() 時の
比較回数はおよそ N * log N 回のオーダーという結果がでました。これは、
配列が 100 万要素だったとしても、たかだか N の20倍程度の比較回数にすぎません。
おそらくは最高レベルの効率です。私はこれに文句をつけることはできません。
では、sort() 自体は実用じゅうぶん速いのに、
なぜ上の1行は爆発的に遅くなるのでしょうか?試しにこう書いてみました。
sort(@array);
これは@array が100万要素を超えていても、じゅうぶん高速でした。
(当然、ボイドコンテキストなので、結果は捨てられるので、意味はありません)
ということは、巨大な配列の「複製」のために、ものすごく時間を
取られているということです。それはありうることです。
ソート結果を直接 @array に代入してしまう関数があれば、
これは解決できると思います。そういう sort関数を希望ですにゃ。
( 私は ruby 使いじゃないのですが、
ruby には、「破壊的 sort」が用意されているらしいんですねぇ・・・
さすがにゃ)
84nobodyさん
02/04/28 22:06ID:??? switch欲しい……
サブルーチンで作ってみようと努力したが構造的に不可能だった鬱
サブルーチンで作ってみようと努力したが構造的に不可能だった鬱
02/04/28 22:16ID:???
>>83
Exegesesを見る限り、destructive sortがPerl6に取り込まれる可能性はなさそう。
>>84
Perl5では、外部モジュールで。
http://search.cpan.org/search?dist=Switch
Perl6では、givenという名前で組み込まれる予定です。
(switchと命名されなかったのは、C/C++/Javaのswitchとは違うということを際立たせるためだそうで)
http://www.perl.com/pub/a/2002/01/15/apo4.html?page=2#rfc%20022:%20control%20flow:%20builtin%20switch%20statement
用例 http://www.perl.com/lpt/a/2002/04/01/exegesis4.html
欲張りすぎて、ちょっとわかりににくひ。(組み合わせが23通りもあるのかよ...)
Exegesesを見る限り、destructive sortがPerl6に取り込まれる可能性はなさそう。
>>84
Perl5では、外部モジュールで。
http://search.cpan.org/search?dist=Switch
Perl6では、givenという名前で組み込まれる予定です。
(switchと命名されなかったのは、C/C++/Javaのswitchとは違うということを際立たせるためだそうで)
http://www.perl.com/pub/a/2002/01/15/apo4.html?page=2#rfc%20022:%20control%20flow:%20builtin%20switch%20statement
用例 http://www.perl.com/lpt/a/2002/04/01/exegesis4.html
欲張りすぎて、ちょっとわかりににくひ。(組み合わせが23通りもあるのかよ...)
86nobodyさん
02/04/29 11:52ID:5LS+M/ng うるせーバカ。
初心者は黙ってろ スレのレベルが下がる
初心者は黙ってろ スレのレベルが下がる
88nobodyさん
02/04/29 12:32ID:5LS+M/ng >>87
必死だな。誰かさん(大爆笑)
必死だな。誰かさん(大爆笑)
89nobodyさん
02/04/29 14:52ID:??? >(大爆笑)
ヤフーに帰れ
ヤフーに帰れ
90nobodyさん
02/04/29 19:01ID:NmdFgil6 >>89
必死だな。誰かさん(大爆笑)
必死だな。誰かさん(大爆笑)
91ロボ鉄 ◆MGTy6iYI
02/04/29 19:09ID:??? >>90
必死だな。誰かさん(大爆笑)
必死だな。誰かさん(大爆笑)
92nobodyさん
02/04/29 19:17ID:NmdFgil6 >>91
必死だな。誰かさん(大爆笑)
必死だな。誰かさん(大爆笑)
93nobodyさん
02/04/29 20:07ID:??? >>92
乙武必死だな(藁
乙武必死だな(藁
94乙武
02/04/29 21:16ID:??? 必死で生きてますが何か?
95nobodyさん
02/04/29 21:43ID:NmdFgil6 (゚Д゚)ハァ? しねばぁ?
96あぼーん
NGNGあぼーん
97not 83
02/04/30 11:53ID:9z6SUNiy >>85
> Exegesesを見る限り、destructive sortがPerl6に取り込まれる可能性はなさそう。
そうなんですか。むむー。
せめてsortを多重定義できればいいんですがねぇ。tieのSORTでもいいですが。
それにしても新構文はかなり奇怪ですなあ。
↓かなり驚きましたよ。
if @array =~ $elem {...} # true if @array contains $elem
if $key =~ %hash {...} # true if %hash{$key}
if $value =~ (1..10) {...} # true if $value is in the list
if $value =~ ('a',/\s/,7) {...} # true if $value is eq to 'a'
# or if $value contains whitespace
# or if $value is == to 7
> Exegesesを見る限り、destructive sortがPerl6に取り込まれる可能性はなさそう。
そうなんですか。むむー。
せめてsortを多重定義できればいいんですがねぇ。tieのSORTでもいいですが。
それにしても新構文はかなり奇怪ですなあ。
↓かなり驚きましたよ。
if @array =~ $elem {...} # true if @array contains $elem
if $key =~ %hash {...} # true if %hash{$key}
if $value =~ (1..10) {...} # true if $value is in the list
if $value =~ ('a',/\s/,7) {...} # true if $value is eq to 'a'
# or if $value contains whitespace
# or if $value is == to 7
98nobodyさん
02/05/01 04:48ID:HoZj1fyx 標準関数よりも、標準ライブラリを充実させて欲しい
シェルもろくに使えない奴らに「複雑な設定が必要」なんて言われもない
批判を受けるのはもういやだ。
シェルもろくに使えない奴らに「複雑な設定が必要」なんて言われもない
批判を受けるのはもういやだ。
99nobodyさん
02/05/01 23:31ID:ZTriJMsX 女性の股を開く関数。
もしくは、チョンを殺してくれる関数。
もしくは、チョンを殺してくれる関数。
101nobodyさん
02/05/02 04:25ID:Opu6NMoF102ぺるにゃん
02/05/03 05:12ID:???103nobodyさん
02/05/03 13:14ID:??? ・ネットワーク関連の関数をモジュールに追い出し
・数学関数をモジュールに追い出し
・format writeはイラネーヨ
・数学関数をモジュールに追い出し
・format writeはイラネーヨ
104nobodyさん
02/05/05 19:28ID:??? いっそのこと関数全部モジュールに追い出してしまえ!
106nobodyさん
02/05/06 21:30ID:uN5rTlAV >>100
痩せすぎているので、少しは太れよってみんなから言われるよ
痩せすぎているので、少しは太れよってみんなから言われるよ
107nobodyさん
02/05/07 20:48ID:NQEaYM+J sage
108nobodyさん
02/05/08 13:20ID:??? そういうセリフ吐く奴ってoffで合うと大概口だけいかにももててますアピールの
きもい系のヤシなんだよねw
きもい系のヤシなんだよねw
109nobodyさん
02/05/08 19:53ID:??? /bin/grepを呼ぶのにエスケープの手間がかかるんで
ファイルからgrepする関数が欲しい。
@res = fgrep(/hoge/, /\.log$/,"/var/log/");
みたいな。
ファイルからgrepする関数が欲しい。
@res = fgrep(/hoge/, /\.log$/,"/var/log/");
みたいな。
110nobodyさん
02/05/08 20:18ID:??? >>109
それこライブラリの仕事だろ。
それ以前にgrepとfgrepという全く別の関数が存在することも大いに問題だし。
どうしてもというならShell.pmでも使っとけ。
#!/bin/perl
use Shell qw(fgrep);
$ENV{PATH} = '/bin';
@res = fgrep 'hoge', '/var/log';
それこライブラリの仕事だろ。
それ以前にgrepとfgrepという全く別の関数が存在することも大いに問題だし。
どうしてもというならShell.pmでも使っとけ。
#!/bin/perl
use Shell qw(fgrep);
$ENV{PATH} = '/bin';
@res = fgrep 'hoge', '/var/log';
111nobodyさん
02/06/24 20:29ID:??? 今は Time::Local があるからまあ許すが
その昔なぜ localtime が標準で実装されてて timelocal がなかったのか不思議だ。
その昔なぜ localtime が標準で実装されてて timelocal がなかったのか不思議だ。
112nobodyさん
02/11/25 09:32ID:ftkefb9E Thread.pmがActivePerlでまともに使えるようになってほしい。
Perl5.8.0ではちゃんと動くのか?
Perl5.8.0ではちゃんと動くのか?
113nobodyさん
02/11/25 20:58ID:??? mmapを標準関数、もしくはcore moduleでおねがいぃ
114nobodyさん
02/11/27 00:59ID:??? god("jpeg画像を120*120にリサイズする");
god("テキトーなデザインを出力する");
god("このソースが人に読まれない");
っていうのが欲しいです。
god("テキトーなデザインを出力する");
god("このソースが人に読まれない");
っていうのが欲しいです。
115nobodyさん
02/12/11 10:58ID:00jmHk8S CSVファイルを扱う関数。
任意の項目によるソートとかいろいろ。
任意の項目によるソートとかいろいろ。
116nobodyさん
02/12/11 22:50ID:??? >115
DBD::CSV使えば?
DBD::CSV使えば?
119nobodyさん
02/12/16 10:19ID:YT4sQXgY ↑すごいYO!
120nobodyさん
02/12/16 23:14ID:???121nobodyさん
03/01/12 02:03ID:qwhpCAH/122nobodyさん
03/01/12 17:53ID:??? use Benchmark;
timethis(20000, sub{ -f 'index.html'});
exit;
timethis 20000: 10 wallclock secs ( 9.77 usr + 0.00 sys = 9.77 CPU) @ 2047.08/s (n=20000)
遅すぎ、、、
もっと速くしてくれ。
timethis(20000, sub{ -f 'index.html'});
exit;
timethis 20000: 10 wallclock secs ( 9.77 usr + 0.00 sys = 9.77 CPU) @ 2047.08/s (n=20000)
遅すぎ、、、
もっと速くしてくれ。
123nobodyさん
03/01/12 19:13ID:bGDRedPP124ぺるにゃん
03/01/12 19:22ID:3H9ULczA126ぺるにゃん
03/01/12 21:03ID:3H9ULczA127nobodyさん
03/01/13 00:18ID:KvjrngEn Perlはじめたころ println() が欲しかった。
今でも欲すぃ
今でも欲すぃ
128nobodyさん
03/01/13 01:32ID:??? php() PHPが使える関数
129nobodyさん
03/01/13 02:03ID:/r5THG1/ ていうか
ネットワーク関連のいらない関数ステロ!
ネットワーク関連のいらない関数ステロ!
130nobodyさん
03/01/13 05:39ID:9OqkABMV Math.max()
Math.min()
Math.min()
133山崎渉
03/01/15 13:33ID:??? (^^)
134nobodyさん
03/01/27 21:06ID:??? Math.ave()
135山崎渉
03/03/13 17:49ID:??? (^^)
136山崎渉
03/04/17 12:14ID:??? (^^)
137山崎渉
03/04/20 06:19ID:??? ∧_∧
( ^^ )< ぬるぽ(^^)
( ^^ )< ぬるぽ(^^)
138山崎渉
03/05/22 02:20ID:??? ━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―
139nobodyさん
03/05/22 22:45ID:??? PHPのurlencode
htmlspecialchrs
nl2br
っていうか、自分でこしらえたけど
htmlspecialchrs
nl2br
っていうか、自分でこしらえたけど
140nobodyさん
03/05/25 07:07ID:??? use CGI
141山崎渉
03/05/28 17:10ID:??? ∧_∧
ピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。
=〔~∪ ̄ ̄〕
= ◎――◎ 山崎渉
ピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。
=〔~∪ ̄ ̄〕
= ◎――◎ 山崎渉
142山崎 渉
03/07/15 11:24ID:???__∧_∧_
|( ^^ )| <寝るぽ(^^)
|\⌒⌒⌒\
\ |⌒⌒⌒~| 山崎渉
~ ̄ ̄ ̄ ̄
143山崎 渉
03/08/02 02:29ID:??? ∧_∧
( ^^ )< ぬるぽ(^^)
( ^^ )< ぬるぽ(^^)
145nobodyさん
04/01/09 07:38ID:??? 塗る歩禁止!
146nobodyさん
04/12/21 18:37:46ID:Ctl+24VT 配列の要素の最大値や最小値を返す関数とか。
あったっけ。
あったっけ。
147nobodyさん
04/12/22 05:24:08ID:??? 今の関数使えたらなんでもいいけど
PHPの真似だけはしてほしくないね
PHPの真似だけはしてほしくないね
149nobodyさん
04/12/28 23:22:04ID:??? どんな改行コードでもchompしてくれる関数。
・・・ってか、自作した。
・・・ってか、自作した。
153nobodyさん
05/01/03 13:01:46ID:???154nobodyさん
05/01/05 09:38:00ID:???155nobodyさん
05/01/05 19:07:56ID:??? select関数をどうにかしてほしい
156nobodyさん
2005/07/20(水) 19:33:05ID:JCdrAQ5o >>118
sub merge {}
sub merge {}
157nobodyさん
2005/07/25(月) 15:46:43ID:??? sub make_money {
my $chobitto = shift;
my $gossori = $chobitto ** 1000000;
return $gossori;
}
一番の問題はどうやって関数にお金を渡すかだ。
my $chobitto = shift;
my $gossori = $chobitto ** 1000000;
return $gossori;
}
一番の問題はどうやって関数にお金を渡すかだ。
158nobodyさん
2005/07/25(月) 20:28:47ID:??? おっさん
159nobodyさん
2005/07/25(月) 22:38:22ID:63FLM844 夜のおかずになってくれる関数。
160nobodyさん
2005/07/28(木) 02:53:11ID:??? 新しく標準で欲しい関数は無いけど、
新しく標準で欲しいクラス、パッケージは沢山ある。
新しく標準で欲しいクラス、パッケージは沢山ある。
161nobodyさん
2005/07/28(木) 15:30:00ID:??? 標準で欲しい関数は無いけど、モジュールに追い出してほしい関数なら沢山ある。
ソケット・ネットワーク関連(どうせuse Socketしないとまともに使えない)
get* set* 系(getpwentなど。Windowsじゃ意味ねー。こういうものこそモジュールの仕事だろ)
フォーマット関連(おかげでwrite()が無駄に予約語に…)
セマフォ関連(これもモジュールで対応してくれ)
このくらい削ればプロセスサイズも大分小さくなって起動が早くなりそうだ。
ソケット・ネットワーク関連(どうせuse Socketしないとまともに使えない)
get* set* 系(getpwentなど。Windowsじゃ意味ねー。こういうものこそモジュールの仕事だろ)
フォーマット関連(おかげでwrite()が無駄に予約語に…)
セマフォ関連(これもモジュールで対応してくれ)
このくらい削ればプロセスサイズも大分小さくなって起動が早くなりそうだ。
162nobodyさん
2005/10/11(火) 04:25:38ID:hXdkdtTb Shift_JIS で書かれた文字列を
chomp($_ = <<'END');
こちょ♪こちょ♪
END
とせずに済む関数
chomp($_ = <<'END');
こちょ♪こちょ♪
END
とせずに済む関数
165nobodyさん
2005/10/12(水) 08:19:58ID:??? 次期PHPってParrot採用との噂は本当なん?
166nobodyさん
2005/10/12(水) 17:07:16ID:??? その噂ってparrotが2002頃に出るって言われてた頃のだよね。
167nobodyさん
2005/12/19(月) 02:00:37ID:??? 暗号化復号化
168nobodyさん
2008/01/23(水) 19:13:31ID:S4Tcgs5g もはや2年前の記事か・・・
169nobodyさん
2008/10/14(火) 14:31:52ID:??? elsifがelseifに!
・・・なったら泣くな
・・・なったら泣くな
170nobodyさん
2008/12/29(月) 02:00:29ID:??? わかりやすい変数名をつけてくれる関数が切実に欲しいです><
171nobodyさん
2009/02/19(木) 01:22:45ID:??? 組み込み関数をオーバーライドする関数
特にprintとか普通できないやつ
モジュールuseしたら勝手にポッポアップウィンドウが開くように
ヘッダーを書き換えたい
特にprintとか普通できないやつ
モジュールuseしたら勝手にポッポアップウィンドウが開くように
ヘッダーを書き換えたい
172nobodyさん
2009/02/19(木) 14:25:32ID:??? printは出来なくても
STDOUTは変えれるし
出力先も変えれる
STDOUTは変えれるし
出力先も変えれる
173nobodyさん
2009/06/13(土) 05:00:12ID:??? >>171
> 特にprintとか普通できないやつ
>
> モジュールuseしたら勝手にポッポアップウィンドウが開くように
> ヘッダーを書き換えたい
# perl -MPrintToMsgBox -e "print qq(hello)"
# PrintToMsgBox.pm
package PrintToMsgBox;
use Filter::Simple;
FILTER_ONLY code => sub { s/\b(?<!CORE::)print\b/use Win32; Win32::MsgBox/g };
1;
> 特にprintとか普通できないやつ
>
> モジュールuseしたら勝手にポッポアップウィンドウが開くように
> ヘッダーを書き換えたい
# perl -MPrintToMsgBox -e "print qq(hello)"
# PrintToMsgBox.pm
package PrintToMsgBox;
use Filter::Simple;
FILTER_ONLY code => sub { s/\b(?<!CORE::)print\b/use Win32; Win32::MsgBox/g };
1;
174nobodyさん
2009/12/06(日) 08:37:25ID:ev9aXePe175nobodyさん
2009/12/23(水) 23:53:26ID:scWrjl+i177175
2009/12/27(日) 15:55:53ID:+zTA95HS 分解すると
$_ = <<'END';
こちょ♪こちょ♪ 【\n】
END
chomp($_);
になる。
$_ = <<'END' とすれば、シフトJISの第2バイトに \x5c が使われ
ている場合でも変数に無事代入することができるが、副作用として
余分な改行コードが入ってしまうので chomp で取り除く。
でも今は昔。Sjis.pm がそれをやってくれる。
ありがたい時代だ。
$_ = <<'END';
こちょ♪こちょ♪ 【\n】
END
chomp($_);
になる。
$_ = <<'END' とすれば、シフトJISの第2バイトに \x5c が使われ
ている場合でも変数に無事代入することができるが、副作用として
余分な改行コードが入ってしまうので chomp で取り除く。
でも今は昔。Sjis.pm がそれをやってくれる。
ありがたい時代だ。
レスを投稿する
ニュース
- 【第2戦】大谷翔平 第1打席は3球三振 直球続けられバット空切る ドジャースは無安打で先制し由伸を援護 [征夷大将軍★]
- 2位『踊る大捜査線』3位『あぶない刑事』300名が選ぶ「最も印象に残る刑事ドラマ」1位に「刑事ドラマの金字塔」 [征夷大将軍★]
- 片山財務相が世銀IMF合同開発委議長に 日本初、高市首相発表 [蚤の市★]
- 岸田元首相、個人向け国債の税優遇「慎重」 NISA目的にそぐわず [蚤の市★]
- トランプ氏 支持率過去最低32%もアメリカ人の3割「岩盤支持層」MAGA派は揺らがず「敗れればトランプ失う」と危機感 ★2 [煮卵★]
- 【ひろゆき】だんじり祭りの死亡事故に私見「その人の決めた人生だと思う」「第三者が勝手な価値観で制限するのに反対なおいらです」★3 [Ailuropoda melanoleuca★]
- 【高市速報】だんじり男の憧れの「だんじりの一番上からの風景」がガチのマジで気持ちよすぎると話題にwwwwwwwwww [334972637]
- 【実況】博衣こよりのえちえち朝こよ🧪
- 【悲報】トランプ大統領「ロシアとウクライナは合意したんだ。なぜだか分かるか?私が合意したと言ったからだ」 [431136663]
- 隠し子ってどうやって作るの?
- 山本由伸、大炎上wwwww
- VIPでアズールレーン