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


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

Ruby 初心者スレッド Part 21



1 名前:デフォルトの名無しさん mailto:sage [2008/08/06(水) 01:07:21 ]
プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。

   【Ruby1.9 は不安定な開発版であり初心者には全く向きません】
   【最新安定版の Ruby1.8.7 の使用をお勧めします】
    ※1.8.7 は1.8 と 1.9 の橋渡しをするためのリリースです。
      1.9 の新機能の一部が利用可能なので初学者にお勧めです。
    ※ただし十分安定しているとは言えないので
      プロダクション環境での利用にはお勧めしません。

関連スレやURLは>>2-8あたりを見てください。Ruby on Railsの質問はRailsスレへ。

■質問する人へ
質問する前に次の3つをすること。ここで回答を待つよりそのほうが早い。
 ・モジュール名やエラーメッセージでググる
 ・マニュアルで引っかかったクラスの記述を探す www.ruby-lang.org/ja/man/
 ・FAQを一応読む www.ruby-lang.org/ja/man/?cmd=view;name=Ruby+FAQ
質問には以下を書くこと。へたくそな質問は再提出を要求される。
 ・詳しい内容(「動きません」「うまくできません」では回答しようがない)
 ・エラーメッセージ(自力で訳さずなるべくそのままで)
 ・実行環境(OS名、Rubyのバージョン(ruby -v でわかる))
 ・最終的にやりたいこと(もっとよい方法がある場合が多いので)
回答してくれた人には「ありがとう」のひとことをいってあげて。
■回答する人へ
相手は初心者、根気よく育てるつもりで。質問がへたくそなのも大目にみてあげる。
それができないならこないこと(だって初心者スレだもん)。
 ・既出な質問やFAQは「XXXを読め」でいいので、叩かない&怖がらせない。
 ・わけわかな質問にもエスパー発揮で。できれば質問の仕方を教えるぐらいで。
 ・自信がない回答ならその旨表明すること。誤った回答は初心者じゃ見抜けない。

620 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 09:22:41 ]
catch io exception

621 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 11:31:25 ]
>>617
俺もそう思う。
まず連中は論理的に説明しても理解しない。「できない」じゃなくて「しない」なんだよ。
生意気にも「いいじゃないですか〜」とか言ってて許されるとか思ってる。
「俺が上司なんだよ!!!なめんなよ首にすんぞ」
とか思っても労働法違反になるので言わないです、ごめんなさい。
ついて行きたいと思わせる男の魅力が足りないのでしょうね、ごめんなさい。
そういえば、大学時代も「いい人」止まりだったなぁ・・・
付き合ったは良いけど卒業後すぐに分かれたなぁ・・・
一回しかえっちしてないよ・・・ちなみに童貞×処女

622 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 11:32:56 ]
>>619
と思いたいんですね

623 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 11:51:51 ]
引数 param で受け取ったものが配列でも「 1個」でも each で同様に回したい、という場合

param.to_a.each do |e|
...

と書くのが単純だったと思うんですが、
warning: default `to_a' will be obsolete
とか生意気で妥当な警告が出ます。
わりと頻繁に使うメソッド内でのことなんですが、どう対処するのが自然ですか?
param = [param] unless param.is_a?(Array)
と書くべきですか?
「このメソッドは配列しか受け取らないので 1個だけのときは事前に hoge([para]) にしろ」
とマニュアルレベルで警告するべきですか?

624 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:11:16 ]
>>623
配列かどうか調べて、配列じゃない場合は配列に入れるという動作が "正しい"
もしくは、マニュアルなどで「配列しか受け付けません」と明記する
[*param].each do |e| とすると文字数減った上に見かけ動作も一緒だが、無駄に穴掘って埋めてる感じが超キモい

これはそもそも

irb> def disp(param); param.to_a.each{|e| puts e }; end
irb> disp('hoge')
hoge
irb> disp(1)
(irb):1: warning: default `to_a' will be obsolete
1
irb> class Integer; def to_a; [self]; end; end
irb> disp(1)
1

ということで、「オブジェクトを to_a する意図が不明瞭なので頼るな」という意図の警告だ
obj.to_a と [obj] が同じとは限らないし、違うことのほうが妥当なこともある
配列の要素にしたいのなら、to_a ではなく明示的に配列作ってそこに入れろという話

irb> Time.now
Sun Sep 07 12:01:10 +0900 2008
irb> Time.now.to_a
[14, 1, 12, 7, 9, 2008, 0, 251, false, "JST"]
irb> [Time.now]
[Sun Sep 07 12:01:18 +0900 2008]


