1 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 03:34:28 ] オブジェクト指向スクリプト言語Rubyについて扱うスレッドです。 Ruby Home Page www.ruby-lang.org/ja/ = 前スレ Rubyについて Part 33 pc11.2ch.net/test/read.cgi/tech/1223709050/ 過去スレ・関連スレは >>2-
683 名前:デフォルトの名無しさん [2009/03/04(水) 18:17:44 ] >>673 型testのコードは自動で生成されるの? でなかったら結局人間による抜けがでそうだけど...
684 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 18:26:03 ] 便利さ・柔軟さのトレードオフとして危険性はある。 でも、プログラムは仕様通りの動作をすれば内部の変数にどんな型のオブジェクトがあるのかは関係ないし、 ライブライリーのpublicメソッドの引数なんかは型チェックをしてるよ。
685 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 18:34:44 ] Ruby的にはオブジェクトの種類はどうでもいい メソッドさえ動作すれば、引数のクラスは全く問わない 文字列の代わりに、Stringと同じメソッドが定義されてる別のクラスのオブジェクトを渡しても普通は動く ただ、ぶっちゃけこの考え方は柔軟だが動作の保証が非常に面倒なので、勢い raise ArgumentError unless param.is_a?(String) とか書く
686 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 18:37:55 ] bind_typeってどのバージョンから使える? 変数のエクステントって概念は知らなかった。 スコープの延長で、可視範囲から外れればだれからも見えなくなるから 忘れ去られると考えてた。これだと静的変数の説明がしにくいんだよな。
687 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 18:39:58 ] >>686 bind_type は説明用の擬似的なメソッドだろう あれば楽しそうだが
688 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 18:45:01 ] respond_to?のお役立ち度の微妙っぷりは異常
689 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 18:56:33 ] >>683 自動testはHaskell以外は知らない。 言語によらず、型に合った(or意図的にエラーを起こさせる)テストデータを与える必要があるんでは?
690 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 20:02:44 ] >>680 そうかなーとは思ったのだが、「ラベル」の賞味期限とエクステントとがうまく結びつかない。 「オブジェクトには賞味期限があり、ラベルには有効範囲がある」なら納得なのだが。
691 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 20:19:30 ] オブジェクトの賞味期限は貼るラベルによって変わってくるからいいんじゃない? もうちょい気を利かせると「ラベルには賞味期限と有効範囲が書いてある」とかだろうか
692 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 21:03:27 ] Smalltalkには、 Objectにbecome: というのがあった気がする。
693 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 21:28:13 ] # v1.9.1 require 'prime' Prime.instance.each_cons(2).select {|x, y| y - x == 2 }.first(10) 最初の10組の双子素数を求めようと、このようにすると、当然のように selectから帰って来れません。ループ組んで10個見つけたら打ち切るみ たいにするしかないでしょうか。
694 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 23:08:20 ] 仕方ないように見える 遅延評価があれば似たような書き方ができそうだが、 Rubyではサポートされていない
695 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 23:11:44 ] selectってなんだっけ
696 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 23:17:53 ] >>695 find_all detect が find で select が find_all で collect が map だ
697 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 23:32:04 ] うへ、Enumeratorが無限なのか 変なの作ったなあ >>693 ループ組んで10個見つけたら終了、という使い方を想定していると思われる
698 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 23:38:16 ] Ubuntu で Ruby1.9.1 をコンパイルしたんだけど irb で矢印キーが効きませぬ readline5 の devel は入ってたのになあ
699 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 23:42:55 ] クト類はわかりにくい select が find_all で collect が map で detect が find で inject が 特になしで reject! が delete_if
700 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 23:48:14 ] たぶん散々既出だと思うが、 select → grep collect → map にしなかったのはなぜなんだろ?(まあmapはあるのか)
701 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 23:53:12 ] detect と select は意図的に使わない というか detect は true か false を返すべきだと思う
702 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 23:55:59 ] >>700 お前んちのgrepはマッチしなかった行を空行で返したりでもするのか? てかあのへんは既存の言語の関数をRubyのメソッドに持ってきただけだからどうにもならん
703 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 00:06:06 ] >>702 うん? [0,1,2].select {|i| i == 1} #=> [1] 空行なんて返ってこなくていいよ find_allって何から来てるの? grep, map はPerlからなら素直に覚えやすいんだが。
704 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 00:15:02 ] おそらく>>700 は矢印をオレオリジナルで使っててなおかつ自覚がない
705 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 00:20:17 ] 全角矢印のム板汎用的な用法なんてあるのか? 意味は通じると思うが
706 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 00:33:26 ] Prime.instance.each_cons(2).enum_for(:select, &->(e){e[1]-e[0]==2}).first(n) first(3)まで見て出来た気になったがfirst(4)を見て全然意味を成していないことに気づく。 enum_for(*args)にはブロック渡せないぽいなぁ。
707 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 00:35:52 ] 1のとき[2,3]が返る時点で気づこう。
708 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 00:36:38 ] >>705 断言しても言いが、経験上たぶん通じてない
709 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 00:50:56 ] >>693 module Enumerable def select_by(block) return to_enum(__method__, block) unless block_given? each {|e| yield e if block.call(*e) } end end require 'prime' Prime.instance.each_cons(2).select_by(lambda {|x, y| y - x == 2}).first(10) でどう?
710 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 01:26:31 ] >>709 >>Prime.instance.each_cons(2).select_by(lambda {|x,y| y - x == 2}).first(10) => [[3, 5], [5, 7], [11, 13], [17, 19], [29, 31], [41, 43], [59, 61], [71, 73], [101, 103], [107, 109]] なるほどね。
711 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 02:34:18 ] Prime.instance.each_cons(2).select {|x, y| $. > 10 ? raise 'sine': y - x == 2 }
712 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 12:03:00 ] おおむねスレ違いなんだけどさ、github で「今の状態のライブラリをZIPでくれ」ということはできない?
713 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 13:18:30 ] せめてLinux板のgitスレで聞け
714 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 13:44:10 ] downloadsに用意されてなけりゃできないんじゃねーかと思う 素直に git インストールして git clone git://hoge.github.com/... するのが一番 カレントディレクトリに、たとえば rubygems のライブラリなら hoge/lib ができる
715 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 16:12:18 ] もっと英語の作文勉強しておけばよかった そんだけ
716 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 16:15:31 ] Rubyって普及こんな特集記事が載せられるほど普及しているんですね すっげー、かっけー itpro.nikkeibp.co.jp/article/NEWS/20090126/323529/?ST=oss
717 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 16:20:21 ] >>715 「書いてみたが、伝わるんだかどうだか不明」という場合は、既出だが自動翻訳サイトを通してみるといい 自動翻訳でなんとなく意味が通じる場合は、外人さんにもなんとなく意味が通じる可能性が高い 訳して何がなんだかわからない場合は、翻訳サイトがへぼい可能性ももちろんあるが、 そもそもの英文がかなり微妙な出来である可能性もかなり高い 日本人であることが相手に伝わってる場合、下手に凝る文章よりも 翻訳サイトで結果が出るようなプレーンな英文のほうが好ましく思われる傾向にある スピーチとかサイトへの寄稿文とか書いてるという話なら失礼
718 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 21:49:47 ] まつもとさんになんてことを
719 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 21:58:51 ] どこの翻訳サイトはレベルが高いのがありますか?
720 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 22:03:06 ] niftyが結構マシ
721 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 23:08:40 ] やっぱ買うのがおすすめ。IT系の辞書とかつけて。 おれは英語のサイトだとすぐに回れ右していたが、 翻訳ソフトを買ってから割と読むようになったし、苦じゃなくなった。 翻訳されてるんだから当たり前だけどな。
722 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 23:13:49 ] 読むのはいいんだけど、書くのがねえ…
723 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 00:46:14 ] It's easy to read, bat hard to write.
724 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 00:59:36 ] そうか?翻訳ソフト使えば書く方が簡単だと思うぞ。 書くときは自分で簡単な言い回しに変更できるけど、読む方は相手次第なんだから。 元の文章を工夫するんだよ。オフィシャルな文章じゃそうはいかんだろうけど。
725 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 01:46:08 ] 書けないと読めないって良く言われるね
726 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 02:04:16 ] きっちり書こうとすると前置詞とかが難しいのよね
727 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 02:13:51 ] 難しいというか、正しく伝わってるかどうか確信が持てない。 おかしい所にも気づかない。 という不安が常につきまとう。読む方にはそれがあんまりないので、 書く方がはっきり難しいと思う。
728 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 02:34:05 ] 冠詞も良く分からん I am a God. は間違いらしい
729 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 02:39:40 ] そりゃそうだ・・・
730 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 02:42:17 ] go to the heaven なのに go to hell だったり
731 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 02:48:29 ] おかしいと思って調べたが「go to heaven」でいいはずだぞ。 theの使い方を覚えろよ。それにこのあたりの区別は日本語の助詞なみに難しいと思うぞ。 こんなとこ完璧にするより内容を考えろよw
732 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 03:18:33 ] 日本語ペラペラでも文章の稚拙な外人っているじゃん そういう人の文章見てみんなどう感じる?
733 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 03:51:52 ] 言語的な問題なら仕方ないと思うかなあ。 でも論理的な明快さに欠けてたら、母国語でもそうなんだろうなと思う。 話せればいい文章を書けるなら、 日本人は日本語ならみんないい文章を書けることになってしまう。 って、Rubyの話じゃないじゃん。
734 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 05:26:21 ] in the heaven in hell らしい
735 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 09:12:50 ] 1.9のEncodingのエンコード名称って大文字限定?
736 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 09:24:21 ] >>735 まず自分でirbでも使って試してみるのがいいと思うよ! Encoding.findオススメ
737 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 09:43:53 ] >>735 1.8でも値だけ作っておくとかそういう時は大文字で書いておくのがいいと思う
738 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 11:48:30 ] twitter.com/knu/status/1210022309 ふざけんな! 1.8.6と心中せざるをえない数万のプログラマーを見殺しにするのか!!
739 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 11:51:56 ] 1.8.6は今存在してるんだからそれ使ってればいいじゃない。
740 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 11:58:35 ] PHP5が出た時と全く同じ騒ぎに見える。 PHPの場合は、本格移行の流れになったのは4のサポート停止が"されてから"だから大体3〜4年かかってる。 RubyはPHPほど実運用されてないので移行はもう少し早かろうが、逆にそのまま放置される恐れもあるよな。 Perl5.0や5.6も結構しぶとく残ってたし。
741 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 12:07:24 ] >>738 > 1.8.6と心中せざるをえない 具体的にはどんな人?
742 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 16:02:12 ] 移行なんかしなくていいじゃん。
743 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 16:06:30 ] >>741 に回答が無い時点でたいしたもんじゃないな
744 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 16:38:30 ] >>743 まあ1.8.7にアップグレードできないのも1.8.7向けに改修できないのもほとんどは契約の問題だと思う 個々のプロジェクトの契約の問題の責任をRubyに負わせるとかお前何様って感じだ
745 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 18:47:41 ] このテストスクリプト間違ってる…
746 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 19:23:35 ] 1.8.6とかで放置でも問題ないケースも多い スクリプトの寿命よりサーバーの寿命の方が先に来る
747 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 19:26:33 ] > スクリプトの寿命よりサーバーの寿命の方が先に来る だからなんだというのだろうか?
748 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 02:12:04 ] 1.8.7用に書いたスクリプトが1.8.6で動かない事はあるかも知れないけど 1.8.6で動くスクリプトが1.8.7で動かない事ってあるの?
749 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 02:34:09 ] そりゃあるだろうが、割合的にはかなり稀
750 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 13:51:10 ] >>745 悪いね、正しい結果を出すのが明らかな代表的なのしか書いてないんだ
751 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 14:15:03 ] RailsのMultibyte拡張でStringにcharsというメソッドを定義してたのが 1.8.7のcharsと衝突したってのは結構知られているはず。 これは、Railsがmb_charsという名前に変更した。
752 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 14:50:22 ] あれは組み込みクラス拡張するほうが一方的に悪いから、仕方ないな 利便性と引き換えの非互換リスク
753 名前:デフォルトの名無しさん [2009/03/07(土) 19:21:12 ] >>748 rubyは1.8.6用に書いたスクリプトが1.8.6で動かなくなったことだってあるwww
754 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 19:27:05 ] >>753 はパッチの意味を理解していない
755 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 19:28:48 ] RDoc フォーマッタで attr 系列が別待遇なものが多いのはなぜ? あれ他のと混ぜて一律にメソッドとして説明すればいいじゃんね
756 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 19:35:32 ] >>755 俺もそう思ってるんだけど、 ・ プロパティ厨 ・ attr で書いたものはそれ自体に意図があるよ説 が結構根強い attr_accessor :hoge と def hoge @hoge end def hoge=(v) @hoge=v end には違いがないと思うんだけどねえ
757 名前:デフォルトの名無しさん [2009/03/07(土) 21:01:19 ] 初めまして。 webkeepersにgemを入れました。その後、rubyが1.8.5だったので、1.8.7にupdate。 install時特になにも環境変数?を指定などしていません。 gem -v => 1.3.1 ruby -v => 1.8.7 とどちらも正常なようですが、require 'rubygems'にすると、"no suck file to load"と怒られます。 whereis gem => /usr/bin/gem だったので、export GEME_HOME = /usr/bin/gem と余計な事までしてしまいました。どうしたもんでしょう?お願いします。
758 名前:デフォルトの名無しさん [2009/03/07(土) 21:02:46 ] such がsuck になっていて申し訳ございません。。。
759 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 21:15:53 ] 初心者スレかと思った >>757 ・ レンタルサーバのユーザー領域に自前でRubyをインストールしたが、gemが動かね ということでいいか
760 名前:デフォルトの名無しさん [2009/03/07(土) 21:32:35 ] ありがとうございました。解決はしませんでしたが、素人が余計なことをするなと言うことは理解出来ました。 けどvpsなので、rootで入れて、whereis ruby => /usr/bin/ruby /usr/lib/ruby /usr/local/bin/ruby /usr/local/lib/ruby /usr/share/man/man1/ruby.1.gz まぁ素人が、vps使うなんて危ないというのも解るけど。。。 ありがとうございました。初期状態に戻します。
761 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 22:23:13 ] 素人だから余計なことをするのか それとも余計なことをしてしまうから素人なのか そもそも余計なことをしてしまったときに自分で修復出来ないから素人なのか
762 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 22:24:53 ] 自分で素人と思ってるのはまだいい
763 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 22:28:13 ] >>757 インストールしたものがどこに入っていったかくらいわからんものか? 普通にソースビルドで何も指定せずに入れたらrubyは/usr/localに入り、 gemもそのrubyの設定に従って/usr/localに入るはず。 あなたのgem -vで出てきたのは、最初から入っているruby(/usr/bin)に対して インストールされているもの。 rubygemも別途いれるべし。
764 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 22:31:21 ] gem -v => 1.3.1 ruby -v => 1.8.5 のときはちゃんと動いていたのか?
765 名前:デフォルトの名無しさん [2009/03/07(土) 22:59:11 ] 764さん、それが、1.8.5の時は、ramaze,m4dbiが、動いていたんですね。 ありがとうございました。場を少し荒らしたみたいで、申し訳なかったです。 退場します。
766 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 23:10:06 ] CentOSだろ? システム提供のパッケージを更新するんだから、rpmでインストールするか、 システム提供の物を抜いてから入れるべきだ。 rpmforgeのレポジトリを指定してyumでアップデートするのが楽だと思うよ。
767 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 23:16:14 ] うわーRubyきもい うわーまじきもい
768 名前:デフォルトの名無しさん [2009/03/07(土) 23:19:20 ] 766さんありがとうございます。がんばってみます。レスをくれた人、勉強になりました。
769 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 23:46:59 ] gemコマンドは使っているrubyと結びついてインストールされるから、 自力でrubyを入れたのならgemコマンドもそれに併せていれること。 # 1.9系列なら一緒にインストールされるけどね。
770 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 00:30:55 ] なんでそんなアホな仕様にしたの
771 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 00:39:26 ] 別にアホでもない gemが自分を実行可能なバイナリを勝手に探して自分に勝手に登録するだけだ Rubyは何も関与しない
772 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 03:06:59 ] 下位互換性ことごとく無いよね。松本教信者しか使えないな。
773 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 03:30:19 ] >>772 kwsk
774 名前:デフォルトの名無しさん [2009/03/08(日) 03:40:53 ] >>754 1.8.6のpatchで仕様変更をして、それで互換性がなくなったことがあるんだが
775 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 08:24:45 ] >>771 Rubyの位置が変わったくらいでgemまで再インストールしなくてもいいのに 「自分を実行可能なバイナリを勝手に探して自分に勝手に登録している」 その場所だけ1行かそこら書き換えるだけで済まないの?
776 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 12:20:46 ] >>775 確信があるのなら自分で試してみたら。 Rubyは成熟してないから自分で手を動かすしかないこともあるよ。
777 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 13:41:31 ] つまりrubyは出来が悪いと。
778 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 14:51:34 ] >>777 というか出来上がっていないという話では?
779 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 20:38:10 ] >>776 そういう意味じゃないよ なんでそういうつくりにしなかったのっていう意味だよ
780 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 20:39:35 ] ドキュメンテーションが半端なライブラリ等はプロジェクトに 持ち込むべきじゃないし、ドキュメンテーション活動が活発なところ からチョイスした方が楽が出来る
781 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 20:50:57 ] ドキュメンテーションが半端な言語についてはどうなんだろう
782 名前:デフォルトの名無しさん [2009/03/08(日) 22:24:17 ] 1.8 で動くアプリを走らせながら、1.9でも色々テスト開発したいので、1.8と1.9を共存させようと思っているんだけど、やめた方がいいですかねぇ?なんか色々面倒なことになりそうな予感が。 バーチャルマシンでOS2つ載せてそれぞれで1.8と1.9使うってのも考えてるんですが・・ 同じOSに1.8と1.9共存させるってのについてはどんな印象でしょうか?ウェブ上でそいうことしてる人ちらほらとは見かけはするんですが・・
783 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 22:34:23 ] >>782 きちんとやれば特に問題はない gem のライブラリを大量にインストールしてる場合は ほぼ同じものを 1.8 用と 1.9 用にインストールしなければならないので 心情的にもディスクスペース的にも無駄なのが若干寂しいが
784 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 23:07:56 ] >色々テスト開発したいので 本気でそう思ってるなら 1.9 しか入っていない環境を一つ作るべき Virtual でも Real でも何でもいいからね 出来たアプリを別のところに持っていって動かないケースが出てきたら そっちに 1.8 が入っているのかどうかとか悩みたくないだろ
785 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 23:12:01 ] >>784 1.8用と1.9用で外部APIの要求バージョンが違うとか極悪なことしてない限りそういうことはまずない
786 名前:デフォルトの名無しさん [2009/03/08(日) 23:20:36 ] gemは?
787 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 23:24:36 ] >>775 > その場所だけ1行かそこら書き換えるだけで済まないの? 先頭一行書き換えるだけ。 Rubyとは無関係な話なので、詳しくはshbangでググれ。
788 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 23:28:28 ] >>787 はたぶん勘違いしている
789 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 23:44:27 ] Rubyは最近調子に乗ってって 勘違いしていると思う
790 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 23:48:17 ] >>787 はかなり勘違いしている
791 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 23:48:48 ] どの言語にも取り巻きと他言語からの工作員がいるよな…
792 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 23:49:18 ] gemって馬鹿な子なんだってことは分かりました 本当にありがとうございました
793 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 23:49:49 ] >>783 1.8 用と 1.9 用ってインストールされるファイルを分けることはできる? gem1.9 から起動されたら hoge-0.2.3-ruby19 をインストールするとか
794 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 23:51:47 ] rubyは関係ないとかrubyのせいじゃないって言ってる香具師いるけど perl用のgemとかphp用のgemとかpython用のgemとかあるわけ?
795 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 23:53:44 ] ばかですねわかります
796 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 00:04:45 ] おれEclipseを二つ入れて使い分けてるが 開発オンリーでWindowsだけど
797 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 20:05:45 ] はぁ?
798 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 21:55:18 ] なにが「はぁ?」なのかわからんのだが はっきり書いてくれよ
799 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 22:53:34 ] >>797 息が臭いです
800 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 00:29:31 ] 統合開発環境とか使いこなせないんだろ。 そういうのは争いのもとだから相手にする必要なし。
801 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 19:57:40 ] 万人には使えないとか。単に使いにくいだけだろ。 glibc並の酷いバージョン問題発生か。 進歩無いねえ。下位互換性ぐらい確保して当然だろ。 0.8とか0.9でリリースし直して徹底的に枯れてから1.xの安定板をリリースしろよ。
802 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 20:14:41 ] あん、何が何のdownward product だって?
803 名前:782 [2009/03/11(水) 17:32:25 ] むーやっぱバーチャルマシン立てようかな・・ レスありがとうございましたm(_ _)m
804 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 18:58:43 ] 円周率を計算するプログラムを見かけたのでRuby用にしてみた 元はhaskellで、それを十進BASIC用にしたもの 多倍長整数で計算するらしい 何をどう計算してるのか内容についてはさっぱりわからんが 1万桁計算する時間を計ってみることに require 'benchmark' limit = 10000 Benchmark.measure do q,r,t,i = 1,180,60,2 u,y = 3*(3*i+1)*(3*i+2), Integer((q*(27*i-12)+5*r)/5/t) #print y (limit-1).times do q,r,t,i = 10*q*i*(2*i-1), 10*u*(q*(5*i-2)+r-y*t), t*u, i+1 u,y = 3*(3*i+1)*(3*i+2), Integer((q*(27*i-11)+5*r)/5/t) # print y end end.display
805 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 19:06:50 ] Windowsにて実行 Ruby 1.8.7-p72 Mingw32 17.20s Ruby 1.8.7-p72 mswin32 25.02s をぉ、かなり違いますな てっきりVCの方がGCCより速いのかなと思ってたけど 最適化の封印とかされてるのだろうか Ruby 1.9.1-p0 Mingw32 19.89s Ruby 1.9.1-p0 mswin32 28.90s がびょーん、1.8より遅くなってる… Mingw32版は自前でビルド(configure と make しただけ) mswin32版は(う)さんの
806 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 21:13:25 ] >>805 お察しの通り、mswin32版は最適化封印されてるぞ。 最近のVCを使えば大丈夫、らしい。 それでもGCCの方が速いことが多いらしいけど。
807 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 21:17:04 ] 封印てw バカじゃないのかしらw オープンソースなんだからサポートしてるコンパイラに最適化するのは当然。 そもそもVCてw せめてiccと比較しろよなw
808 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 21:18:48 ] >>807 そのへんの「事情」はMLアーカイブ読んでこい。
809 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 21:21:49 ] へたなコンパイラにへたな最適化させるとGCで必要な情報を「最適化」しちゃう?
810 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 21:22:00 ] 「w」の数が多いやつはバカが多い法則は健在だな
811 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 21:39:58 ] AquesTalk/Ruby クソワロタw
812 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 23:22:09 ] >>806 やはりそうでしたか バイナリの互換性でいまだVC 6.0でコンパイルされているのは知ってました 本体や拡張ライブラリからリンクされてるランタイムライブラリが一致してないと駄目とかなんとか あと、なにか不味いことがあって最大限の最適化もされてないとか以前どこかで見たような記憶があったので
813 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 00:13:04 ] pythonはVC8に移行したよね
814 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 00:33:01 ] VS2008(VC9)だな
815 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 06:51:25 ] 1.9.1の時点でVC9に移行しちゃっても良かったんじゃないかと思うんだがな VC6とかインストールするのもめんどくせえ
816 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 10:14:32 ] 勝手にすればいいのでは
817 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 10:16:28 ] 確かにな。mswin32版も、あくまでも有志サイトでの配布って形を崩してないしw
818 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 14:25:14 ] あちこちでmswin32向けにバイナリ配布されている拡張ライブラリは VC9でコンパイルしなおした場合、使えなくなる可能性が高いということですか? gcc版のrubyを使う場合は、拡張ライブラリは基本的に 自前でコンパイルしてインストールする必要があるとかそういうことですか? mswin32版しか使ったことないから考えたことがないな。
819 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 14:39:40 ] 1.8の安定版スナップショット(2009/03/13 04:15:48)のwin32/resource.rbがバグっぽい。 make時に作るrcファイルがwindresでsyntax error。 rcファイルのFILEVERSIONとPRODUCTVERSIONの末尾が「,」になってるわ。0でも足しとけ。
820 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 14:40:32 ] >>819 mingwでの話
821 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 23:44:17 ] >>818 mingwとVC6でコンパイルしたruby本体と拡張ライブラリは互換性があるんで互いに使える それ以外のcygwin、VC7/8/9、bccなんかでコンパイルしたruby本体では 同じコンパイラでコンパイルした拡張ライブラリしか使えないし逆もまたしかり
822 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 03:40:11 ] 過疎w
823 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 10:03:01 ] ruby厨ってrubyしか使ったことないかあるいは使えないんでひたすら布教するんだろうな 複数の言語を使いこなせないとは哀れな
824 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 10:06:23 ] 教祖が多数の言語に精通した言語ヲタなのにねぇ…
825 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 10:13:21 ] >>823 彼らはRuby使えてないよ 実際に聞いてみるといい
826 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 10:18:50 ] ことRubyユーザーで、Rubyしか使えない層ってのはごく少数だと思うが そもそも、複数使えないと(相対的に)良い悪いなんて判断できんだろ……
827 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 10:23:09 ] なんか想像力の豊かな人がいるみたいだなw
828 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 11:52:14 ] 教祖の教えだけに従うから宗教なんだろ。 教祖がこうだと言えば、反論せず賞賛するだけ。反論したら異教徒として火あぶりにされる。 plやpyの採用例に比べると、rbの採用例って驚くほど少ないから、実用面では厳しいよね。 学術研究ユーザが多いのかもしれない。
829 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 11:55:59 ] MLとか読んでる?たまにmatzもぼこられてたりするぞ ただ最終決定権(の多く?)がmatzにあるのをみんなが認めてるってだけじゃないのか
830 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 11:59:29 ] イメージで言ってるだけだろ。不満なら完全民主制の言語でも作ればいい。
831 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 13:37:50 ] >>829 matzが「コミット権取り上げますよ?」て言われたこともあったな
832 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 17:36:49 ] >>831 マジですか?w
833 名前:831 mailto:sage [2009/03/16(月) 17:57:01 ] >>832 今探しなおしてきた ttp://blade.nagaokaut.ac.jp/cgi-bin/vframe.rb/ruby/ruby-dev/29649?29386-29727 微笑ましい一幕です(悪い意味じゃなくね)
834 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 18:22:27 ] ワロタ
835 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 18:23:20 ] その後の言い訳がまた笑えるw
836 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 18:24:46 ] >>833 ワロタw サンクス
837 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 18:26:10 ] ていうか、開発MLみたいなとこでも草生やしたりすんだなw
838 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 18:29:46 ] 基本的にはしない 無くても議論はできるからだ が、草生やすのが最適だと思われれば躊躇うことはない
839 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 20:52:55 ] えーと、いわゆる優しい独裁者モデル? なんか違う肝。
840 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 00:30:47 ] 1.9.1のtrunkは6日から進んでないけど、なんか大きな変更をやってるの?
841 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 00:37:39 ] コンビニ増えすぎだよな
842 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 08:58:45 ] >>840 trunkはとっくに1.9.2devだよ。今見たら昨日も更新してた。 それともbranches/ruby_1_9_1のこと?
843 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 09:45:19 ] >>842 そなの? ホームページの最新版スナップショットとやらが(2009/03/06 04:13:00)から更新されてないので気になったんだけど。 1.8.8devの安定版スナップショット(2009/03/17 04:19:26)は毎日更新されているから。
844 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 10:13:24 ] >>843 ああ、そっち見てたのね。 こっちはSubversion見てたもんで。
845 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 22:16:57 ] >>843 smn
846 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 08:52:33 ] >>843 についてIRCの方で報告があった 今は直ってます
847 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 09:59:27 ] >>846 サンクス
848 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 11:21:20 ] 配列をN個に(ほぼ)等分する必要があって、 グネグネしたコードを書いた。 で、気に入らないのでちょっと書き直してみた。 Ruby神、リファクタリングよろ。 メソッド名は堪忍してくんろ。 def equally(a, n) sizes = [].fill(a.size / n, 0, n) (0...(a.size % n)).each {|i| sizes[i] += 1} #p sizes sizes.inject([]) {|r, size| sub = a.slice!(0, size) break r if !sub || sub.size < 1 r << sub } end (1..20).each {|i| a = (1..i).to_a p a p equally(a, 3) puts }
849 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 11:31:06 ] Enumerable#each_slice では用が足らんのか 面倒じゃのう
850 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 11:41:56 ] リファクタリングとかいうレベルじゃないくらい別モンだけど def equally(a,n) result = [] div,mod = a.size.divmod(n) until a.empty? result << ( 0 < mod ? a.shift(div+1) : a.shift(div) ) mod -= 1 end result end
851 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 12:01:16 ] def equally(a, n) sizes = [].fill(a.size / n, 0, n) (0...(a.size % n)).each {|i| sizes[i] += 1} sizes.map {|size| a.shift(size) } end
852 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 16:24:32 ] aは破壊しちゃっていいのか? # 非破壊バージョン def equally(a, n) result = [] div,mod = a.size.divmod(n) (Array.new(mod, div+1) + Array.new(n-mod, div)).inject(0) do |i, m| result << a[i, m] i + m end result end
853 名前:848 mailto:sage [2009/03/19(木) 17:02:41 ] >>849 Enumerable#each_sliceは1.9からは組み込みですか。使ったことなかったです。 >>850 なるほど。modを減らしていくほうが、自分の元の思考ともあってます。 >>851 なるほど。breakさせないほうがメソッドの動作としては自然かも。その発想頂きます。 >>852 非破壊のほうが使いやすいですよね。その発想いただきます。 shiftに引数渡せるの知らなかったんで…、 などといいつつ手元の1.8.6では使えないのでやっぱりslice! def equally(a, n) tmp = a.dup (0...n).inject([]) {|r, i| r << tmp.slice!(0, a.size / n + (i < a.size % n ? 1 : 0)) } end くっ…。見にくくなっただけのような。 さらにメソッド名がいかんともしがたい。
854 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 17:06:33 ] はうっ。mapでよかったんだった。 def equally(a, n) tmp = a.dup (0...n).map {|i| tmp.slice!(0, a.size / n + (i < a.size % n ? 1 : 0)) } end
855 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 21:24:14 ] Rubyでothelloをつくりたいのですが 何から始めればよいでしょう
856 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 21:25:38 ] つpc11.2ch.net/test/read.cgi/tech/1235727504
857 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 21:31:56 ] >>855 とりあえずCUI版tic-tac-toe作れ。 出来たらそれのGUI版を作って基礎固め。 Reversiはその後だな。
858 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 21:46:42 ] 間にGUI版を作るのはなぜ?
859 名前:デフォルトの名無しさん [2009/03/20(金) 22:28:27 ] >>855 すでに誰か作ってないかあるものを探すところから
860 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 22:49:32 ] 勉強のために作りたいんだろ ○×ゲームを先に完成させてから考えろというのは妥当だ
861 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 22:55:37 ] マジレスするとオセロはかなり難しい 段階踏んで作るのが間違いない 最初からオセロだけ目指したら絶対挫折する
862 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 23:09:34 ] 初心者スレか宿題スレに誘導するのが一番妥当かつ親切じゃないかと思うんだが。 pc11.2ch.net/test/read.cgi/tech/1235727504/ pc11.2ch.net/test/read.cgi/tech/1200175247/
863 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 23:11:48 ] 話すこと終わっちゃった感もあるな
864 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 23:19:34 ] オセロって作った人のレベル以上に強くならないって言うけどどうなんだろ
865 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 23:21:03 ] 「Rubyで」という部分を除けば完全にスレ違い
866 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 23:27:51 ] まず、質問した人はオセロ盤を作りたいのか、思考モジュールを作りたいのか はっきりしたほうがいいな。後者はRuby向きじゃないと思うが。
867 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 23:43:32 ] >>865 「Rubyに関する部分」を除いたらあらゆるものがスレ違いなんだが
868 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 23:50:26 ] そしてMatzに関する部分だけが残った。
869 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 00:08:10 ] 初心者であればあるほど、言語固有の事情と言語非依存な部分の切り分けは出来ないからのう。
870 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 00:12:02 ] ありがとうございます 移動します
871 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 00:12:49 ] >>867 Ruby自体がいろんな他の言語のいいとこどりだから すべての話題がスレ違い扱いされても文句言えない
872 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 01:35:48 ] 実はRubyは初めてでも、 アルゴリズムはめちゃくちゃすごい奴だったりしてな
873 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 01:52:43 ] >>872 大丈夫 すごい人は放置されても自力で出てくる
874 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 01:54:04 ] 誘導しても結局ゴミみたいな雑談してるだけという
875 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 03:04:44 ] オセロの対戦アルゴリズムは大変だろうな。
876 名前:デフォルトの名無しさん [2009/03/21(土) 11:36:12 ] 古典的なα-β法とかでシンプルに作ってやれば、 とりあえずそれなりに動く思考ルーチンは簡単に作れるyo! 強くするのはその後の課題になるけどな。
877 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 12:12:26 ] 全部で60手のうち 序盤20手くらいは定石がある 終盤40手くらいからは読み切れるんだろうけど 中盤20手〜40手をどうするかが課題 あとはすれち
878 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 14:44:48 ] オセロは必勝法がもう分かっているから、 いかに人間に遊ばせてあげるか、だよ。
879 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 15:18:43 ] >>878 初耳
880 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 16:49:03 ] >>878 は嘘。 ただ、完全先読みで読み切られちゃうんで、そうとうの高段者でも 劣勢になったらひっくりかえせなくなっている。
881 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 16:49:50 ] 「終盤は」を付け忘れた。
882 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 18:00:43 ] 読み切られて負けるの分かってる状態よりも 引き分け前後の微妙なところで終盤にもつれる方が ゲームとして面白いのは確かだよね 苦行をしたい訳じゃなくて遊びたいんだから
883 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 18:03:01 ] 相手がコンピュータの場合と人間の場合で戦略は違う 自分がまけそうなときに分かりやすい最善手を打ち続けるより 悪手でも相手が間違いやすいややこしい手を打った方が良いって 聞いたことはある
884 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 20:06:44 ] そういう変則手って、相手が人間の時こそ有効なんじゃないの?
885 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 21:04:39 ] そうだね
886 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 21:05:26 ] 相手が人間の時の話なんだが
887 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 21:06:07 ] うほ
888 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 21:27:35 ] 囲碁くらい複雑になると顕著だね 悪手とは言えない手でわざと難しく難しく打つやり方
889 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 22:29:26 ] オセロに必勝法があるなら、 先手か後手か決まった時点で勝負あったになるよな すべての手を洗い出しても必勝法はないってことか? やってみてなかったのか、やってないのかどっちだろう 将棋はめちゃくちゃ複雑だというが、 オセロでもすべての手を洗い出すことはできないのだろうか
890 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 22:32:23 ] >>889 ゼロサム完全情報の二者間のゲームには必勝法が存在する。 オセロは6x6なら後手必勝というのはすでに解析済み。 8x8は後手必勝ぽいけどまだ解析中。
891 名前:890 mailto:sage [2009/03/21(土) 22:35:07 ] > ゼロサム完全情報の二者間のゲームには必勝法が存在する。 あと、手数が無限にならないことも条件として必要だった。
892 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 22:35:25 ] 「確定」じゃないなら必勝法はないけどな
893 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 22:40:14 ] まあもし必勝法が見つかったら10×10くらいにすればいいのかな >>890 オセロには引き分けもあるが、それでも必勝法は必ずあるの?
894 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 22:42:10 ] >>890-891 ふおおお、なるほど。6x6までは後手が必ず勝つのか。 完全情報というのは「手の内をさらす」ということでいいのか? たとえばじゃんけんは当然必勝法はないだろうが、 駒を隠す軍人将棋にも必勝法があるとは限らないってこと? 5x5ならおれのPC(クアッド、メモリ8G)とRuby1.9でも 現実的な日にちで計算可能だろうか。
895 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 22:44:50 ] ja.wikipedia.org/wiki/%E4%BA%8C%E4%BA%BA%E9%9B%B6%E5%92%8C%E6%9C%89%E9%99%90%E7%A2%BA%E5%AE%9A%E5%AE%8C%E5%85%A8%E6%83%85%E5%A0%B1%E3%82%B2%E3%83%BC%E3%83%A0
896 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 22:55:17 ] >>895 サンクス、これはおもろい
897 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 23:00:01 ] >>896 高校生かな? 大学行くと1年生の教養の情報系の授業で習うぞ
898 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 23:06:09 ] いい年こいていちいちひねたレス付けないと気が済まないのかね
899 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 23:11:44 ] >>897 に他意悪意を感じ取るのは曲芸または深刻な学歴コンプレックス
900 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 23:13:23 ] >>897 ゲーム理論習わないところもあるよ 実際、俺も情報系の学部で4年目だけど習ってない
901 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 23:17:26 ] >>900 それはなんていうか大学に抗議したほうがよくないか 俺らは選択だった ゲーム理論という名前でテレビゲームの話だと思った人がいて半分くらいは寝てた
902 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 23:18:08 ] だいたい、大学生の誰もが「教養の情報系の授業」を取ってるって前提がおかしいw 一般教養の講義を選択できない大学があるんだろうか どっちかというと、講義より「囚人のジレンマ」の話なんかから入る人が多いだろうし
903 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 23:18:56 ] 第81回 高階関数を理解できないとRubyは理解できない ttp://d.hatena.ne.jp/bingo_nakanishi_perl/20090321/1237630273 うん、いや、その通りではあるんだけど、そんな大層なもんでもないかなーと 内容はブロックの話で、ある意味タイトルは釣り
904 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 23:34:50 ] 経済学にも応用されてるよね 株の必勝法とか
905 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 23:36:23 ] 必勝法というか負ける可能性を低くする定番な
906 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 23:36:26 ] >>903 馬鹿が解説するとますます分からなくなるという罠
907 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 23:38:14 ] てか、ナニを目的とした記事なのかよーわからん もうちょい無難なタイトルにしたほうが吉
908 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 00:10:21 ] なんか内容がないな 高階関数って言いたかっただけなのか?
909 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 00:17:26 ] 高階関数とか無名関数とか、言い換えて余計わからなくする典型的な失敗解説の例?
910 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 00:44:26 ] 分かってないひとが無理に解説しようとするからw
911 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 01:07:50 ] bladeはメンテ中? MLがwebで見れなかったんだけども
912 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 04:34:41 ] 原稿書く様な人は詳しくなかったりするのが問題。技術ネタは特に。 チェスでもスパコンで演算するレベルだしなあ。
913 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 09:25:51 ] Deep Blue はスパコンというより専用機
914 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 09:28:06 ] スパコンと専用機は互いに排他的な概念なの?
915 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 10:12:27 ] 排他的なら「スパコンではなく専用機」という表現になると思うが
916 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 10:17:32 ] 専用スパコン機でいいじゃない。駄目か。
917 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 10:47:53 ] IBMのサイトだと 「In May 1997, IBM's Deep Blue Supercomputer played a fascinating match with the reigning World Chess Champion」 ってなってるから、ディープブルーはスパコンでいいんじゃないかな チェスしか出来ない用途の狭いスパコンだけど。
918 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 13:22:38 ] >>913 DeepBlueと同じ開発チームが民生用のパソコン用にソフト開発して 例のカスパロフ氏と5分の勝負をしたって何年か前にニュースになってたと思う。 DeepBlueに似たような監事の名前だったはずだけど、思いだせない。
919 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 12:57:21 ] Webで見られるMLの設定が変わったみたいだけどcharsetくらいはまともに返して欲しいものだ。 blade.nagaokaut.ac.jp/ruby/ruby-list/thrt1-217.html
920 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 13:11:09 ] >>919 動的に出力してるページはHTTP headerでちゃんと吐いてるから、HTMLページだけかな それならサーバよりmetaタグを各ページにきちんと埋め込む方がいいかもね というかやるならきちんとXHTMLにしてもいいよね bladeってソースはオープンになっていのかな?
921 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 19:13:50 ] XHTML1.1だとmetaタグに制約があったりするけど それ以前の問題だなぁ…
922 名前:デフォルトの名無しさん [2009/03/23(月) 20:36:34 ] >>919 どう間違えたらcharset=iso-8859-1何て返すんだろうなwww
923 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 21:06:16 ] Apacheの初期設定を適当に使うと何でもかんでも ISO-8859-1で返すようにするのは結構簡単にできてしまった気がする。
924 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 00:07:31 ] mingwで1.9をコンパイルしてるんだけど、pthreadって使った方がいいの?
925 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 01:34:09 ] >>923 というかiso-8859-1で返すのが正式 それ以外はオプション
926 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 01:38:05 ] デフォルトでUTF-8で返してくれれば楽なんだけどな 3あたりで変わらないかな
927 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 01:46:04 ] >>926 EUCなML書庫はそれでも文字化けするという なんかW3Cとかが絡んでたんじゃない?>iso-8859-1 仮にXHTMLが標準となれば、UTF-8になるかもよ ttp://www6.plala.or.jp/go_west/note/memo/xhtml_media_types.htm
928 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 02:16:30 ] AddDefaultCharset は Apache 2.0.53 から httpd.conf 初期ファイル群には書かれなくなった ユーザーやアプリケーションごとに設定すべきということなのだろう
929 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 02:22:24 ] そもそも、charsetなんて文書ごとに設定するのが本筋なので、 サーバのデフォルトなんてどうでもいいってことではないのかな XHTMLならXML宣言だろうし、HTMLならmeta要素?
930 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 02:33:00 ] >>929 違う サーバーは送出するファイルのtypeとcharsetをヘッダで送信「するべき」 現行これが行われてないのは単なるサーバの怠慢 と、処理コスト無限大なことによる 本当はファイルの文字エンコードをサーバはあらかじめ知っておかなければならない 画像ファイルの type が別個であるのと同様に、テキストファイルの charset も実際の値を送信するべき これの努力を怠ってはならない ちなみに、 meta 要素の http-equiv は 「HTTP等価値(equivalent)」の略だ Web ブラウザはこれを HTTP ヘッダの結果と同様に扱わなければならないという意味 だから、HTTP ヘッダが基本
931 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 02:43:57 ] meta の charset なんてのは、あれは 仕 方 な く 読んでるんだよ
932 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 02:51:25 ] >>930 > HTTP ヘッダが基本 その仕様が、Apache等の実装者を含めあんまり意味がわからないって問題では? 良ければさらっとでも解説希望。 画像のMIME typeなんかは拡張子で判別して現状それほど問題ないが、htmlやらxmlやらで それは(今の文化的に?)無理じゃん サーバ側の設定でやるとしたら、charsetによってURLをわけるとかディレクトリをわけるとか 拡張子をわけるとか、とにかく意味不明なサーバの挙動・仕様の要求になるわけで。 もしくは、サーバが文書の中を読んでヘッダ吐くとかのさらに意味不明な実装が出たりw で、仕様上はHTMLヘッダの指定が優先らしいからブラウザとかもそうなってるけど、 それでは不便すぎるので、現実的にHTTPヘッダは省略しましょうってなってるんじゃないの?
933 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 03:43:10 ] この辺がまとまってるか www.fxis.co.jp/xmlcafe/link/jirei/sample_charset.html
934 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 03:47:36 ] 文字符号化スキーム charset名 ISO-2022-JP(RFC1468) ISO-2022-JP 日本語EUC(圧縮形式) EUC-JP シフトJIS Shift_JIS なんでUTF-8載せないんだろ
935 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 03:54:24 ] 非日本人は、HTTPの何も指定しない時はiso-8859-1でおkで困ってないというのが大きい。 個人的にはメールとの相互互換から、ISO-2022-JPに統一すべきだと思う。
936 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 04:02:54 ] >>934 昔だからじゃね? RFC2616が出る前みたいだし。ただ、charsetについては仕様の変更は無いか www.studyinghttp.net/rfc_ja/rfc2616 ただ、↑の3.4とか3.7.1の立場からは、>>928 のApacheの初期設定は明らかに後退だな >>935 いやいや。文字が足りないって根本の問題の解決もそろそろ・・・。 それに日本国内だけで統一しても仕方ないじゃん メールもUTF-8でいいよもう
937 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 04:13:14 ] 最近サブジェクトとかヘッダが =?ut-8?B? で来るメールが増えた
938 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 05:29:54 ] gmailがそうだからね 俺も使い始めのとき、文字化けすんぞゴラァって言われてあわてて直した
939 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 10:08:26 ] >>924 mingwではpthread関係ないというか何も指定しなくていい。 つかプラットフォームによらず1.9ではpthread関連の指定は一切不要。
940 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 12:19:16 ] >>939 ほーい、サンクス
941 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 00:56:12 ] >>938 今時、utf-8 も処理できないようなメールクライアント使ってる方が悪い と開き直ればOK
942 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 02:10:54 ] うちは7ビットしか通らないよwww
943 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 07:08:36 ] >>937 utf-8 ならともかく ut-8 はないな。
944 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 08:05:43 ] ガイジンさんの文字エンコーディングわかってなさっぷりはガチ 慣れない英語で何度もバグトラッキング送るの疲れた もうやだ っていうかほぼ確実に、英語で書いた俺の意図自体は伝わってねえ
945 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 08:19:41 ] >>944 バグ報告は症状1つに対し1エントリずつに小さく分けて送れ あんまり総合的な題目で送るとたいてい独自解釈されてたいていエンバグする 2〜3行のカタマリの修正につき1エントリな感じでよろしこ 一気に3つくらい投稿が増えて正直なんか邪魔っけというか申し訳ない気もするが、 本当に不具合なのなら全く気にする必要はないし、堂々と送ればよい バグ報告が2/2のライブラリよりも13/200のライブラリのほうが安心感があるものだ
946 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 08:25:07 ] >>944 次はロシア語のメールをUTF-8で送ってやるんだ >>942 そんな化石みたいなサーバ?は今すぐ捨てて下さい
947 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 08:30:08 ] >>945 バグ報告の異常に少ないライブラリって使うのちょっと躊躇するよね そういうのに限って2006年にバージョン0.2出したっきり で、使ってみて、「あーやっぱダメだ」みたいな
948 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 11:50:05 ] RMagickでpathに2byte文字含んでると処理がうまく行かないのを何とかしてほしい。
949 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 21:31:21 ] むしろ2バイト文字のほうが世界のマイナーだし。
950 名前:デフォルトの名無しさん [2009/03/26(木) 01:50:15 ] でも中国人多いじゃん。
951 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 01:56:17 ] マルチバイト文字に関わってる中国人は人口ほど多くはないと思う
952 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 02:09:26 ] 中国人のコンピュータ利用人口が少ないってことか? インド系文字は?
953 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 02:19:38 ] まだ支那ってインターネット十分に繋がってないと思うぞ。 繋がってたら、とっくにIPアドレス売り切れてる。
954 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 07:33:05 ] ipv6の普及には支那の一般家庭のネット開通で十分ということか
955 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 11:21:53 ] あれ?ruby-coreがあぼーんしてる ttp://blade.nagaokaut.ac.jp/ruby/ruby-core/index.shtml
956 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 20:57:33 ] >>953 (とその周辺) wbb.forum.impressrd.jp/feature/20080926/690
957 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 21:06:30 ] MLアーカイブの番号順リストって何でいきなり無くなったの? ML入ってなくても毎日追っかけられて重宝してたのに。。。 なんか文字化けもしてるしやる気ない感じ
958 名前:デフォルトの名無しさん mailto:hage [2009/03/26(木) 21:21:41 ] やる気ない
959 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 21:22:36 ] リニューアルしようとして失敗してとりあえず稼動だけしておくというのがとてもRubyらしくてよい どのへんが問題なのかぬ
960 名前:デフォルトの名無しさん mailto:hage [2009/03/26(木) 22:00:38 ] そういう管理者を管理する管理者
961 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 13:16:24 ] まだルビーも公開β版みたいな物だしな。 枯れて来てから使うのがいい。
962 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 17:01:24 ] 枯れる前に廃れる罠
963 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 17:09:19 ] というか、MLのnagaokaut.ac.jpって何なんだ。 ここの職員の人が管理してるの?
964 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 17:12:05 ] >>962 今から廃れさせることができたら大したもんだ
965 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 17:18:00 ] MLはメーラーで読むものだろ。archiverが壊れたぐらいで文句をいうのはお門違い
966 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 17:22:01 ] と、古参の方が申しております
967 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 17:24:05 ] >>965 後者はともかく前者には異議あり。
968 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 17:30:15 ] mboxでもMailDirでもいいから、公式でMLのログを配布してくれるんなら、 >>965 にも同意できるが、現状あそこだけだしねえ
969 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 17:59:13 ] >>963 原信一郎先生が個人的に提供してるものだが?
970 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 18:08:13 ] グーグル先生でログを検索できないMLは役に立たないと思われ
971 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 18:13:16 ] 個人情報とかうるさい昨今、MLの内容もだんだん公開に気を使うようになっていくぅーんくぅーん おやどこかに子犬が
972 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 18:15:05 ] >>969 数学の先生なんだな。web自体にはそれほど興味ないのかな ご本人のサイト?もエンコーディングばらばらだし、何かの実験なんだろうか。 ttp://blade.nagaokaut.ac.jp/~sinara/
973 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 20:43:04 ] >>968 せっかくRuby使ってるんだから Rubyでgetして集めるスクリプト書いて公開してくださいおねがいします
974 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 20:46:26 ] そんなものを作れるなら、掲示板なんかでくだを巻いていない
975 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 20:48:56 ] 日本語でなくていいなら www.ruby-forum.com/ があるお
976 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 20:54:27 ] >>972 昔からウェブページ作ってる人だと多いよ。 俺のウェブページもUTF-8とISO-2022-JPとEUCといろいろになってる。 まとまった暇があるときにUTF-8に統一したほうがいいかなぁとか、 考えてはいるんだけど。
977 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 20:55:10 ] >>975 そこのruby-devが悲惨なことになってるな
978 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 20:55:38 ] EmacsのUTF-8の扱いが酷いからメインに移行できないという話はまだちらほら
979 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 20:56:42 ] >>973-974 じゃあ俺がPythonで書いて公開してやるからちょっと待ってろ
980 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 23:09:52 ] 980