新しくperlで標準で欲しい関数は?

0001名無しさん@お腹いっぱい。01/12/15 03:41 ID:43dxFG56
結局自分で作ればいいんだが、
標準で「これがあれば便利なのに・・・」
と思う関数は、どんなもの?
便宜的に名前をつけて、仕様を説明してみてくれ。
0002デフォルトの名無しさん01/12/15 04:08 ID:???
atexit((void)&undef(>>1);
kill('>>1')||die('1は氏にました!');
if(>>1){
  while(>>1)
    strtok(>>1,"関節");
}
unlink(>>1);
0003仕様書無しさん01/12/15 04:27 ID:???
$@% ← こう言うの使わずに書かせてくれるプラグマ(w
0004名無しさん01/12/15 12:30 ID:bvka2lF6
他言語のmaxとかminにあたるのって標準でついてますか?
なんかリファレンスみても載ってないんだけど。
0005 ◆ggpsd4Ec 01/12/15 13:19 ID:???
オレのしゃべった事をそのままプログラムにしてくれる関数。
複数プログラムの同時実行が欲しい
ハァ?
>4 maxって数学関数のmax?か確かボコるにも文字列返すのが有ったような
どっちにしろsortでやれ。
>>6
> 複数プログラムの同時実行が欲しい

forkとかsystemでいいのでは?
>>5
via voice 使え。
というか、Perl6 の仕様はフリーズされてるんじゃないの?
Perl7の話でもしてるんじゃないの?
あほか >7 
>>9
system関数はプロセスの終了待ちをするんじゃないかな。
同時実行ならやっぱforkだね。
あと、今出てるソースは、コンパイルする時に、
MultiThread対応にするかのconfirmがあったようなきがする。
>>13 何が?
0016デフォルトの名無しさん 01/12/16 02:06 ID:???
>15 お前が
つーか素人大杉
>>16 だから、どういった点が?
ちなみに 7 != 15なんだが。
0018デフォルトの名無しさん01/12/16 02:18 ID:???
違う、13 != 16だが、俺はPerl7に突っ込んだんです。
多分13も、つーか煽ってごめんなさい 逝って来る
001913 = 1501/12/16 02:21 ID:???
うわ、勘違いしていました。
こちらこそ申し訳ない。
00201901/12/16 02:24 ID:???
13 = 15じゃないや...
15 = 17 だった...。ごめんなさい
なんだか知らんがみんな素直だ
ム板は殺伐としちゃってるからこっちの方が居心地良いね
0023名無しさん@お腹いっぱい。01/12/19 03:04 ID:TJPpnSMm
uniq
0024名無しさん@お腹いっぱい。01/12/19 03:56 ID:JMF99QDd
まともなコンパイル機能じゃない?
今の perlcc がまともじゃないかはおいといて。

mod_perl と ふつーの perl cgi との差を縮めてくれ。
>23
uniqってハッシュ有ればいいと思うが、何か凄い機能あるの?
>24
まともってのがどのレベルを指すのか分からんがバイトコードは
昔からまともだろ(と言うかまともじゃないと動かないし・・)
inlineCで出来るネイティブも勿論まともだぞ
つーか実行前の状態でメモリに展開されてるコードには絶対追いつけない(w

俺はsetjmpが欲しいな :-)
0026名無しさん@お腹いっぱい。01/12/19 19:40 ID:tRuF1VkQ
>>25
perldoc POSIX すると、
setjmp の実装には eval {}, longjmp の実装には die を使えと書いてある。

が、どう使えばいいかわかんない。
perldoc -q setjmp
とか?
なるほど、でもatexitの為に_END_が追加されたみたいに
気軽に使いたいのがホントのところ (^^;
因みに、どっかで拾ったタイムアウトのサンプルはこんなのだった
$SIG{ALRM} = _TimeoutEval;
alarm(3);
eval{# 処理;};
alarm(0);
if ($@){print "Process was timeout \n"}
sub _TimeoutEval{die;}
0029名無しさん@お腹いっぱい。01/12/25 00:23 ID:0CLty7FA
atexitの為の_END_って何?
解らんならそれでも良いよ
0031今年最後の流行01/12/25 01:49 ID:ffdVN669
2ちゃんねるのIDを逆変換できる関数
>>29
BEGIN に対応するブロックじゃないの?
終了時にかならず実行するみたいな。

使ったことないが...
>>32
理解した。
__END__のタイポにしちゃ意味不明だしな…とか思って、なんだか分からなかった。
0034名無しさん@お腹いっぱい。01/12/25 11:19 ID:qH/nvcoM
がんがんスレッド使えるようにしてほしいなぁ。
なんかもう、言語仕様的に。
Java の synchronized を凌駕するかのような使い心地の。

って、今現在Perlでスレッド使うときってどうするんだっけ?
使ったことないのになにいってんだ(゚Д゚)ゴルァとか言わないで...
0035お約束01/12/25 11:50 ID:???
使ったことないのになにいってんだ(゚Д゚)ゴルァ
で、スレッドってどうやるの?
今のところポータビリティのあるスレッドの使い方は無いんじゃないの?
多分。
Perlのバージョン違うと微妙に違うようだし。
うるせーバカ。
初心者は黙ってろ スレのレベルが下がる
0039名無しさん@お腹いっぱい。01/12/25 20:42 ID:qH/nvcoM
Perl6 で実装される新しい機能のリストとかってもうどっか出てます?
>>39
英語なら結構そろってるっぽい
perl.comとか見てみたら?
俺は英語読めんけど。
関数って訳じゃないけど、範囲指定できるコメントアウトが欲しい。
Cでいうところの/* */のような。
0042かもかも01/12/27 04:35 ID:GPy3eH+b
=start
ソース

=cut
0043名無しさん@お腹いっぱい。01/12/27 12:34 ID:J5IqrraU
日本語文字列で文字コードを気にせず検索できる
jindex($str)
0044名無しさん@お腹いっぱい。01/12/27 19:54 ID:Nt05OgVJ
>>43
そういうのはjperlの方で実装してくれればいいや。
0045 01/12/28 00:08 ID:fpyzPwrd
>>43
utf8は嫌か?
0046名無しさん@お腹いっぱい。01/12/28 01:04 ID:P8B6/AoK
[日本語文字列で文字コードを気にせず検索できる]
に一票
0047名無しさん@お腹いっぱい。01/12/28 07:46 ID:WCOesOKQ
>>42
41じゃないけど。
if (
    $a == 1 /* 〜判定 */
    or $a == 2 /* 〜判定 */
)
みたいのがほしい。
00484701/12/28 07:47 ID:???
書いてみたら意味不明だった…これなら今のPerlでできるじゃん。。
↑を一行にまとめてあるような場合の話ね。
hashをマージする関数は欲しいなぁ。書いても3行なんですけどね。
0050ダメ男01/12/29 03:17 ID:ZRazpEzQ
文字コード変換専用の関数があればいいかもね。いちいちjcode.plを
呼び出しているCGIが多くてウンザリするから。
まあわたしの場合は1つのサブスティチュートに書き替えているけどね。
0051名無しさん@お腹いっぱい。01/12/29 03:42 ID:vH5mwYOf
画像ファイルの拡大/縮小
くらいだけでもできたらうれしい。
じゃ俺はsendmail関数  (笑
高確率のロト6予想関数
0054名無しさん@お腹いっぱい。01/12/29 17:12 ID:YO8PVCNz
>>51
それはモジュールでやるべきことでしょう。さすがに。

>>49
たしかに欲しい。
"Hello,world!!\n"を印字する関数。書いても1行なんですけどね。
>>55
たしかに欲しい
>>55
あらゆる言語で車輪の再開発がなされる部分だしね。
uniq,cp,mv
ビルトインクラスPerlWorldにジョークでHelloメソッドがあったら笑う。
こういう事したい if $sita < $naka < $ue;
>>60 Perl6でできる予定
関数じゃないけど、C言語みたいに、

sub funcname($val1,$val2,...,$valn){...}

こういう風にサブルーティンを書けるようにしてほしい。
もちろん仮引数はローカル変数で。
0063_gunzip01/12/30 06:27 ID:???
>>3
Parrotの構文ツリー形式を吐くパーサを自分で書けばいいよ。
実例としてはparrot/languages/jako辺りのパーサ/コンパイラを見てくれ。

http://dev.perl.org/perl6/architecture
------
The parser will permit you to change its rules.
Rule sets define major languages (Perl, C, Python, Java, etc.)
and you can write new rules to define minor languages
(Perl without $ @ % sigils, Python with curly braces, etc.).
------

>>6
Perl6 RFCでも、スレッドに関して幾つか提案がなされてるけど、
(1, 178, 185ほか)RFC185のような実装になるみたい。
RFC 185: Thread Programming Model
http://dev.perl.org/rfc/185.html

>>14
./Configureの際に指定できるよ。
...最近は設定プログラムにGNU Autoconfを利用した物がほとんどで、
Perlで使っているMetaconfig(by Larry Wall他)は滅多に見かけない...。
(autoconfは大抵質問してこないから楽だけど。)

>>25
Perl6ではXS の代わりに Inline::* 系が標準になるので、
他言語で拡張パッケージを書くのはかなり楽になると思います。

>>41-42 >>47-48
RFC5, 102で提案されているけど、Larryは
http://dev.perl.org/perl6/apocalypse/2 の"Inline Comments for Perl"
で述べているとおり導入に消極的。
その代わりにプラグマinline_commentとかが追加されたりして。
Perl5でcppの使える環境なら-Pオプションで、コンパイル前に
Cプリプロセッサに食わせてやることで実現が可能だけど。

Perl6の"is"オペーレータで同様のことが出来るかも。
if ( test1() is "checking something" && test2() is "眠いな" ) {
    # hogehoge
}
0064_gunzip01/12/30 06:28 ID:???
>>43, 50
PerlIO::TextCodecクラスみたいなのが追加されたら便利かも。
(´-`).。oO(以下↓は妄想.....)

*------*
#!/usr/bin/perl6

use IO;

my $in = new IO::TextStream(@ARGV[0]); #Perl6の配列要素参照は@array[index]
my $out = new IO::TextStream(@ARGV[1]);
$in.open("r") or $out.open("w") or die "open() failed";

$*in is chomped; # 入力は自動的に改行を削除
$out.setCodec(PerlIO::TextCodec::euc_JP); # 出力はeuc-jpで、とか

while (!$in.end) {
    my string $line = $in.readline(); # 勝手にunicode文字列に変換して$lineへ

    $out.writeline($line); # $outのコーデックでunicode->euc-jp自動変換

    $out << codec("euc-jp") << $line << endl; # まにぴゅれーたすたいる

    print $out: $line.locale8bit(); #ロケールに応じたエンコーディングで出力

    my $codec = new PerlIO::TextCodec("shiftjis");
    print $out: $codec.fromUnicode($line);
}

$in.close();
$out.close();
*-----*

>>49 それは無いかなぁ
>>51-52 それはライブラリのお仕事かなぁ
0065_gunzip@書けるの?01/12/30 06:30 ID:???
>>60
Perl6では可能ですよ。詳しくは
RFC025 http://dev.perl.org/rfc/25.html と、
Apocalypse 3<Operators> の "multiway comparisons" の項を見てね。
http://dev.perl.org/perl6/apocalypse/3

>>62
RFC26 http://dev.perl.org/rfc/26.html で提案され、Perl6で
取り入れられる予定です。Damian Conway氏のExegesis 2
"Take that! And that!" に実例が出てきます。
また、省略時パラメータは //= で行います。
ですから、例えばC++で(今書いてたコードから拝借)

void
QMenu::insert(const QString& text, int index = -1)
{
    // なんやかや
}

をPerl6では、

sub
QMenu::insert(string $name is constant, int $index //= -1)
{
    # なんやかや
}

と書けます。
>>65
良くわからんけど、仮引き数は全部constになるのかな
つまり、内部的に実引き数へのポインタが@_で@_へのポインタが
仮引き数になるけど、仮引き数のプロパティはconstantになるとか何とか・・・・
んー、結構良いけど何となく嫌 (^ー^;
Damian 氏はC++ファンなんだろうか・・・
>>64
Perl5でも同じことが出来ませんか。
できる。それぐらいは分かってるだろ。
0069名無しさん@お腹いっぱい。01/12/30 18:00 ID:neJVFUng
>>64
げげ、Perl6 で配列要素の参照方法変わるんですか...
標準でってことですか。失敬。
00711=東京kitty01/12/30 23:25 ID:???
結構続いてるな(ぷっ
0072名無しさん@お腹いっぱい。02/01/03 15:02 ID:2yvOBGYW
本物の匿名型グロブを返すgensym()が欲しい。
いやなんとなく。
もうすこし精度の良い乱数が欲しい。
>>73
http://www.math.keio.ac.jp/~matumoto/mt.html
なんかがよさげですね。。C,C++の標準関数になればみんな幸せになりそうですが・・
あげ
007646902/04/21 09:11 ID:???

コテハンってウザイね。



0077nobodyさん02/04/21 10:45 ID:mSKVAdKd
>>49
%a=(%b,%c);
じゃだめか?
0078nobodyさん02/04/21 16:42 ID:???

コテハンってウザイね。






0079nobodyさん02/04/21 16:47 ID:???
>>78
      チャンチャラチャンチャラ      
  (⌒)  /
 (^ @^) -
  (⊃⊂) ヽ

      オッカシー      
  (⌒)  /
 (・ @^) -
○( ⊂) ヽ
0080nobodyさん02/04/21 17:38 ID:???
#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;
}
0081nobodyさん02/04/21 18:15 ID:???
>>80
それは何?
C/C++のコードではないようだし。
00828102/04/21 18:37 ID:???
C++だった。ハズカシ
0083ぺるにゃん02/04/28 20:10 ID: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」が用意されているらしいんですねぇ・・・
さすがにゃ)
0084nobodyさん02/04/28 22:06 ID:???
switch欲しい……
サブルーチンで作ってみようと努力したが構造的に不可能だった鬱
0085_gunzip@訂正歓迎02/04/28 22:16 ID:???
>>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通りもあるのかよ...)
0086nobodyさん02/04/29 11:52 ID:5LS+M/ng
うるせーバカ。
初心者は黙ってろ スレのレベルが下がる


0087nobodyさん02/04/29 12:30 ID:???
>>86←典型例
0088nobodyさん02/04/29 12:32 ID:5LS+M/ng
>>87
必死だな。誰かさん(大爆笑)
0089nobodyさん02/04/29 14:52 ID:???
>(大爆笑)
ヤフーに帰れ
0090nobodyさん02/04/29 19:01 ID:NmdFgil6
>>89
必死だな。誰かさん(大爆笑)


0091ロボ鉄 ◆MGTy6iYI 02/04/29 19:09 ID:???
>>90
必死だな。誰かさん(大爆笑)
0092nobodyさん02/04/29 19:17 ID:NmdFgil6
>>91
必死だな。誰かさん(大爆笑)





0093nobodyさん02/04/29 20:07 ID:???
>>92
乙武必死だな(藁
0094乙武02/04/29 21:16 ID:???
必死で生きてますが何か?
0095nobodyさん02/04/29 21:43 ID:NmdFgil6
(゚Д゚)ハァ? しねばぁ?
0096あぼーんあぼーん
あぼーん
0097not 8302/04/30 11:53 ID: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
0098nobodyさん02/05/01 04:48 ID:HoZj1fyx
標準関数よりも、標準ライブラリを充実させて欲しい
シェルもろくに使えない奴らに「複雑な設定が必要」なんて言われもない
批判を受けるのはもういやだ。
0099nobodyさん02/05/01 23:31 ID:ZTriJMsX
女性の股を開く関数。

もしくは、チョンを殺してくれる関数。
0100nobodyさん02/05/01 23:34 ID:???
>>98
これ以上ブクブク太らせて楽しい?
0101nobodyさん02/05/02 04:25 ID:Opu6NMoF
>>97
しんだらぁ?
0102ぺるにゃん02/05/03 05:12 ID:???
>>85

そうにゃんだ。残念。
でも明快なお答えをありがとう。

>>100
ぜい肉をとるために、getほにゃららっていう network 関連の関数を
モジュールに追い出すべきという意見はどうでしょう。
0103nobodyさん02/05/03 13:14 ID:???
・ネットワーク関連の関数をモジュールに追い出し
・数学関数をモジュールに追い出し
・format writeはイラネーヨ

0104nobodyさん02/05/05 19:28 ID:???
いっそのこと関数全部モジュールに追い出してしまえ!
0105nobodyさん02/05/05 20:11 ID:???
>>104
C言語ライクで良い感じですな。
0106nobodyさん02/05/06 21:30 ID:uN5rTlAV
>>100
痩せすぎているので、少しは太れよってみんなから言われるよ
0107nobodyさん02/05/07 20:48 ID:NQEaYM+J
sage
0108nobodyさん02/05/08 13:20 ID:???
そういうセリフ吐く奴ってoffで合うと大概口だけいかにももててますアピールの
きもい系のヤシなんだよねw
0109nobodyさん02/05/08 19:53 ID:???
/bin/grepを呼ぶのにエスケープの手間がかかるんで
ファイルからgrepする関数が欲しい。
@res = fgrep(/hoge/, /\.log$/,"/var/log/");
みたいな。
0110nobodyさん02/05/08 20:18 ID:???
>>109
それこライブラリの仕事だろ。
それ以前にgrepとfgrepという全く別の関数が存在することも大いに問題だし。
どうしてもというならShell.pmでも使っとけ。

#!/bin/perl
use Shell qw(fgrep);
$ENV{PATH} = '/bin';
@res = fgrep 'hoge', '/var/log';
0111nobodyさん02/06/24 20:29 ID:???
今は Time::Local があるからまあ許すが
その昔なぜ localtime が標準で実装されてて timelocal がなかったのか不思議だ。
0112nobodyさん02/11/25 09:32 ID:ftkefb9E
Thread.pmがActivePerlでまともに使えるようになってほしい。
Perl5.8.0ではちゃんと動くのか?
0113nobodyさん02/11/25 20:58 ID:???
mmapを標準関数、もしくはcore moduleでおねがいぃ
0114nobodyさん02/11/27 00:59 ID:???
god("jpeg画像を120*120にリサイズする");
god("テキトーなデザインを出力する");
god("このソースが人に読まれない");

っていうのが欲しいです。
0115nobodyさん02/12/11 10:58 ID:00jmHk8S
CSVファイルを扱う関数。
任意の項目によるソートとかいろいろ。
0116nobodyさん02/12/11 22:50 ID:???
>115
DBD::CSV使えば?
0117nobodyさん02/12/12 07:00 ID:???
>>116
DBIモジュールが標準モジュールになったら使うよ。
0118nobodyさん02/12/15 16:09 ID:???
>>49
俺様の力作使ってはくれまいか?
sub merge
{
return(@_);
}
0119nobodyさん02/12/16 10:19 ID:YT4sQXgY
↑すごいYO!
0120nobodyさん02/12/16 23:14 ID:???
>>118
usage:
%c = merge ( %a, %b );

こんな感じ?
確かにシンプルだ……。
>>49は、キーがかぶった場合の仕様を作らなかったから、これでもいいと言える。
勉強になります。
0121nobodyさん03/01/12 02:03 ID:qwhpCAH/
marge関数はPerl6で追加を検討しているらしい。
http://allabout.co.jp/computer/cgiperl/closeup/CU20010731A/index_2.htm
0122nobodyさん03/01/12 17:53 ID:???
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)
遅すぎ、、、
もっと速くしてくれ。
0123nobodyさん03/01/12 19:13 ID:bGDRedPP
>>49 >書いても3行なんですけどね。
%c = ( %a, %b );

どこらへんに三行要るんだろう?
0124ぺるにゃん03/01/12 19:22 ID:3H9ULczA
>>122
これは、
OSに処理を依頼しているわけですから、
どの言語でやっても遅くなると思いますよ。
012512203/01/12 19:27 ID:???
>>124
そうなのですか、、、
うぅ、残念です。
0126ぺるにゃん03/01/12 21:03 ID:3H9ULczA
>>123
元質問のひとは、一時的にメモリにギュバーっと展開しちゃうのは
嫌なのではないでしょうか
0127nobodyさん03/01/13 00:18 ID:KvjrngEn
Perlはじめたころ println() が欲しかった。
今でも欲すぃ
0128nobodyさん03/01/13 01:32 ID:???
php() PHPが使える関数
0129nobodyさん03/01/13 02:03 ID:/r5THG1/
ていうか

ネットワーク関連のいらない関数ステロ!
0130nobodyさん03/01/13 05:39 ID:9OqkABMV
Math.max()
Math.min()
0131 ◆hMJAPH9PWA 03/01/14 10:29 ID:???
5.8で標準モジュールに追加されたList::UtilとScalar::Utilは便利なんだけど、
Scalar::Utilは実装のほとんどをList::Utilに頼ってるんだから、
一緒にしてUtilityとでもすればよかったと思う。

>>121
mergeってC++のSTLにあるような関数だと思うけど。

>>129
そうだね、どうせuse Socketしないとまともに使えないんだから、
Socketモジュールに入れても混乱は少ない気がする。
0132nobodyさん03/01/14 21:29 ID:???
>>130
Math.mid()はいらんのか?
0133山崎渉03/01/15 13:33 ID:???
(^^)
0134nobodyさん03/01/27 21:06 ID:???
Math.ave()

0135山崎渉03/03/13 17:49 ID:???
(^^)
0136山崎渉03/04/17 12:14 ID:???
(^^)
0137山崎渉03/04/20 06:19 ID:???
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0138山崎渉03/05/22 02:20 ID:???
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―
0139nobodyさん03/05/22 22:45 ID:???
PHPのurlencode
htmlspecialchrs
nl2br
っていうか、自分でこしらえたけど
0140nobodyさん03/05/25 07:07 ID:???
use CGI
0141山崎渉03/05/28 17:10 ID:???
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
0142山崎 渉03/07/15 11:24 ID:???

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
0143山崎 渉03/08/02 02:29 ID:???
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0144 ◆3EsfZv7LPw 03/09/02 16:50 ID:???
けっとばすぞ〜
0145nobodyさん04/01/09 07:38 ID:???
塗る歩禁止!
0146nobodyさん04/12/21 18:37:46 ID:Ctl+24VT
配列の要素の最大値や最小値を返す関数とか。

あったっけ。
0147nobodyさん04/12/22 05:24:08 ID:???
今の関数使えたらなんでもいいけど
PHPの真似だけはしてほしくないね
0148nobodyさん04/12/24 19:51:15 ID:???
>>146
List::Util
でいいじゃん。
0149nobodyさん04/12/28 23:22:04 ID:???
どんな改行コードでもchompしてくれる関数。
・・・ってか、自作した。
0150nobodyさん05/01/01 22:52:21 ID:???
>>149
そんな関数いらね
0151nobodyさん05/01/02 20:00:36 ID:???
>>150
漏れの場合、なければ仕事にならん・・・。
0152nobodyさん05/01/02 23:43:57 ID:???
>>151
いらないと言ったのは
わざわざPerl側で用意するほどの関数ではないという意味だ
0153nobodyさん05/01/03 13:01:46 ID:???
>>152
なるほど
確かに簡単な処理で何とかなるが、速度面が心配でな・・・。
chompのリプレースって事ならあってもイイと思ったんだが、どうよ。
0154nobodyさん05/01/05 09:38:00 ID:???
>>153
確かに今使ってるのよりも処理が速くなればそれに越したことはないな
ただPerl側であまり用意すると便利な反面、コードの理解力を落とすから
そのバランスだよね
0155nobodyさん05/01/05 19:07:56 ID:???
select関数をどうにかしてほしい
0156nobodyさん2005/07/20(水) 19:33:05 ID:JCdrAQ5o
>>118
sub merge {}
0157nobodyさん2005/07/25(月) 15:46:43 ID:???
sub make_money {
  my $chobitto = shift;
  my $gossori = $chobitto ** 1000000;
  return $gossori;
}

一番の問題はどうやって関数にお金を渡すかだ。
0158nobodyさん2005/07/25(月) 20:28:47 ID:???
おっさん
0159nobodyさん2005/07/25(月) 22:38:22 ID:63FLM844
夜のおかずになってくれる関数。
0160nobodyさん2005/07/28(木) 02:53:11 ID:???
新しく標準で欲しい関数は無いけど、
新しく標準で欲しいクラス、パッケージは沢山ある。

0161nobodyさん2005/07/28(木) 15:30:00 ID:???
標準で欲しい関数は無いけど、モジュールに追い出してほしい関数なら沢山ある。

ソケット・ネットワーク関連(どうせuse Socketしないとまともに使えない)
get* set* 系(getpwentなど。Windowsじゃ意味ねー。こういうものこそモジュールの仕事だろ)
フォーマット関連(おかげでwrite()が無駄に予約語に…)
セマフォ関連(これもモジュールで対応してくれ)

このくらい削ればプロセスサイズも大分小さくなって起動が早くなりそうだ。
0162nobodyさん2005/10/11(火) 04:25:38 ID:hXdkdtTb
Shift_JIS で書かれた文字列を

chomp($_ = <<'END');
こちょ♪こちょ♪
END

とせずに済む関数
0163nobodyさん2005/10/12(水) 02:12:56 ID:???
>>162
それsjisじゃなくてWindowsの仕様だぞ・・・
0164nobodyさん2005/10/12(水) 02:47:54 ID:???
>>162
できましたー。

use encoding qw(shiftjis);

# え、これと違う?
0165nobodyさん2005/10/12(水) 08:19:58 ID:???
次期PHPってParrot採用との噂は本当なん?
0166nobodyさん2005/10/12(水) 17:07:16 ID:???
その噂ってparrotが2002頃に出るって言われてた頃のだよね。
0167nobodyさん2005/12/19(月) 02:00:37 ID:???
暗号化復号化
0168nobodyさん2008/01/23(水) 19:13:31 ID:S4Tcgs5g
もはや2年前の記事か・・・
0169nobodyさん2008/10/14(火) 14:31:52 ID:???
elsifがelseifに!
・・・なったら泣くな
0170nobodyさん2008/12/29(月) 02:00:29 ID:???
わかりやすい変数名をつけてくれる関数が切実に欲しいです><
0171nobodyさん2009/02/19(木) 01:22:45 ID:???
組み込み関数をオーバーライドする関数
特にprintとか普通できないやつ

モジュールuseしたら勝手にポッポアップウィンドウが開くように
ヘッダーを書き換えたい
0172nobodyさん2009/02/19(木) 14:25:32 ID:???
printは出来なくても
STDOUTは変えれるし
出力先も変えれる
0173nobodyさん2009/06/13(土) 05:00:12 ID:???
>>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;
0174nobodyさん2009/12/06(日) 08:37:25 ID:ev9aXePe
>>161
つuse POSIX;
つuse Moose;
つCoro;

4年も経つとうわ言も現実になるのね。
0175nobodyさん2009/12/23(水) 23:53:26 ID:scWrjl+i
>>162

関数はないけど、Sjis.pm を使う手がある。
0176nobodyさん2009/12/24(木) 05:31:18 ID:???
>>175
>>162はどういう意味?
01771752009/12/27(日) 15:55:53 ID:+zTA95HS
分解すると

$_ = <<'END';
こちょ♪こちょ♪ 【\n】
END
chomp($_);

になる。

$_ = <<'END' とすれば、シフトJISの第2バイトに \x5c が使われ
ている場合でも変数に無事代入することができるが、副作用として
余分な改行コードが入ってしまうので chomp で取り除く。

でも今は昔。Sjis.pm がそれをやってくれる。

ありがたい時代だ。


0178nobodyさん2009/12/27(日) 16:36:48 ID:???
>>177
なるほど、そういうことか。
d
0179nobodyさん2010/01/01(金) 00:56:50 ID:ErV6JCho
素数判定関数
0180nobodyさん2010/01/26(火) 21:18:29 ID:kYFNuHJ9
>>179

sub is_prime_number {
  if($_[0] =~ /^(2|3|5|7|11|13|17|19|23|29|31|37|41|43|47|53|59|61|67|71|73|79|83|89|97)$/){
    return 1;
  }
  return 0;
}

# 判定する素数を増やしたい場合は正規表現の中に追加します
0181nobodyさん2010/01/26(火) 21:38:03 ID:???
SJISやJISのURLエンコード

SJISやJIS、UTF-8のMIMEエンコード

文字列がどのコードか自動判定する関数

eメールのBODYに添付ファイルを埋め込んで返してくれる関数
0182nobodyさん2010/01/27(水) 22:02:40 ID:???
エンベデッドSQL
0183nobodyさん2010/01/29(金) 02:05:57 ID:5qb50s68
# 改良しました
sub is_prime_number {
  return grep /^$_[0]$/, <DATA>;
}
1;
__DATA__
2
3
5
7
0184nobodyさん2010/03/04(木) 18:56:50 ID:Dn/1ULzG
>>179ですが

却下
そもそも関数じゃないし
0185nobodyさん2010/03/04(木) 19:47:37 ID:???
sub is_prim{ $_[0] == 1 ? () : (1 x $_[0]) !~ /^(11+)\1+$/ ;}
0186nobodyさん2010/03/18(木) 02:14:15 ID:zgtpXchh
入力は @_
出力は return の値
呼び出し方法は is_prime_number($var)

どうみても関数なわけだが、今日は彼女とデートして
機嫌がいいので許さざるをえない
0187nobodyさん2010/03/28(日) 02:02:44 ID:???
>>184

184はどういうものを関数といっているのか知りたい。
素数判定関数じゃなくて構わないから何か関数を
書いて欲しい。

そうでないとこのスレ(タイ)を全うできない。
0188nobodyさん2010/03/29(月) 01:54:50 ID:???
例えば、

function abc (x,y,z) {
return x+y+z;
}

というものが関数。
0189nobodyさん2010/03/31(水) 00:06:07 ID:???
>>188

節子それ Perl 違う
Javascript や
0190nobody2010/10/11(月) 16:35:16 ID:???
# それならば...

prime_number[2] = 1;
prime_number[3] = 1;
prime_number[5] = 1;
prime_number[7] = 1;
function is_prime_number(n) {
  return prime_number[n];
}

# いずれにしても有限の個数しか判定できないけど、
# それはそうとあきらめるしかない
0191nobodyさん2010/12/21(火) 23:45:39 ID:+uMFqmGh
>>149

ようやく意味が分かった。
おれも自作することになった。
0192nobodyさん2010/12/23(木) 01:42:14 ID:???
関数名は chommp、できれば標準化してほしい。
0193nobobyさん2011/07/31(日) 15:10:17.22 ID:???
perl6eval、なんてな
  ∧_∧
  ( ・∀・)      | | ガガッ
 と    )      | |
   Y /ノ      .人
    / ) .人   <  >_∧∩
  _/し' <  >_∧∩`Д´)/
 (_フ彡 V`Д´)/   / ←>>137
            / ←>>143
0195nobodyさん2017/01/21(土) 19:00:04.91 ID:iuL6ICc7
ぬるぽ
新着レスの表示
レスを投稿する