625 名前:デフォルトの名無しさん [2008/09/07(日) 12:13:26 ]
PGやSEとか頭脳労働なら、女がいるような職場には行きたくないな。
電話オペとか事務とか誰がやっても同じなら男女雇用機会もわかるけど、
女のセンスとか女のやさしさなど、PGやSEにまったく不要で逆にあると面倒なんじゃないか?

受付や事務で雇うならともかく、女をPGやWEBデザインで雇うようなところは資本もないし
金も技能もないベンチャーはすぐ潰れるのがおちw

今のベンチャーの生き残り方法は、創価学会と手を組むか、堀江豚みたく株屋とつるむぐらいしかないんじゃないの?

626 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:13:28 ]
[ param ].flatten(1)

flattenの引数ってどのバージョンからだったかのう。



627 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:15:21 ]
おまいらの妄想には飽きたぜ。
いい加減どっか外にいけ

628 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:22:16 ]

いまでは「Webデザイン」とかかっこ良さそうな臭いがしますが、海外のスクリプト言語
紹介ではJavaScript(とその亜種)の人口は多くPerlなどが続くと紹介されますが、
2008年現在、そのなかにrubyの文字は一度も出てきません。

しょせんrubyは、(にっぽんの)文系 IT ドカタ専用なんです!
犯罪囚人の女も使ってます!
コミュニティーはモルモン教です!

負け組みの人たちが都合よく集まったというところでしょうか…
ライブラリは冗長が多いけど言語の出来はいいんですけどね……



629 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:27:01 ]
言語側がto_a, to_i とか用意しといて下位互換を無くすようなこと一度でもすると、もうそういう言語・ライブラリは信用されないんじゃないか?
OOや継承をなんだと思ってんだ?

>ということで、「オブジェクトを to_a する意図が不明瞭なので頼るな」という意図の警告だ 
obj.to_a と [obj] が同じとは限らないし、違うことのほうが妥当なこともある

これを公式レファレンスに記載すればよろしい

630 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:35:34 ]
>>626
1.9のどっか

631 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:35:44 ]
確かにruby使ってる人たちがexcel,word出身のナンチャッテばかりだと、そんなやつらと話があうはずないな。

632 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:51:44 ]
excel,wordすらまともにry

633 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:52:10 ]
arr=[11,22,33]
puts *arr
puts &arr

マニュアルみてもないんですが、* & これは演算子ですか?

634 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:55:44 ]
blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/45334
からのスレッド参照


635 名前:デフォルトの名無しさん [2008/09/07(日) 12:56:58 ]
怪しいソフトハウスは五万とあるが胡散臭いからすぐ分かる。たいてい、そういうところはDQNしかいないし長くても5年で潰れる。どう考えてみても、文系乙だな

636 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:59:12 ]
>>634
演算してるわけじゃないしな
展開記号とでも呼べばいいのかしら

637 名前:デフォルトの名無しさん [2008/09/07(日) 13:09:04 ]
* & ですけど、関数引数なら演算子とは呼ばないけど、式文中なので演算子ですよ。
リンク先のMATZ本人はその意味で言ってるんですけど、たぶんこのスレレベルだと理解できないんでしょうね。
やっぱ文系用スクリプトを使うお気軽ルビリストには、その程度の理解度でいいんでしょうか?

638 名前:デフォルトの名無しさん [2008/09/07(日) 13:12:42 ]
理解できない人はC言語をみっちりやってくださいなw



639 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 13:24:26 ]
背伸び with マニュアル のスレはここですか?

640 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 13:45:03 ]
いいえ、基礎を積むスレです。

641 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 14:53:17 ]
配列の中での*はlispでの準クオート中の式を,@付けて評価→展開するものが元ネタっぽい。
だけど関数定義のときに引数定義の中で使われると、
lispの引数リストで使われる&restとか ...みたいな可変長引数みたいになる、ややこしいな。
&付きでProcを呼び出すものはなんだろう、C++のメンバ関数ポインタ?

def foo(*x)のときの*x言うのはrest引数構文
puts *arrの*arrは展開構文
puts &arrの&arrはProc変数渡し構文

Matzも*や&単体では意味が無いって言ってるし、こんなのでいいんじゃない?
さらにこういう前後の状況によって決まる類の「なんとか構文」なんてものは、
仕様書のある言語ではよくあるものだし。

642 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 15:00:53 ]
Rubyとか超ウケル

