[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 05/09 19:54 / Filesize : 194 KB / Number-of Response : 889
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【Perl,PHP】LLバトルロワイヤル6【Ruby,Python】



1 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 10:48:30 ]
最強のLL=軽量プログラム言語は、どれよ?

エントリーは、
Perl、PHP、Python、Ruby、JavaScript・・・
さあ、死ぬまで語りやがれ!!!

■LLとは?
軽量プログラミング言語(Lightweight Language,LL)とは、取り回しに優れ、
コードの作成や修正が容易と見なされるプログラミング言語のことを指す。

ここでいう「軽さ」はプログラマの負担の軽重を指し、
実行速度に優れているという意味ではない。

現在の水準では
・インタプリタ
・動的型
・正規表現
・関数オブジェクト
などを利用できるものがLLと呼ばれることが多い。(Wikipediaより)

■過去スレ
【Perl,PHP】LLバトルロワイヤル5【Ruby,Python】
pc12.2ch.net/test/read.cgi/tech/1238720336/
【Perl,PHP】LLバトルロワイヤル4【Ruby,Python】
pc12.2ch.net/test/read.cgi/tech/1234635513/
【Perl,PHP】LLバトルロワイヤル3【Ruby,Python】
pc11.2ch.net/test/read.cgi/tech/1215319832/
【Perl,PHP】LLバトルロワイヤル2【Ruby,Python】
pc11.2ch.net/test/read.cgi/tech/1209289408/
【Perl,PHP】LLバトルロワイヤル【Ruby,Python】
pc11.2ch.net/test/read.cgi/tech/1188997302/

543 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 22:11:56 ]
Perl信者が話をドローに持ち込もうと必死なんだろう。
失敗してるけど。

544 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 22:18:21 ]
def end self インデントは、既存のプログラムを読むときに簡単に
推測可能なもの。
Perlの特殊変数をはじめとする記号の数々は推測不可能。
phpは関数名や動作が推測不可能。

545 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 22:35:50 ]
> Perlの特殊変数をはじめとする記号の数々は推測不可能。
だとすると、Rubyの組み込み変数も推測不可能ってこったな。

> phpは関数名や動作が推測不可能。
意味ワカンネ。

546 名前:デフォルトの名無しさん [2009/07/13(月) 22:43:51 ]
記号が書いてあれば推測の手がかりになるけど、
文字間の略されてる部分を脳内補間して理解するのは
かなり信仰を深めないと無理。

547 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 22:51:54 ]
記号の意味なんてのは覚えりゃいい話だよ。
推測の可・不可なんて、覚えるまでの短期間だけのオハナシ。(馬鹿以外には)本質的ではない。
もちろんその記号群が数千とかあるなら、同じことはとても言えないけど、そうじゃないし。
そう滅多に増えもしないし。

548 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 22:53:18 ]
記号の意味っつーか、変数の中身を考えながら記号書かなきゃならんのがなあ
スクリプト言語なのにC言語でポインタ触ってる気分になる

549 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 23:41:41 ]
PHPの関数の名前から動作を推測するのは簡単だと思うけど、
関数が多すぎだし、関数名が長すぎる。

array_push($array, ..)みたいな書き方よりも、
$array->push(..)の方がすっきりするでしょ。

550 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 00:00:38 ]
$打つのがドルい

551 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 00:14:52 ]
>>549
この場合は順序が本質ではないか
オブジェクト指向脳であれば、というかデータ構造を操作するという視点に立てば
「arrayにpushしたい」と考えるのが自然だと思う



552 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 00:25:10 ]
PUSH ... TO ARRAY. でいいよ。

553 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 00:25:41 ]
>>551
それは単に思考が日本語だからではないか

554 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 00:51:22 ]
>>553
だからいいんじゃねーの?

555 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 00:55:37 ]
そんなあなたには、なでしこです。

556 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 01:04:30 ]
>>534
スクリプトにバグがあったときのIEのメッセージをなんとかして欲しい
もしかして今の新しいIEでは改善されてるのかな


557 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 01:54:35 ]
>>555
わざわざ日本語変換なんぞしてられるか

558 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 01:58:17 ]
ひらがなで打てばいいよ


559 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 02:01:38 ]
>>557
俺様専用言語でも作っとけ。

