TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼
2ch全板人気トーナメントでWebProg板を1位にしよう!
オブジェクト指向perl
新しくperlで標準で欲しい関数は?
Session管理してる?
中学生がPHPを習得するスレ
【質問】ASP.NETスレ Part7【雑談】
無駄なことをして遊ぼう
インストールマニアックス3 Hyper-V祭 Part2
GoogleAPIってどうよ?
【SG】fusianasanの仕様を考えてみるスレ【SG】

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


1 :01/12/15 〜 最終レス :2018/06/21
結局自分で作ればいいんだが、
標準で「これがあれば便利なのに・・・」
と思う関数は、どんなもの?
便宜的に名前をつけて、仕様を説明してみてくれ。

2 :
atexit((void)&undef(>>1);
kill('>>1')||die('1は氏にました!');
if(>>1){
  while(>>1)
    strtok(>>1,"関節");
}
unlink(>>1);

3 :
$@% ← こう言うの使わずに書かせてくれるプラグマ(w

4 :
他言語のmaxとかminにあたるのって標準でついてますか?
なんかリファレンスみても載ってないんだけど。

5 :
オレのしゃべった事をそのままプログラムにしてくれる関数。

6 :
複数プログラムの同時実行が欲しい

7 :
ハァ?

8 :
>4 maxって数学関数のmax?か確かボコるにも文字列返すのが有ったような
どっちにしろsortでやれ。

9 :
>>6
> 複数プログラムの同時実行が欲しい

forkとかsystemでいいのでは?

10 :
>>5
via voice 使え。

11 :
というか、Perl6 の仕様はフリーズされてるんじゃないの?

12 :
Perl7の話でもしてるんじゃないの?

13 :
あほか >7 

14 :
>>9
system関数はプロセスの終了待ちをするんじゃないかな。
同時実行ならやっぱforkだね。
あと、今出てるソースは、コンパイルする時に、
MultiThread対応にするかのconfirmがあったようなきがする。

15 :
>>13 何が?


16 :
>15 お前が
つーか素人大杉

17 :
>>16 だから、どういった点が?
ちなみに 7 != 15なんだが。

18 :
違う、13 != 16だが、俺はPerl7に突っ込んだんです。
多分13も、つーか煽ってごめんなさい 逝って来る

19 :
うわ、勘違いしていました。
こちらこそ申し訳ない。

20 :
13 = 15じゃないや...
15 = 17 だった...。ごめんなさい

21 :
なんだか知らんがみんな素直だ

22 :
ム板は殺伐としちゃってるからこっちの方が居心地良いね

23 :
uniq

24 :
まともなコンパイル機能じゃない?
今の perlcc がまともじゃないかはおいといて。

mod_perl と ふつーの perl cgi との差を縮めてくれ。

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

俺はsetjmpが欲しいな :-)

26 :
>>25
perldoc POSIX すると、
setjmp の実装には eval {}, longjmp の実装には die を使えと書いてある。

が、どう使えばいいかわかんない。

27 :
perldoc -q setjmp
とか?

28 :
なるほど、でもatexitの為に_END_が追加されたみたいに
気軽に使いたいのがホントのところ (^^;
因みに、どっかで拾ったタイムアウトのサンプルはこんなのだった
$SIG{ALRM} = _TimeoutEval;
alarm(3);
eval{# 処理;};
alarm(0);
if ($@){print "Process was timeout \n"}
sub _TimeoutEval{die;}

29 :
atexitの為の_END_って何?

30 :
解らんならそれでも良いよ

31 :
2ちゃんねるのIDを逆変換できる関数

32 :
>>29
BEGIN に対応するブロックじゃないの?
終了時にかならず実行するみたいな。

使ったことないが...

33 :
>>32
理解した。
__END__のタイポにしちゃ意味不明だしな…とか思って、なんだか分からなかった。

34 :
がんがんスレッド使えるようにしてほしいなぁ。
なんかもう、言語仕様的に。
Java の synchronized を凌駕するかのような使い心地の。

って、今現在Perlでスレッド使うときってどうするんだっけ?
使ったことないのになにいってんだ(゚Д゚)ゴルァとか言わないで...

35 :
使ったことないのになにいってんだ(゚Д゚)ゴルァ

36 :
で、スレッドってどうやるの?

37 :
今のところポータビリティのあるスレッドの使い方は無いんじゃないの?
多分。
Perlのバージョン違うと微妙に違うようだし。

38 :
うるせーバカ。
初心者は黙ってろ スレのレベルが下がる

39 :
Perl6 で実装される新しい機能のリストとかってもうどっか出てます?

40 :
>>39
英語なら結構そろってるっぽい
perl.comとか見てみたら?
俺は英語読めんけど。

41 :
関数って訳じゃないけど、範囲指定できるコメントアウトが欲しい。
Cでいうところの/* */のような。

42 :
=start
ソース

=cut

43 :
日本語文字列で文字コードを気にせず検索できる
jindex($str)

44 :
>>43
そういうのはjperlの方で実装してくれればいいや。

45 :
>>43
utf8は嫌か?

46 :
[日本語文字列で文字コードを気にせず検索できる]
に一票

47 :
>>42
41じゃないけど。
if (
    $a == 1 /* 〜判定 */
    or $a == 2 /* 〜判定 */
)
みたいのがほしい。

48 :
書いてみたら意味不明だった…これなら今のPerlでできるじゃん。。
↑を一行にまとめてあるような場合の話ね。

49 :
hashをマージする関数は欲しいなぁ。書いても3行なんですけどね。

50 :
文字コード変換専用の関数があればいいかもね。いちいちjcode.plを
呼び出しているCGIが多くてウンザリするから。
まあわたしの場合は1つのサブスティチュートに書き替えているけどね。

51 :
画像ファイルの拡大/縮小
くらいだけでもできたらうれしい。

52 :
じゃ俺はsendmail関数  (笑

53 :
高確率のロト6予想関数

54 :
>>51
それはモジュールでやるべきことでしょう。さすがに。

>>49
たしかに欲しい。

55 :
"Hello,world!!\n"を印字する関数。書いても1行なんですけどね。

56 :
>>55
たしかに欲しい

57 :
>>55
あらゆる言語で車輪の再開発がなされる部分だしね。

58 :
uniq,cp,mv

59 :
ビルトインクラスPerlWorldにジョークでHelloメソッドがあったら笑う。

60 :
こういう事したい if $sita < $naka < $ue;

61 :
>>60 Perl6でできる予定

62 :
関数じゃないけど、C言語みたいに、

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

こういう風にサブルーティンを書けるようにしてほしい。
もちろん仮引数はローカル変数で。

63 :
>>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
}

64 :
>>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 それはライブラリのお仕事かなぁ

65 :
>>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)
{
    # なんやかや
}

と書けます。

66 :
>>65
良くわからんけど、仮引き数は全部constになるのかな
つまり、内部的に実引き数へのポインタが@_で@_へのポインタが
仮引き数になるけど、仮引き数のプロパティはconstantになるとか何とか・・・・
んー、結構良いけど何となく嫌 (^ー^;
Damian 氏はC++ファンなんだろうか・・・

67 :
>>64
Perl5でも同じことが出来ませんか。

68 :
できる。それぐらいは分かってるだろ。

69 :
>>64
げげ、Perl6 で配列要素の参照方法変わるんですか...

70 :
標準でってことですか。失敬。

71 :
結構続いてるな(ぷっ

72 :
本物の匿名型グロブを返すgensym()が欲しい。
いやなんとなく。

73 :
もうすこし精度の良い乱数が欲しい。

74 :
>>73
http://www.math.keio.ac.jp/~matumoto/mt.html
なんかがよさげですね。。C,C++の標準関数になればみんな幸せになりそうですが・・

75 :
あげ

76 :

コテハンってウザイね。





77 :
>>49
%a=(%b,%c);
じゃだめか?

78 :

コテハンってウザイね。








79 :
>>78
      チャンチャラチャンチャラ      
  (⌒)  /
 (^ @^) -
  (⊃⊂) ヽ

      オッカシー      
  (⌒)  /
 (・ @^) -
○( ⊂) ヽ

80 :
#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;
}


81 :
>>80
それは何?
C/C++のコードではないようだし。


82 :
C++だった。ハズカシ

83 :
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」が用意されているらしいんですねぇ・・・
さすがにゃ)

84 :
switch欲しい……
サブルーチンで作ってみようと努力したが構造的に不可能だった鬱

85 :
>>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通りもあるのかよ...)

86 :
うるせーバカ。
初心者は黙ってろ スレのレベルが下がる




87 :
>>86←典型例

88 :
>>87
必死だな。誰かさん(大爆笑)

89 :
>(大爆笑)
ヤフーに帰れ

90 :
>>89
必死だな。誰かさん(大爆笑)




91 :
>>90
必死だな。誰かさん(大爆笑)


92 :
>>91
必死だな。誰かさん(大爆笑)







93 :
>>92
乙武必死だな(藁

94 :
必死で生きてますが何か?

95 :
(゚Д゚)ハァ? しねばぁ?


97 :
>>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

98 :
標準関数よりも、標準ライブラリを充実させて欲しい
シェルもろくに使えない奴らに「複雑な設定が必要」なんて言われもない
批判を受けるのはもういやだ。

99 :
女性の股を開く関数。

もしくは、チョンを殺してくれる関数。

100 :
>>98
これ以上ブクブク太らせて楽しい?

101 :
>>97
しんだらぁ?



100〜のスレッドの続きを読む
Perl VS PHP
ガチでオンラインショップ構築ソフトを作ろうと思う
■最強の出会い系サイト作ろうぜ!■
KENT WEB 総合スレ Part2
Perlのオブジェクト指向って無理やり実装だなw
Webプログラマーの寿命って・・・(・∀・;
【PHP】Lvうpしたいので宿題ください
Node.js + Express
新しい掲示板の仕様を考える
PDFのWebページは糞
--------------------
☆模型塗装初心者スレッド84 ガンプラからスケールまで★
森繁久彌のガイドライン 1600歳
Galaxy A7 Part7
【モンスト】モンスターストライク総合3644【総合ついに復活】IDあり
【飯塚】福岡筑豊突発オフ【田川】 Part5
聖飢魔II PART155
【米】ニューヨーク保健当局、入院を必要とする患者以外はPCR検査をしないよう指示 ★4
口煙の次は そう 耳煙
■YES〜イエス(80)世紀の曲り角
上野樹里、向井理玉木宏ワンオク下半身争奪バトル参戦3
【おみくじ】オカルト神社その37【!omikuji】
☆小樽スレ★ Part1
X JAPAN THREAD SHOCK #7741239042093755
特価品7219
[出禁厳守]山かけご飯381
NHK板自治・荒らし報告スレッド
最強芸人って 有吉だよね?真のお笑いヲタなら分かると思うが [221861979]
【東京】一緒にいた父親が靴紐を結び直してる間に小学5年の男の子が行方不明に 青梅市にある御岳山
【ZAR】南アフリカランドPart978
FPS症候群について語ろうよ33
TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