1 名前:デフォルトの名無しさん [2010/03/04(木) 11:00:57 ] プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。 ★注意★ Ruby 1.9.1 は初心者にはまだ時期早尚です。初心者には Ruby 1.8.7 を強くお勧めします。 (理由:現時点では有名ライブラリやアプリが 1.9.1 に完全には対応していないためです) 1.8.7 でも 1.9 系に導入された新機能のいくつかが利用可能なため、1.8.7 を習得すれば将来スムーズに 1.9 系に移行できるでしょう。 関連スレやURLは>>2-5 あたりを見てください。Ruby on Rails の質問は Webプログラミング板の 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を読め」でいいので、叩かない&怖がらせない。 ・わけわかな質問にもエスパー発揮で。できれば質問の仕方を教えるぐらいで。 ・自信がない回答ならその旨表明すること。誤った回答は初心者じゃ見抜けない。
331 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:38:10 ] >>328 riには普通にあったよ るりまにはないようだ
332 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:39:34 ] >>329 ftp://ftp.ruby-lang.org/pub/ruby/binaries/ これはどういう位置づけなの?
333 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:46:00 ] >>330 適当に選んでは駄目 実用上、コンパイラが何かということよりも プラットフォーム文字列にwin32の文字列が含まれているかどうかが重要 C:\>ruby -e "p RUBY_PLATFORM" "i386-mswin32" mingw32はRubyに慣れた人向け スクリプトの修正とかできない人が使ったらどーでもいいとこで詰まるぞ
334 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:49:13 ] >>332 こんぱいるしたひとがるびーのさばにふぁいるをおいてる インストーラつきじゃないから少なくとも初心者スレで話題に出すようなもんでもないかと
335 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:54:58 ] >>332 そういやこれは結局どうなったんだっけ 本気で「ふぁいるおきば」以上の意図はないんだっけ 根性入れて更新するけど公式にサポートしたバイナリではないとかそんな立ち位置なんだっけか
336 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:58:21 ] Rubyにはサポートレベルというものがあるんだが、 実はWindows系とMacOSXとFreeBSDは同じレベルにあるんだよな。 とてもそんな扱いを受けているようには見えないが。
337 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 19:58:50 ] ガラクタの寄せ集め言語なんていらない
338 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:05:45 ] Pathologically Eclectic Rubbish Listerのこと?
339 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:13:26 ] 初期Rubyユーザが母なるPerlを叩く図式は最高にかっこわるかったな
340 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:13:38 ] RubyでGUIは鬼門、という方向に話が流れてるなあ… Pythonのように、インストールすれば即座にTkも使える状態になってれば 少しは違ったんだろうか… かといって、VisualuRubyを推すのもどうなんだという気もするし… アレはWindows限定だし… 言語の作者自身が「Windowsなんか知らね」属性の人だったのが そもそも不幸の始まりだったのだろうか… Windows嫌ってる人って、GUIも否定的な人が多い印象もあるし
341 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:13:40 ] 何も見ずにもう一回書いてみろ
342 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:14:07 ] うが。何故瞬間に2レスも間に入るw
343 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:24:04 ] Wdh=cgi["width"] <INPUT type="text" name="width" value="50"> print Wdh Wdh =Wdh / 2 としたところ、 undefined method `/' for "":String と怒られてしまいました。右も左も分からないので解決策をご教示願います。
344 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:25:04 ] >>343 とりあえず、てきとうな解説サイト(お勧めは特にない)か本読め
345 名前:343 mailto:sage [2010/03/12(金) 20:25:16 ] すみません、追記です。 print Wdhの結果は何も表示されませんでした。
346 名前:343 mailto:sage [2010/03/12(金) 20:33:33 ] >>344 ありがとうございました。
347 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:40:36 ] >>344 でよかったのだろうか…
348 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:43:31 ] >>347 適切ではあったとは思う 変数の規則知らない上にエラーの読み方わからんのではさすがに遠隔ではどうにも
349 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:45:44 ] 単純には、文字列(String)は整数(Integer)ではないから割り算したいなら 変換しろ、ってだけのことなんだけど。 cgiがCGIクラスのインスタンスだとして、こいつの返すパラメータはかなり 変態なので、今後もいろいろ罠に掛かるかもしれない。
350 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:53:25 ] >>349 >Wdh >print Wdhの結果は何も表示されませんでした
351 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 20:59:49 ] >>343 たのしいRuby 第3版 www.amazon.co.jp/dp/4797357401/
352 名前:343 mailto:sage [2010/03/12(金) 21:25:59 ] 数々のエスパーレスありがとうございます。 すみません、Wdhが読み込まれてない原因はHTMLのFORM文にミスがあったせいでした。 >>349 個人的にRubyの変数に型はないからString/Integerは気にしなくておkという先入観があったのですが、この先入観はトチ狂ってるのですね。 エラーは脱せていませんがおすすめの書籍と関連サイトで粘ってみようと思います。ありがとうございました。
353 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 21:28:19 ] 変数には型はない。 オブジェクト(値・モノ)には型(クラス)がある。 これは、変数はどんな型のオブジェクト(値・モノ)でも指せるってこと。
354 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 21:29:51 ] >>331 へぇそうなんだ riはファイル数削減のため削除した ウィルスチェックを毎日フルスキャンする義務があるんで 消したらだいぶスキャン時間が短くなった
355 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 21:33:08 ] 何度でも言われるがRubyの変数は箱ではなくただのラベル いつ剥がれるか(変数名で参照できる範囲)は決まってるが、貼る先のオブジェクトは区別しない
356 名前:343 mailto:sage [2010/03/12(金) 21:41:39 ] わかり易い説明ありがとうございます。 なるほど、ラベルに入ったオブジェクトの型は明示してやる必要があるのですね。 アドバイス通りに検索するとすぐに解答がありました。 Wdh=cgi["width"].to_i として解決しました。
357 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 21:52:41 ] >>356 違う Rubyには型は存在しない クラスは型ではない >>353 は誤り
358 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 21:56:58 ] タコツボここに極まれり、か
359 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:01:38 ] そもそも型とかいう考え方は即ごみ箱に捨てろ
360 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:08:36 ] 型(Type)だな 一時期オブジェクトの説明に間違って使われたタイヤキの鋳型(flask)が後を引いて…はいないか
361 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:11:13 ] >>360 あれは「型」という字にはタイプとテンプレートと鋳型の3つがあるということを失念した例示だったと思う… タイプやテンプレート相当のものを持った言語を中途半端に習った人大混乱
362 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:15:51 ] この流れはすごいなあ というかたのしいRubyってタイヤキの例え使ってなかったか
363 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:25:27 ] >>362 うん使ってる 言われてみれば言葉の選び方的にあまりよくないな 鯛焼きのカタという言葉は「変数の型」を想起させて混同させる可能性があるのか 第3版が出ようかというときに新しすぎる知見だろそれ 鋳型ならいい?
364 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:34:09 ] タイヤキの型って、まさしく鋳型じゃない? >>363 の言葉選びのポイントがよくわからん
365 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:44:17 ] >>363 型ってのはそもそも値の集合と操作の集合なので 別にRubyに使ってもなんもおかしくない んでクラスとインスタンスは英語で言うところのaとtheの関係なので タイヤキの鋳型とタイヤキでなんも問題ない
366 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 22:51:37 ] 数学的な話ではなく、変数の型とクラスの型の2つの混同で クラスを従来の変数の型のようなものとして誤解してしまう可能性があるという話では >>356 のように
367 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 23:02:35 ] それは「変数に型があるかデータに型があるか」の話 型ってそもそもなによって話とは無関係
368 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:09:45 ] >>336 Windowsならスレッドがちゃんと動くが他のプラットフォームだと動かない、 とかいう罠があったりしたこともあるので、なかなか侮れない。
369 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:13:40 ] Unicode の U+2295 みたいな表記を Ruby1.8 で該当バイナリ文字列に変換する方法はありませんか
370 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:24:07 ] >>369 「U+2295」が文字列という前提で (0.入力文字列の書式をチェックします。) 1.分割します。 U+ … ポイ 22 … 1バイト目 95 … 2バイト目 2.1バイト目と2バイト目をごにょごにょします。Array#pack() 、かなあ?
371 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:27:09 ] >>369 require 'nkf' s = 'U+3042 U+3044 U+3046' puts NKF.nkf('-w, --numchar-input', s.gsub(/U\+(\d+)/){"#{$1};"})
372 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:32:54 ] >>371 > /U\+(\d+)/ 16進数じゃない? /U\+([0-9a-fA-F]{4,6})/ でいける?
373 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:37:46 ] >>371 間違ってるぞ puts NKF.nkf('-w, --numchar-input', s.gsub(/U\+([\da-f]+)/i){"#{$1};"})
374 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 00:52:39 ] 1.8では、量が多くない場合はNKFに頼るのが間違いないと思う 1.9だと簡単なんだけど
375 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 01:20:47 ] $ cat a.rb require 'nkf' sikaru = NKF.nkf('-w, --numchar-input', %w(20B9F).map{|s| "#{s};"}.join) p sikaru puts sikaru $ ruby -Ku ./a.rb a.rb:2: [BUG] Segmentation fault ruby 1.8.7 (2010-01-10 patchlevel 249) [i686-linux] うひょう
376 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 04:18:36 ] 本来はiconv使うべきとは思うが、実用的なのはnkfだしなあ。
377 名前:デフォルトの名無しさん [2010/03/13(土) 05:37:51 ] >>369 "U+20B9F".gsub(/U\+([0-9A-Fa-f]{4,6})/){[$1.to_i(16)].pack("U*")} >>371 -w, の , が余計
378 名前:66 mailto:sage [2010/03/13(土) 05:57:18 ] > File.expand_path('あ', '/'.force_encoding(Encoding::ASCII)) Encoding::CompatibilityError: incompatible character encodings: UTF-8 and US-ASCII となるのですが、これはバグ? ちなみに実際やりたいことは、Tempfile.open('あ') です。 環境:fedora11、ruby 1.9.2dev (2010-03-06 trunk 26825) [i686-linux]
379 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 06:46:02 ] ライブラリのインストールに滅茶苦茶時間掛かるんだが なにこれ
380 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 10:12:06 ] gem search -r hoge searchっていちいち入力するの面倒いだけど、searchの短いオプションって無いの?
381 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 10:50:10 ] スレのバージョンお勧めに従わない人間は自業自得なのでスルー >>379 そりゃ君のパソコンがプア過ぎるのだよ 気になるなら -V をつけて gem install -V hogehoge すると固まったような時間帯に何してるのか見える "Building native extensions. This could take a while..." はCで書かれたファイルをコンパイル中(ものによっては遅い) ごっついライブラリだと定番ライブラリを10個くらい追加インストールするからどんなマシンでも一見とても遅いぞ 来週くらいに gem -V update しても遅いならまたおいで >>380 sea なにこれ超中途半端 正確には先頭から文字列にマッチするコマンド探してるので、s と se では複数マッチしてエラー $ gem s mechanize ERROR: While executing gem ... (RuntimeError) Ambiguous command s matches [search, server, sources, specification, stale] $ gem se mechanize ERROR: While executing gem ... (RuntimeError) Ambiguous command se matches [search, server] $ gem sea mechanize *** LOCAL GEMS *** mechanize (1.0.0, 0.9.3)
382 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:01:06 ] 質問ですが、 PythonのPython Image LibraryみたいなRubyの画像処理ライブラリってありますか?
383 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:13:21 ] >>382 ありません ImageMagickインストールしてgem install rmagickするしかないねえ
384 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:13:50 ] 用途にもよるけど、既存のCで書かれた画像処理ライブラリを Rubyから呼び出して使うことが多いと思う。 RMagick(ImageMagickのライブラリを使用) Ruby/GD2(GD2を使用) Rcairo(cairoを使用) など。 ImageMagickは機能過多だ、サムネが作りたいだけなんだという 人向けにImageScienceというのもあるな。サムネ作成専用。
385 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:15:29 ] >>381 スレの勧めないバージョンインストールしておきながら お勧めなら引っかからない基本的エラーで文句言うような人はスルー というのが正しいかと思う お勧めでなくても入り口以外で引っかかってるなら質問どうぞ
386 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:19:17 ] >>378 バグっぽい気がしたのでチケット切ってみた。 #2955
387 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:21:38 ] >>383-384 なるほど、ありがとうございます。 画像出力より入力の機能の方を重視したいので PILと同程度のライブラリとなるとImageMagickをつかないといけないんですか・・・ FFIするならGIL辺りが良さそうですね。 参考になりました。
388 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:23:54 ] 春休みスレ
389 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:32:34 ] >>388 間違ってるならあとから正せばいい 質問者には数時間くらいは待ってもらえるといいかもしれん
390 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:55:34 ] >>380 俺は面倒だから工夫してる。何度も同じコマンドうつのはDRYじゃあるめえ Windowsなら以下の内容をgems.batとしてパスが通ったところに置いておき、コマンドラインで gems hoge で検索 gem.cmd search --details --both --all %* Unix系でbashなら、~/.bashrcに以下を書いておいて gems hogeで検索 alias gems="gem search --details --both --all" あくまで例なのでコッチのほうがいいとか指摘してください
391 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 11:58:15 ] あんまりコマンドのエイリアスは設定しない方がいいって 誰か言ってなかった?
392 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 12:03:40 ] * 別の環境に移ったときになんぞこれってなるからエイリアスすんな派 * 自分好みに環境をカスタマイズしてこそUNIXのシェルだろJK派 どっちを選ぶも自由
393 名前:66 mailto:sage [2010/03/13(土) 12:03:56 ] >>386 ありがとうございます! 文句を言いたいわけじゃなく、バグなのか仕様なのか自分の勘違いなのか自信が持てないから、 このスレを利用させてもらっちゃったんですが、相応しくなかったみたいですね。 すみません。 もう書くの止めときます。
394 名前:380 mailto:sage [2010/03/13(土) 12:46:52 ] >>381 seaね、ありがとう >>390 linuxを使っているならaliasを使うけど、 今はwindowsを使っているからそんな方法があるなんてわからんかったよ
395 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 12:55:19 ] >>393 1.9.1だったなら俺も>>385 に同意だけど、1.9.2devは本スレが妥当じゃないかな
396 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 12:55:54 ] ライブラリが全然整理されてない印象<Ruby
397 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 13:11:18 ] うおお、ライブラリが全然整理されてない印象さんがRubyと喋ったぞ
398 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 13:45:08 ] <Rubyでなくて>Rubyだと思う 固定された意味はないけど 質問 エンコーディングプラグマ、通称マジックコメント、は、 該当するマルチバイト文字のようなもんが書かれてないようなライブラリを 自作して公開する場合はつけないほうがいい?
399 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 13:45:51 ] あ、>>398 は1.9.1の場合ね
400 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 13:48:35 ] require 'Qt4' app = Qt::Application.new(ARGV) hello = Qt::PushButton.new('Hello World!') hello.resize(100, 30) hello.show() app.exec() テストコード(コピペ)を動かそうとしているんだけど、動かない >C:\Ruby\lib\ruby\gems\1.8\gems\qtruby4-2.1.0-x86-mswin32\lib\ はちゃんとあるんだけどね 環境変数が問題なのかな?
401 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 13:52:19 ] >>400 動かないのならエラーメッセージを貼っておくれ スクリプトをダブルクリックして実行したのなら コマンドプロンプトから実行して
402 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 13:59:36 ] おー、WindowsでQtライブラリ使ってる人初めて見た
403 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:08:03 ] rubygemsでインストールしたパッケージのヘルプってどうやって見れますか?
404 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:09:59 ] >>398 書かない場合は US-ASCII を指定したのと同義。 ASCII文字しかないなら書いても書かなくても結果は同じ。 8ビット目が立ったシングルバイト文字は入れてないよね?
405 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:12:27 ] >>403 riかrdocか。 gem server を起動して localhost:8808/ でも読める。
406 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:13:09 ] 正規表現の動作が変わるんじゃなかったか
407 名前:400 mailto:sage [2010/03/13(土) 14:14:30 ] >>401 test.rb:1:in `require': no such file to load -- Qt4 (LoadError) from test.rb:1 見てのとおりライブラリの読み込みに失敗しています let-your-heart-soar.txt-nifty.com/blog/2008/07/qtqtrubywindow_82d9.html この通りにやって、C++のチュートリアルは動くようになっています でも、こんな事をやってqtrubyに関係あるのか疑問 >>402 ruby gtk2を使おうかなと思ったけど、gtk+のライブラリ全然わかんないから linuxでもqtrubyが動けば、linuxで開発してwindowsでexeを作ろうかな〜と それに、2週間くらい前にこんな本を買ったし >入門 Qt 4 プログラミング >ttp://www.oreilly.co.jp/books/9784873113449/
408 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:15:52 ] >>403 gemディレクトリ/ruby/1.8とか/doc/ の中にファイルが入ってるので好きなときに読め ActiveSriptRubyの場合はC:\Program Files\ruby-1.8\lib\ruby\gems\1.8\doc\
409 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:17:57 ] >>407 require 'rubygems' require 'Qt4'
410 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:25:42 ] >>406 US-ASCIIなソースにUS-ASCII以外のマジコメを書く場合?
411 名前:400 mailto:sage [2010/03/13(土) 14:26:51 ] >>409 文法を覚える前にテストをするもんじゃないですねwww 助かりました、ありがとうございます
412 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 14:44:08 ] >>403 HTMLファイルでいいならシェルから gem environment した出力の - GEM PATHS: の1行目(になかったら2行目)の場所の doc ディレクトリの中に
413 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 16:20:07 ] #=>って習慣なの?
414 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 16:25:32 ] >>413 doc.okkez.net/187/view/help
415 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 16:26:05 ] 習慣かどうかはしらん ふつうコメントの直後にスペースをひとつ挟むから # => value だよな はちどりのRuby本もそうなってる
416 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 16:39:23 ] 個人的にはあまり好きではない まあ、書籍向けの表現だと思う
417 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 17:23:40 ] gem install -r XXXX ERROR: could not find gem XXXX locally or in a repository 何これ?
418 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 17:33:32 ] 文字通り。
419 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 17:33:47 ] >>417 その質問に至った経緯をまず聞こうか
420 名前:413 mailto:sage [2010/03/13(土) 17:37:04 ] >>419 linuxでそう入力しただけだけど 得にそれ以外に何もしていない
421 名前:420 mailto:sage [2010/03/13(土) 17:37:46 ] 名前を間違えた >>417 ね
422 名前:420 mailto:sage [2010/03/13(土) 17:39:28 ] ごめん、ただのスペルミスですたorz
423 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 17:39:54 ] まずはgem search- rを使うんだ、でその結果から選ぶがよろし 自分で入力せずに素直にbash,zshの補完機能に頼った方がいいと思う
424 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 21:46:53 ] 他の言語のisXXXメソッドは、XXX?とrubyではなってるみたいですね 三項演算子とかと一緒に使うと読みにくいと思います お前らはどうやっていますか? return windows.visible? ? 値A : 値B
425 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 22:07:58 ] それほどでも・・・ return (windows.visible?) ? 値a : 値b
426 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 22:10:57 ] ぶっちゃけ、うっかり window.visible? A : B と書いて怒られることはよくある。
427 名前:424 mailto:sage [2010/03/13(土) 22:13:57 ] そんなもんですか そんじゃ気にしないようにしますわ
428 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 22:20:29 ] 条件演算子はぶっちゃけそれほど使わない 不自然感を感じてるうちにifとかに書き換わるのでむしろラッキー
429 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 23:03:17 ] include Enumerable した場合、自分のクラスで each を定義しますが def each @array.each do |e| yield(e) end end def each(&block) @array.each(&block) end どちらが好ましい書き方なんでしょうか?
430 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 23:27:40 ] 後者 irb1.9> class C; include Enumerable; def initialize; @a=[1,2,3]; end; def each(&b); @a.each(&b); end; end irb1.9> p C.new.each #<Enumerator:0x931483c> irb1.9> class C; include Enumerable; def initialize; @a=[1,2,3]; end; def each; @a.each{|e| yield(e)}; end; end irb1.9> C.new.each LocalJumpError: no block given (yield)
431 名前:429 mailto:sage [2010/03/13(土) 23:43:14 ] >>430 なるほど、ありがとうございます。