560 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 08:23:54 ]
>>547
>記号の意味なんてのは覚えりゃいい話だよ。
いやいや、Perlは$_をつかって記号すら省略してしまうじゃん
あんなのワンライナーを優先しすぎたクソ仕様
しかも@var=(1,2,3)の要素を参照するのが$var[i]とかウンコすぎる
@var[i]でいいだろ、ややこしいんだよ

>推測の可・不可なんて、覚えるまでの短期間だけのオハナシ。(馬鹿以外には)本質的ではない。
まさに洗脳された信者

561 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 08:46:01 ]
能力が著しく低くないとわからない物ってのも、世の中にはあるものね。
俺の婆ちゃんが一人暮らししてた頃、市販品の蓋一つ、取っ手一つとっても
手が不自由な婆ちゃんにとっては性質次第で色んな不便があることをよく言ってて、
ああそうなのかぁ、と気付かされることが多かった。



562 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 11:20:05 ]
たしかに記号だとググりにくい。

563 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 11:37:08 ]
grepっていえよ

564 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 12:34:11 ]
>>560
まだまだ訓練が足りない。

>$_をつかって記号すら省略してしまう
省略するかしないかはプログラマの自由。
言語仕様だけが原因ではない。

>$var[i]
@var[i]で参照してもよい。
そうするとスライスになるが、違いが
問題になることはあんまりないだろう。


565 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 13:25:09 ]
>>564
dankogai 乙

566 名前:デフォルトの名無しさん [2009/07/14(火) 13:29:22 ]
おもちゃはおもちゃらしく簡単に使えないとねぇ。C#でいいやってなっちゃうし

567 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 13:33:35 ]
>>564
まだまだ実践経験が足りない。

568 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 13:46:59 ]
結局自分のスキルに自信アリマス!って奴なんか
本当の意味で一人もいないと思うんだけどどう思う?

だから>>567みたいな煽り食らうと