643 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 15:23:21 ]
puts &arr ってするとエラーが出るんですけど。。。
(ruby 1.8.6 (2007-06-07 patchlevel 36) [i386-mswin32])

wrong argument type Array (expected Proc) (TypeError)

644 名前:デフォルトの名無しさん [2008/09/07(日) 15:40:31 ]
エラーが出ていいんだよ。エラーを読める程度の英語をちゃんと身につけないとねw


645 名前:デフォルトの名無しさん [2008/09/07(日) 15:44:12 ]
「文系 Web 2.0」 じゃ、やっぱ話題について来れないんだろうな…
java.net(英語)にも妄想オタクな奴が多いけど、サーバ・サイドだから学歴は高い奴多いしくおかしな文章を書いたりしないな。
だけどrubyは無能な文系ばかりしかいないようだ…メーリングをググってもゴミのごたくばかりだろ…
Matzはいつも大変だな…

646 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 15:45:04 ]
>>644
あっ、エラーでいいんですか。
みなさん、とうとうと解説されているので、てっきり意味のある文だと思いました。

647 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 16:03:30 ]
>>646
>>633を構ってないだけだ

648 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 16:07:49 ]
>>641
文法上サポートしている構文というなら別にそれで文句はないですが、マニュアルに書いといてください。

p [*[11,22,33]] が出来るところを見ると、単項式として値を返すので、言語上の分類としては演算子じゃないかなと思います。




649 名前:デフォルトの名無しさん [2008/09/07(日) 16:14:26 ]
>>646-647
君たちはprocを理解してないのに偉そうにしてていいの?もっと一所懸命に勉強しないと!

650 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 16:29:34 ]
>>648 の笑いどころ
lisp という単語出てきたとたん、腰が引ける。
2ch に来て「マニュアルに書いといてください。 」
理系の高学歴様は、ギャグのセンスもさすがだなw

651 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 16:45:51 ]
>>646
そんなことよりおマンコはちゃんと洗っといた方がいいですよ。いつ何があるかわからないし・・・

652 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 16:48:00 ]
変数名がかぶっても、ブロックの中だけ有効にするにはどうすればいいのでしょうか?

a = 1

1.times do
a = 2
end

puts a # 1になって欲しい

653 名前:デフォルトの名無しさん [2008/09/07(日) 16:52:22 ]
それよりも >>641がC++どころかCすらも理解してないのにはビックリした!

654 名前:デフォルトの名無しさん [2008/09/07(日) 16:54:20 ]
質問なので、age失礼します。
携帯でGoogle chartを使おうと、以下のようにchartのアドレスをhtmlに埋めました。

puts <<-EOD
<html><body>
<img src="chart.apis.google.com/chart?chs=150x150&cht=lc&chd=t:20,40,50,60,40,10,3">
</body></html>
EOD

結果、auやvodaphoneでは見えたのですが、docomoではグラフが見えません。そこで調べてみると、docomoではpngを読まないため、gifにコンバートしろとのこと。
ttp://ke-tai.org/blog/2007/12/10/googlechart/
しかし、Rubyで同様のコンバートを行うにはどうしたら良いか、そしてどうやってhtmlに埋め込んでいいかわかりません。やり方が乗っている場所でも結構ですので、どなたか教えていただけませんか。よろしくお願いいたします。

655 名前:デフォルトの名無しさん [2008/09/07(日) 16:58:35 ]
>>652

>>649

656 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:12:31 ]
>>652
変数名がかぶってる限りは無理
ちゃんと違う変数名で定義するしかない

657 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:20:44 ]
>>656
そうなんですか。
Perlのように、局所化するmyとかはないんですね。。。

658 名前:656 mailto:sage [2008/09/07(日) 17:21:10 ]
追伸
初心者スレの範疇を外れるけど、現在のruby1.9.0系(開発版)では
ブロックローカルな変数を定義する(=名前がかぶっても問題ない)文法がある
たぶんruby1.9.1にも入るはず



659 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:25:32 ]
>>656-658
やっぱり、このレベルなのか…

660 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:36:39 ]
>>658
今後のRubyには実装される予定なんですね
了解しました。

661 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:44:55 ]
ローカル変数として同じの使ってるぶんには被るの許容するしかないな
まあ不便っちゃ不便

662 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:46:54 ]
クロージャとかイテレーターって知ってる?

663 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:49:18 ]
JRubyでYAML使おうとしています。
日本語をdumpすると"\343\203\206\343\202\271\343\203\210"な感じで出力されてしまいます。
RubyのSyckでも日本語をバイナリとして扱ってしまうという、似た感じの問題があり、
パッチやら何やら書かれているようですが、
JRuby(JvYAML?)において日本語文字列のまま出力させる方法はありませんでしょうか?


664 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 18:02:09 ]
>>663
Ya2YAML
JRubyで試したことはないが、pure rubyだからたぶん動くんじゃないかな

665 名前:663 mailto:sage [2008/09/07(日) 18:18:46 ]
>>664
どうもありがとうございます。
でも、Ya2YAMLはSyck用のバイナリ認識するとこを修正なんだそうです。
JRubyの場合はJvYAML(JvYAMLb)だそうですので、Pure Rubyか否かは関係なさそうです……。

gihyo.jp/dev/serial/01/yaml_library/0006
日本語全然使えない、とか書いてあるところもあったりして。
普通に表示したりする分には問題無いのですが、可読性という意味で言うと価値が激減。
dumpすると頭に"---"がつく辺りもRubyの最新版と挙動が違ったりするのですよね。細かいですが。
Javaのライブラリを使っていなければRubyを使うのですけれども……。

666 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 18:19:14 ]
>>654
ImageMagickプログラムを使うか、それをRubyから使うRubyMagickを使う
自分のサーバに「Google Chartにデータ渡して結果を受け取りGIFに変換して画像を吐くCGI」として置くしかないな

667 名前:654 mailto:sage [2008/09/07(日) 18:36:53 ]
ありがとうございます。
なるほど、直接コンバートできるような手立ては無いということですね。
では、画像吐き専門のcgiを作ることにします。
(PHPでやるかもです)

668 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 18:39:30 ]
>>665
楽してないでそれぐらい自分で実装したらどうよ?



669 名前:663 mailto:sage [2008/09/07(日) 18:52:47 ]
>>668
すみません。スキルがゴミなもので、解決策が自分だけの力では思い浮かばず、
一週間程悩んだ挙げ句に、こうして初心者スレで質問させていただいている次第です。

実装、というのはYAMLのパーサを実装ということでしょうか?
言語内DSL(もどき)を作って、YAMLを使わない方法に逃げることは一応考えているのですが……。

670 名前:デフォルトの名無しさん [2008/09/07(日) 18:56:36 ]
いつも「おっきいチンチン」のこと想像しながらWebしてます!

671 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 19:11:23 ]
YAMLをあきらめてJSONを使う。

672 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 19:20:17 ]
YAMLで作ったデータをどこに持ってくのかにもよるな

673 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 19:25:19 ]
>>665
Ya2YAMLのソースコード読んでみたが、Syckに依存してるらしきところはないよ
だからSyckかJvYAMLかは関係ないはず

674 名前:663 mailto:sage [2008/09/07(日) 20:16:56 ]
>>664 >>673
う、すみません。Ya2YAMLをちょっと勘違いしていました。
ちゃんとソース読んできます。どうもありがとうございます。

675 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 20:30:49 ]
ゴミなんでしょ?もう来るな。

676 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 00:13:21 ]
コテつけろよ

677 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 15:11:49 ]
デンターシステマのかためより、やらかめの方がいいですよ。
どうせ堅めを使っても歯ぐきから血が出るだけなんで。

678 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 17:27:16 ]
歯ぐき弱すぎじゃね・・・?
個人差は有るだろうけど、
いっぺん歯科で相談してみたほうがいい。



679 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 17:42:29 ]
普通は1から10まで足して55になるんですが、逆に10から9,8と足していく文はどうなるんでしょうか。



680 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 18:03:12 ]
やっぱり55になります

681 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 18:23:32 ]
逆から足して同じ結果にならないなら大発見かもしれん

682 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 18:25:57 ]
BEとLEで結果が違います

683 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 18:30:58 ]
>>681
多項式級数式ではそういうことがよく起こりますが…もしかして無能?

684 名前:デフォルトの名無しさん [2008/09/08(月) 18:46:45 ]
どっちが頭いいかをふっかけてくる奴がいっちゃん無能


685 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 18:57:42 ]
無能はすぐage進行にしたがるww

686 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 18:58:12 ]
>>679
よくわからんけど、こんなのかな。

i = 10
sum = 0
while i > 0
 sum += i
 i -= 1
end


i = 0
sum = 0
while (i += 1) <= 10
 j = 10 - i
 sum += j
end


sum = 0
(1..10).to_a.reverse.each {|i| sum += i }


687 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 19:01:41 ]
downto

688 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 19:05:54 ]
ruby1.8.7きめぇえええええ
[*(1..10)].reverse.inject(0,&:+) # => 55



689 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 19:15:31 ]
&:+って何?

690 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 19:19:51 ]
みなさん、ありがとうございます。
ちゃんと55になりました。
逆走もあったんですか…

691 名前:デフォルトの名無しさん [2008/09/08(月) 19:21:59 ]
>>688
これは可読性以前の数学パズルの世界じゃないの?
rubyのキモさは、Cのポインタをほうふつさせるキモキモだなw

692 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 19:25:02 ]
委譲の英訳ってtransferでいいの?
辞書だとそうなってるけどプログラミングでもそうなん?

693 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 19:27:54 ]
>>692
オブジェクト指向における委譲はdelegation

694 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 19:31:54 ]
サンクス
delegateってメソッドポインタの事かと思ってたけど
委譲の意味でも使うのか。

695 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 21:19:05 ]
>>694
C#のやつのことなら、delegateをそういう機能に使うキーワードにしたって
だけで、突き詰めた意味は結局委譲。



696 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 21:28:31 ]
めそっどぽいんたってなんじゃらほ

697 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 21:37:20 ]
(1..10).reverse_each.inject(:+)

698 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 22:00:35 ]
>>696
C#を調べろ、としか言いようがない。
要するに関数ポインタのC#版。



699 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 22:08:03 ]
>>696
特定のインスタンスの特定のメソッド(GUI部品とか)を呼び出すためのポインタ
特定のクラスのオブジェクトにメソッド実行を依頼すると考えれば根っこは同じ

という説明はどうだろう

700 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 22:18:00 ]
わっかりやすいのう

701 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 02:18:37 ]
質問です

関数オブジェクトと普通の関数を呼び出すときのコストってどちらも同じですか?

702 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 02:41:11 ]

・Rubyには厳密な関数はない
・Rubyには関数オブジェクトもないっていうかまあこのへんは別にいいや

てことで、普通のメソッド定義とProc(lambda)オブジェクトの比較と読み替える

  Procの呼び出しコストの重さは異常

以上

使うと面倒な概念をとても簡潔に表現できるけど、多用すると明らかに遅くなるので注意
便利なのでほいほい作る傾向にあるが、何度も使う部分に組み込む場合は、できれば丁寧に分析してメソッドにしたほうがいい

703 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 06:12:15 ]
Rubyってメソッドもオブジェクトなの・・・?

704 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 06:44:11 ]
>>703
オブジェクト化することもできる

705 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 07:23:00 ]
そんなことしたマンコは臭うけどな

706 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 08:30:13 ]
javascriptバカにすんな

707 名前:デフォルトの名無しさん [2008/09/09(火) 08:32:52 ]
臭いのは勘弁して・・・

708 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 09:08:56 ]
javascriptはコンソールから起動して使える実装がないじゃん。ここ、バカ丸出しww



709 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 09:09:38 ]
毎日が夏休み

710 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 09:17:50 ]
>>703
ブロックつきメソッドの {|x| ...} 部分を「持ち歩ける」と考えてもらうと間違いない

711 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 09:24:09 ]
>>708
>javascriptはコンソールから起動して使える実装がないじゃん。ここ、バカ丸出しww

spidermonkeyもrhinoもコンソールから起動できるじゃん。
バカ丸出しはおまえwww

712 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 09:38:26 ]
javascriptは組み込み向けの設計ってこと忘れてるおまえは、バカ丸出しww

713 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 11:25:13 ]
話題のv8のshellが普通にいい感じですよ

714 名前:デフォルトの名無しさん [2008/09/09(火) 11:33:16 ]
個人の著作を売り物にするようなところだしmixiと同じだな。
そのうち違う波が来て潰されるんだろうな…

715 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 11:40:34 ]
>>702
そうなんですか。
昨日からruby勉強し始めて、全部関数オブジェクトにしたら一貫性あるかな?
とか思っていたんですが、重いなら仕方ないですね。。

716 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 11:45:08 ]
全部ラムダ式にすればいいと言うわけですね

717 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 12:07:13 ]
質問です。

配列のmap関数で適用する手続きの代わりに関数オブジェクトを使うことはできませんか?

718 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 12:18:26 ]
関数オブジェクトって何ですか?

Procオブジェクトですか、ブロックですか?



719 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 12:23:08 ]
たとえば、
hoge = lambda{|x| x+1}
このhogeという値にバインドした関数オブジェクトをmapで使うことはできませんか?

720 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 12:26:52 ]
(1..10).map &hoge







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

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

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