「そうか・・・(´・ω・`)」ってなる。

569 名前:デフォルトの名無しさん [2009/07/14(火) 13:54:33 ]
あの…VBScriptは…
すみません。土台にすら上がってませんよね。ごめんなさいごめんなさい。


570 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 13:56:13 ]
perlは正規表現だけの言語だな。
他はなんか気に食わない。最近はいないけど、perl信者もかなりうざかったしw

571 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 14:04:57 ]
>>560
記号が嫌ならEnglish.pm使えば?

> いやいや、Perlは$_をつかって記号すら省略してしまうじゃん
変数省略できるが、記号の省略の意味ワカンネ。

> しかも@var=(1,2,3)の要素を参照するのが$var[i]とかウンコすぎる
> @var[i]でいいだろ、ややこしいんだよ
@var[..]は配列の範囲を返す。
リストコンテキストとスカラコンテキストは理解しようぜ。



572 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 14:34:30 ]
頭で理解しててもパッと見て判らんのよ、コンテキストって。
本質じゃないところに考える時間を割くことになる。
同じ表記が同じように通用しない。

Rubyは今は言わなくなったが、昔は「驚き最小限」なんて言葉があった。
元々PerlのパクりであるRubyにおいて
その驚きってのはコンテキストのことだったんじゃないかなと思う。

573 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 14:42:50 ]
昔は最小限での入力とか結構持てはやされてたな

今はなんだろ?
自分は入力保管とかバリバリ使うから見易さ・判り易さ重視で組むが。

574 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 14:50:47 ]
たとえ入力補完が発達しても数学みたいなもんで
最小限での入力というか、最小限での表記のほうがロジックが分かりやすいな。

575 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 14:51:18 ]
今は、一貫性だと思う。

576 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 16:42:55 ]
RubyってHSPに毛が生えたようなもの、みたいな印象しかないな。

577 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 16:49:03 ]
>>575
今・・・は・・・?ゴクリ

578 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 17:24:57 ]
>>575
一貫性重視なら最初からPython使えばいい。
Rubyは、Matzが書きたいように書けるのが第一で、一貫性なんて
対して重視されていない。

579 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 17:28:44 ]
便利さのための一貫性の犠牲は歓迎。
単なる不統一は修正すればいいだけ。
その修正をまったく受け入れないのであれば問題だけど、
まぁまぁ直している。

TOMOYO Linux で受け入れてくれるための交渉術、
とあったけど、Ruby には交渉下手な上から目線が多くて残念。

580 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 17:33:29 ]
>>578
御意

581 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 18:49:49 ]
$hoge = hage;
print @hoge, hoge, $hoge;




582 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 23:37:12 ]
>>571
>記号が嫌ならEnglish.pm使えば?
自分一人がEnglish使ったところで、ほかの人が使ってなかったら、結局記号の意味を勉強しないといけないんだから、意味薄いだろ。
そのくらいわかろうぜ。

>変数省略できるが、記号の省略の意味ワカンネ。
記号変数すら省略するってこと

>@var[..]は配列の範囲を返す。
だからそれがいけてないってことだよ。
@var[0]は最初の要素、@var[0,3]は0番目を含めて3つの要素、とかできたはずなんだから。
もちっと他の言語勉強しな。Pythonのスライスとか勉強してみ。

>リストコンテキストとスカラコンテキストは理解しようぜ。
そんなのが存在する時点でもうね。
そしてそれを「理解しようぜ」なんて言ってる時点で洗脳されすぎ。


583 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 23:43:05 ]
だから、嫌いな奴は洗脳とかキツい言葉を使ってればいいさ
普通の感性では習熟とかいうんだけどな

Perlのコンテキストにしても、関数の戻り値を柔軟に持てるとか
それなりの利点もあるし、便利に使える場面もある。
あんまりしつこいと下衆っぽいよ。

584 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 23:49:35 ]
関数の戻り値を柔軟に持てるってどういうこと?

585 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 23:54:15 ]
まともなPerl批判も世の中には存在するんだけど、
この子が言ってるのは単に「俺は嫌い、俺は苦手」ってレベル。

あらゆる言語をあっという間に修得してしまう、優秀な俺とは関係ない次元で吠えてる。

586 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 23:59:08 ]
気持ち悪いのキタ

587 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 00:02:41 ]
スクリプトぱっと憶えたら優秀ってなんかピエロだな

588 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 00:09:04 ]
Perl批判は俺が知る限り少なくとも2人居るんだが、この子ってどっちのことを指してるのだろう

589 名前:デフォルトの名無しさん [2009/07/15(水) 00:33:46 ]
面接でPerlが得意とか恥ずかしくて言えない

590 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 00:37:28 ]
>>584
言葉通りの意味なら、コンテキストによって返値を変えることができるってことだろ。

my $ret = hoge(); #=> '2つあったよ!'
my @ret = hoge(); #=> ('hoge', 'page')

ただ、あんまり便利に使う状況ってのに出くわしたことはないような気もするw

591 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 00:37:31 ]
my $self=shift;



592 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 00:43:30 ]
>>587
ぱっと覚えられない奴がどうしようもない馬鹿なだけだものな。

593 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 00:44:13 ]
@baka=(9,8,7)
@aho=(1,2,@baka,4,5)
print @aho

594 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 00:56:37 ]
>590
そういや配列はスカラーコンテキストだと要素数だな
しかし、混乱の元になった記憶しかないw
普通にlen(ary)なりsize(ary)なり用意すれば良かったのにとしか思わないんだよなあ

595 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 01:01:56 ]
perlはいまやLL界のCOBOLだな

596 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 01:03:03 ]
Perlはすぐ使える鉛筆みたいな道具
Pythonはきちんと書くときにつかう筆
rubyはうんこふく時の紙

597 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 01:38:47 ]
rubyが一番重要ってことだな

598 名前:571 mailto:sage [2009/07/15(水) 01:45:46 ]
>>582
> @var[0]は最初の要素、@var[0,3]は0番目を含めて3つの要素、とかできたはずなんだから。
> もちっと他の言語勉強しな。Pythonのスライスとか勉強してみ。
start..(start+number-1)で指定すればいいじゃん。
まあ、勉強してみますか。

Perl
範囲でしか指定できません。

Ruby
list = %w( a b c d e f )
p list.slice(2, 3)
で、
["c", "d", "e"]
が返りますね。

PHP
$list = array('a', 'b', 'c', 'd', 'e', 'f');
var_dump(array_slice($list, 2, 3));
で、
array(3) {
[0]=>
string(1) "c"
[1]=>
string(1) "d"
[2]=>
string(1) "e"
}
が返りますね。

では、Pythonではどう書くのでしょうか。
>>582さん、教えていただけますか?

599 名前:デフォルトの名無しさん [2009/07/15(水) 02:25:16 ]
ここは質問スレじゃないから自分で調べろ
0xcc.net/blog/archives/000043.html
www.diveintopython.org/native_data_types/lists.html
www.python.org/doc/2.3.5/whatsnew/section-slices.html

600 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 02:41:10 ]
>>598
list = [ 'a', 'b', 'c', 'd', 'e', 'f' ]
list[2:5]

601 名前:571 mailto:sage [2009/07/15(水) 03:15:57 ]
>>600
残念ながら、それは範囲指定だから意味が違いますね。



602 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 03:29:43 ]
L[2:5]をL[2:2+3]に読み替えればいいじゃないか

603 名前:571 mailto:sage [2009/07/15(水) 03:31:08 ]
>>600の書き方ならば
Perl
my @list = qw( a b c d e f );
print "@list[2..4]";

PHP
書式なし

Ruby
list = %w( a b c d e f )
p list.slice(2..4)

Python
d = ["a", "b", "c", "d", "e", "f"]
print(d[2:5])

で行けますが。

604 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 03:46:42 ]
スカラ/リストの表記がきもい(他言語ではもっとシンプルな仕様で成立してる)って話のはずなのに、一体何をどう曲解してるんだ

605 名前:571 mailto:sage [2009/07/15(水) 03:50:30 ]
>>604
単にキモイっていう単なる主観の感情の問題だというのか?
アホか。

606 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 03:52:24 ]
 っつーかlistに代入するなんて(r

607 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 04:01:14 ]
$や@を使うのは、ハンガリアン記法要らずで、分かりやすく便利。Rubyはソースコードが見づらすぎる。JavaとかC#みたいにVSとかEclipseとかのIDEを使うのが当たり前の言語なら、そう言う言語機能は不要かなと思うけど。

608 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 04:11:35 ]
コンテキストがあいまいなことによる
読みにくさとバグの温床になるプログラムの例を
各PPPRでおながいします↓

609 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 05:52:49 ]
>607
ハンガリアンとは根本的に違うというか、むしろ相反するような気がするが

610 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 06:35:40 ]
@tmpと%tmp、前者が配列で後者がハッシュであることは一目瞭然。@tmp_listや$tmp_map等とする必要はない。

611 名前:デフォルトの名無しさん [2009/07/15(水) 07:25:14 ]
配列とハッシュが同じ名前になる場合よりも
@tmp_A, @tmp_B みたいな名前の使い方が多いから、
それがメリットだとしても機会は少ないな。



612 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 07:43:40 ]
@tmp は文脈により要素数だったりするので配列とは限らない

613 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 08:01:49 ]
ん?
@tmpは配列だろ?scalar(@tmp) はスカラだが。
ちなみにscalar(%tmp)は楽しいことになる。Perl大好き。

614 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 08:14:22 ]
>>608
PPPRってなんぞ

615 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 08:16:53 ]
$a # スカラ

@a # 配列
$a[index] # 配列の要素 = スカラ
@a[indices] # 配列のスライス = リスト

%a # ハッシュ
$a{key} # ハッシュの要素 = スカラ
@a{keys} # ハッシュのスライス = リスト


この美しさわかんねえかなあ…

リストをスカラ評価すると長さになってしまうのは、
たしかに気持ち悪いがそれとこれは別の話だと思う。

616 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 08:22:39 ]
>>596
もうなんとか用の言語って時代じゃないだろ。もう役目を終えたよ、Perlは。

617 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 08:23:32 ]
>>615
それは別の話ってのに異存ないが、まあ今はコンテキストの話なので、
その気持ち悪さが問題になってるんじゃね?

618 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 08:31:40 ]
@$$#tmp

619 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 08:44:38 ]
使い捨て言語で君も使い捨てに!

620 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 08:50:10 ]
>>615
>@a{keys} # ハッシュのスライス = リスト
これが有効に使えるときなんかあるの?


621 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 08:53:09 ]
>>616
DSLがどうこうという時代なんだが?




622 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 08:53:15 ]
>>607
>$や@を使うのは、ハンガリアン記法要らずで、分かりやすく便利。
使うデータが文字列と配列とハッシュだけだった時代ならそれでもいいけど
オブジェクト指向が一般的になった現在において、この仕様はクソだよ。
それがわからないPerlerが不憫でしょうがない。

623 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 08:59:08 ]
>>622
しょうがないだろ。アヒルのように最初に覚えた言語をry

624 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 09:49:36 ]
>>598
話がぜんぜん違う方向に進んだね。
もとの話は$var[]が配列の要素を返し、@var[..]は配列の範囲を返すのが、いけてないしわかりにくという話だったんだけど。
別にこんなことで@varと$varを使い分ける必要なんかなく、どっちも@var[]でできるようにすれば
誰にもわかりやすいのに、Perlはそうなってないから変だよねという話が、
いつのまになんで範囲指定の方法の話になっちゃったんだろう。



625 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 10:49:19 ]
とりあえず、
配列の要素をスカラーとして取り出す方法と、
そのスカラー1個だけを要素とする配列を作る(スライスする)方法は
別々に用意した方が言語仕様的にはいいんじゃないのか?

626 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 10:51:58 ]
Python なら、
a = range(5) # [0,1,2,3,4]
b = a[3] # 3
c = a[3:4] # [3]

627 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 11:00:22 ]
d = a[slice(3, 4)] # [3]

628 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 11:29:15 ]
>>620
ハッシュに代入するとき役に立つ。

629 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 11:39:31 ]
>>620
ハッシュから複数の値を取り出すときに使う

630 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 11:41:12 ]
# Ruby

a = (0..4).to_a # [0,1,2,3,4]
a = (0...5).to_a # [0,1,2,3,4]
p a[3] # 3
p a[3..3] # [3]
p a[3...4] # [3]
p a[3,1] # [3]
p a[-2] # 3
p a[-2..-2] # [3]
p a[-2...-1] # [3]
p a[-2,1] # [3]

631 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 13:06:17 ]
>>628
kwsk



632 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 13:20:37 ]
急に書き込みが増えたねw

633 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 13:41:07 ]
>>630
なにそれこわい

634 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 14:47:45 ]
どの言語であれ、配列をスライスする処理なんか、一年に一度も書かないが。

635 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 15:17:31 ]
>>631
@names = ("Alica", "Bob", "Chris")
@ages{@names} = (28, 31, 72);

$ages{"Alice"} == 28

636 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 15:31:54 ]
何故にアリカ?

637 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 15:51:53 ]
@names = ("Alica", "Bob", "Chris");
@ages{@names} = (28, 31, 72);
print %ages;
@ages{'Chris','Bob'} = (34, 37);
print %ages;
Bob31Chris72Alica28Bob37Chris34Alica28

638 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 18:30:03 ]
>>637
なるほど。勉強になった。

機会はなかなかなさそうだけど、
使い道はちゃんとあるんだな。


639 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 20:46:22 ]
>>622
どんなにオブジェクト指向を強くしたところで、プリミティブ型や配列型のないプログラミングなどあり得ない。
スカラ変数とリファレンスを分けるシジルがあればより便利だということに過ぎない。何もないよりずっといい。
>>610の$tmp_mapは%tmp_mapの間違いだが、これはPerlであればコンパイルエラーを起こすので、未然にバグを防げる。

640 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 21:02:44 ]
記号の付け間違いなんてバグは、その仕様がなかったらそもそも起こらないだろ

641 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 21:04:26 ]
配列にアクセスしているつもりが、その変数はハッシュだったということ。誰にでもよくあるミス。



642 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 22:26:05 ]
>637を見て、
「さすがPerl、記述性が高い」と感じるのがperler。
「滅多に書かない記述の為に文法が歪められてる」と感じるのが一般人。

643 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 22:32:01 ]
>>642
Pythonistaは、Pythonではどうするか考える。
names = "Alica Bob Chris".split()
ages = dict(zip(names, (28, 31, 72)))
print ages
ages.update(Chris=34, Bob=37)
print ages






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<194KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef