1 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 21:07:47 ] オブジェクト指向スクリプト言語Rubyについて扱うスレッドです。 まったりと行きましょう。 Ruby Home Page www.ruby-lang.org/ja/ = 前スレ Rubyについて Part 36 pc12.2ch.net/test/read.cgi/tech/1246174168/ 過去スレ・関連スレは >>2-
321 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 22:32:07 ] >>314 そうだったのか〜 でも、なぜMswin版rubyだと落ちないのでしょうか Win32API呼び出しが一回や二回ならスタックが元に戻ることが多いけど(で、たまたまうまく動く) 連続してコールバックで呼び出されるとスタックが正常に戻る機会が無く ドンドンずれていってメモリ破壊が起こるってことでしょうか? 普通だったらWin32APIを使うところですが コールバックできないのでdlを使いました ググったら dlを使ったサンプルがあったので 1.9のdl(dl2)では 呼び出し規約の指定も出来て Win32APIは単なるdlのラッパーになってますね
322 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 23:34:52 ] Win32APIより、win32/api
323 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 01:01:23 ] >>321 > でも、なぜMswin版rubyだと落ちないのでしょうか 知らん。アセンブラ吐かせて確認してみな。
324 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 03:29:03 ] Net::HTTP の open_timeout と read_timeout の初期値が nil なのはなんで?
325 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 04:12:16 ] >>324 簡単だからソース読んでみ
326 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 05:48:16 ] Ruby 1.9の本もやっぱり海外のほうが早いのか Programming Ruby 1.9: The Pragmatic Programmers' Guide (Facets of Ruby) www.amazon.com/dp/1934356085/
327 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 08:29:14 ] まあ、TCPSocket.open のタイムアウトをカウントダウンで待つ必要はないわな 1 秒とかに設定すればひょっとしたらご利益はあるかもしれないが
328 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 21:21:26 ] MBARIパッチっていまどうなってんのかな。 導入予定って1.8.6系だけ?
329 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 22:06:03 ] Asakusa.rb議事録によるとMBARIパッチはあらかた入ってる模様 ttp://qwik.jp/asakusarb/013_log.html ttp://qwik.jp/asakusarb/63.html ただし大物のCopyOnWriteがまだっぽい
330 名前:デフォルトの名無しさん mailto:sage [2009/09/20(日) 17:43:24 ] あとstack cleaningだな。 入るなら1.8.8だが、個別のパッチで出てこない限りマージしようがない。 あれはマージさせたくないとしか。
331 名前:ブグ☆2101を書いたガイ mailto:sage [2009/09/20(日) 19:20:51 ] あひーっ!ブグ☆2101はゼッさん・放置プレイ中でよ! 英語で書いたせいでロスト・イン・トランスレーション気味みていだ。 なおるまで110にちかかったブグ☆1531を見てら、おしっこちびっちゃったでよ。 ジャパニイズ・訳をruby-devにドロップしてら読んでやらなくもねい、っていう人はいるますかね?
332 名前:デフォルトの名無しさん mailto:sage [2009/09/20(日) 19:36:33 ] 日本語でおk
333 名前:デフォルトの名無しさん mailto:sage [2009/09/20(日) 19:49:09 ] ttp://redmine.ruby-lang.org/issues/show/2101 のことであろうとエスパーしつつコメントすると、 まだ4日なんだから気長に待つが吉。 目先の回避としてはrubyは原則いつでもメソッドの中身を差し替えられるから 該当するメソッドをとりあえず差し替えてしまえばOK。
334 名前:デフォルトの名無しさん mailto:sage [2009/09/20(日) 20:33:32 ] >>331 sinとcosのほうは x %= two * BigMath.PI(prec) でいいんじゃないかと思うんだが、加減算のほうが速い? あとテストが欲しい。
335 名前:331 mailto:sage [2009/09/20(日) 21:03:33 ] >>334 ドゾー (ノ゜▽゜)ノ ⌒~パッチてきよう後 $ ruby -rbigdecimal -rbigdecimal/math -e 'include BigMath;p BigMath.exp(BigDecimal("-50"),10).to_s' "0.1928749848E-21" $ ruby -rbigdecimal -rbigdecimal/math -e 'include BigMath;p BigMath.sin(BigDecimal("100"),10).to_s' "-0.50636564110975879365655776303890941120458305E0" 誤差は1つめが最後の桁で、2つ目は26桁目あたりで発生してるでーす。速度の最適化はあまり 気にしてねいです。BigDecimalの除算の効率わかんねいし、どうせその後の級数の和の計算の方で 圧倒的に時間がかかるので。セキュリテとかよく知らねけども、現状 BigMath.log(BigDecimal("1E-50"),10) でフリイズ気味になるのはDoSっとやられたり しねいてすかね?
336 名前:デフォルトの名無しさん mailto:sage [2009/09/20(日) 21:28:30 ] あそこに書いてある、atan()の速度向上のための式が、よくわかりません。 どこか、()とかをを省略してないでしょうか。 logはふたつに分けた方が速いような気がします。 計測してませんので、なんともですが。 >>331 前の方に回避方法があります。 本体をいじるのが嫌な人はこっちでひらって調整後、あちらを呼んでください。 flgを立てて、returnのところで調整するのが本当かもしれませんが、 他人のコードをあんまりいじりたくないので。 あれだったら、行を挿入するだけです。 1行で書けるけど、目立つので3行にしました。 >>334 何故か、BigDecimalで%を使う発想がなかったので、私は違うやり方で修正しました。 そっちの方が良いかも。
337 名前:331 mailto:sage [2009/09/20(日) 21:50:58 ] atan(x) = sum 2**(2*n)*(n!)**2*x**(2*n+1)/((2*n+1)!*(1+x**2)**(n+1)) (n = 0, 1, 2, ...) だよ。みつけたのはおいらじゃなくてオイラーさんというひとです。 mathworld.wolfram.com/InverseTangent.html とかにあるから探してね。
338 名前:336 mailto:sage [2009/09/20(日) 22:16:37 ] >>337 どうも、ありがとう。 この手は慣れているつもりだったけど、ちょっとどこかでコーディングミスしているみたい。 あそこの式だと、左がn、右はxで良いのね。 で、左と右を掛け算する。 連休のうちになんとかなるでしょう。 ついでに、asin()も書くつもりだけど、公開できるかどうかは微妙。 色んな意味で。
339 名前:デフォルトの名無しさん mailto:sage [2009/09/20(日) 22:37:40 ] >>336 > logはふたつに分けた方が速いような気がします。 俺は>>181 を見てこうしてた。 @@ -133,4 +140,5 @@ module BigMath n = prec + BigDecimal.double_fig one = BigDecimal("1") + x = -x if neg = x < 0 x1 = one y = one @@ -146,5 +154,9 @@ module BigMath y += d end - y + if neg + one.div(y, prec) + else + y.round(prec - y.exponent) + end end
340 名前:336 mailto:sage [2009/09/20(日) 23:03:30 ] >>339 >181は確かに、私のレスですね。 >338で言うところの >色んな意味で と、言うのは、私に数学的な素養が少ない。 と、言うことも含まれます。 専ら、電気通信の関係で、飯食ってます。 今夜は、炭素と水素の化合物で頭がクルクルなので、明日ゆっくり拝見します。
341 名前:,,・´∀`・,,)っ-○○○ mailto:sage [2009/09/20(日) 23:38:47 ] ベンゼンですねわかります
342 名前:デフォルトの名無しさん mailto:sage [2009/09/21(月) 00:09:05 ] >>338 atanは再提出。
343 名前:デフォルトの名無しさん mailto:sage [2009/09/21(月) 12:56:17 ] 教祖はデビアン使いでウィンドウズ使ってないしなあ。
344 名前:,,・´∀`・,,)っ-○○○ mailto:sage [2009/09/21(月) 14:01:12 ] 松江のカンファレンスにはMSも参加してたけどね。 IronRubyがもう少しまともなら・・・
345 名前:デフォルトの名無しさん mailto:sage [2009/09/21(月) 14:50:32 ] 未だにまともじゃない?
346 名前:デフォルトの名無しさん mailto:sage [2009/09/21(月) 22:02:20 ] 例のatan()は、完成しました。 有効桁数を100取って、xを0.001から0.999まで変えながら、 オリジナルと比較してみましたが、問題ないみたいです。 xが1.0以上でもちゃんと計算できますし(ここ重要)、速度も速いです。 リクエストがあれば、私の書いた部分だけ公開します。 実は、あれ以降ある種の罪悪感を感じておりまして、 道を歩いていたら、犬の糞を踏んづけてしまった気分だったのですよ。 でも、今日ふと思ったのですが、 あれは、数学のライブラリーとしては、とても貧弱ですよね。 sin()とcos()はあるのに、tan()はないとか。 tan()=sin()/cos() は中学校で習うのかな。 atan()があれば少しのちょこちょこで、asin()もacos()もできるみたいです。 作者は、いつ何処で誰が指摘するかニタニタしながら待っていたのかもしれません。 (と言うか、とりあえず用意したから、必要な人は勝手に拡張してちょうだいみたいな) そう考えてみると、犬の糞ではなくて、百円玉拾った気分になって、今夜は終わりにします。 asin()はもう少しです(たぶん)。分母と分子に!のある式でやっております。 atan()からのチョメチョメでも良いのですが、出てきた値の正当性を確認するためには、 複数のものが必要だし、まぁ遊びですから。
347 名前:346 mailto:sage [2009/09/22(火) 21:14:17 ] あれは、ようやくコードが動くようになって、舞い上がって書いております。 本意は別のところにあるのですが、文章がへたなのと、表現が不適切なところもあって、 変な具合になりました。 そもそも、exp()の不具合は私が最初の発見者では無いと思います。 見切りをつけて、よそに行くひと。 黙ってじっと待っているひと。 知らないで使っているひと。 私はたまたま回避方法を発見したので、発表させて頂きました。 不愉快な思いをされた方には、お詫びを申しあげて、私は退場します。 どうもすみませんでした。
348 名前:デフォルトの名無しさん mailto:sage [2009/09/22(火) 22:01:33 ] 以前は Ruby を使ってたけど、 Scheme の方が断然書きやすい。
349 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 00:04:53 ] そりゃあLisperならGaucheのほうが使いやすいんでないか
350 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 00:05:56 ] 釣れた!
351 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 00:43:41 ] かっこいい!釣り師(つりし)かっこいいよ!凄(すご)いね!やったね!
352 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 07:57:58 ] SchemeとHaskellどっち習ったほうがいいと思います?
353 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 08:11:45 ] >>352 Smalltalkにしとけ。
354 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 10:19:45 ] Rubyやってれば根っこは同じSmalltalkとかSchemeはちょろいから、そっちを先に片付けるか 目新しい考え方を学ぶのにHaskellかってかんじかな。いずれにせよぜんぶやっておk。
355 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 10:31:58 ] Haskell に一票。といいつつ自分は Scala 勉強中。
356 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 10:33:14 ] HaskellとRubyの組み合わせが最強ということですね。 ありがとうございました。他の糞ゴミ言語で時間を潰さなくてすみました。
357 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 12:58:22 ] くだらん煽りはいらないから
358 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 13:00:14 ] >>348 からここまで全部俺の自演
359 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 19:07:44 ] おつかれー
360 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 02:31:22 ] 関数型言語に興味があって、 積ん読してあるソフトウェアデザイン4月号の Haskell の特集を読んでみたが、 ほとんど理解できなかった 関数型言語は難しい。 Ruby などの、 ・クロージャ ・メソッドの引数にブロックを渡せる というのは理解できているつもりなんだけど
361 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 04:23:53 ] 俺でも使えるrubyは偉大
362 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 09:01:44 ] String#inspect って中身なに? 信頼できない入力を inspect して eval して戻しても安全?
363 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 09:13:06 ] inspect した文字列は変換器に通してはいけない まめちしき
364 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 09:16:52 ] eval(str.inspect) はコード実行が起こる可能性があるけど eval(str.dump) は何も起こらないことが保証されてるんだっけ? このへんあんま気遣ってないんだっけか、太古どっかでなんか聞いた気がする
365 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 17:49:12 ] eval(str.dump) == str は保証されてる eval(obj.inspect) は何がおきるかわからない
366 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 17:57:19 ] String は dump をそのまま返してるんじゃねーかとも思う あれわざわざオリジナルなの?
367 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 18:02:58 ] Non-ASCIIの扱いが違う
368 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 06:21:04 ] >>367 それは1.9のみの話? 1.8ではasciiかどうかなんて意識してなかったと思うけど、どうでしょう?
369 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 08:18:01 ] $ /usr/bin/ruby -vKu -e 'puts [ "あ".dump, "あ".inspect ]' ruby 1.8.6 (2008-08-11 patchlevel 287) [universal-darwin9.0] "¥343¥201¥202" "あ" $ /usr/bin/ruby -vKn -e 'puts [ "あ".dump, "あ".inspect ]' ruby 1.8.6 (2008-08-11 patchlevel 287) [universal-darwin9.0] "¥343¥201¥202" "¥343¥201¥202"
370 名前:369 mailto:sage [2009/09/25(金) 08:21:14 ] なんでバックスラッシュがyenに変換されるんだろ……
371 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 08:56:00 ] >>370 それは君が Mac を使ってるからだよ
372 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 15:13:24 ] 既出かもしれないけど、Ruby1.9で巨大なオブジェクトに対して存在しないメソッドを呼び出そうとするとハングする・・・ エラーメッセージを生成するためにinspect呼び出してるせいみたいだけど、これタイムアウトか何か設けて欲しいわ
373 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 15:22:12 ] 巨大な、て インスタンス変数がめっちゃやたらあるとか、 ギガバイトサイズの文字列とか?
374 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 15:32:39 ] 巨大っつったけど、実は大したことなかったりする・・・ 頂点をあらわすオブジェクトが50個、辺を表すオブジェクトが200個くらいのグラフなんだけど (辺はそれぞれ長さ1の文字列と頂点一つ、頂点は長さ10〜20の整数と辺の配列をもってる) 普通にプログラミングしてたら作られ得る規模だよね、これ CPUはE8500だし言うほど古くないと思うんだけど、、、
375 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 15:37:55 ] そんな巨大プロジェクトにRubyを採用する方が悪い(キリッ
376 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 16:00:31 ] PHP使え
377 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 16:04:33 ] 再現コードうpれば直るよ
378 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 16:06:16 ] >>374 > 頂点をあらわすオブジェクトが50個、辺を表すオブジェクトが200個くらいのグラフなんだけど > (辺はそれぞれ長さ1の文字列と頂点一つ、頂点は長さ10〜20の整数と辺の配列をもってる) 再帰してんのか?
379 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 16:14:45 ] そのオブジェクトに自前のinspectメソッドを用意すればいいのでは large_string = '巨大文字列' * 20 # 例えば*10000なんかだと表示が大変なことに p large_string def large_string.inspect "#<巨大文字列 #<object_id:0x#{self.object_id.to_s(16)}> size=#{self.size}>" end large_string.foobar # => undefined method `foobar' for #<巨大文字列 #<object_id:0x156ad40> size=200> (NoMethodError)
380 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 16:22:30 ] inspectのオーバーライドはしたけど、 こういうオブジェクト作るたびに、エラーメッセージ対策のためにinspectオーバーライドするのはなんかなぁ・・・と ちなみに、ある程度inspectの結果が巨大になると、かってに#<[クラス名]:16進数文字列>に直してくれるみたいだけど、 それならいっそのこと、inspectに時間がかかるケースも想定して欲しかった、と class A; def inspect;"A"*10 end end A.new.hoge ==> NoMethodError: undefined method `hoge' for AAAAAAAAAA:A class A; def inspect;"A"*10000 end end A.new.hoge ==> NoMethodError: undefined method `hoge' for #<A:0xcc8594>
381 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 16:34:21 ] >>374 グラフにループがあるとしたら、何も考えずに頂点と辺の関係をたどってたら無限ループ突入だろ
382 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 16:41:34 ] >>381 ビルトインのinspectって循環参照考慮してる筈だよね 380で言った「inspectのオーバーライドはしたけど」っていうのは、ビルトインのinspectのせいで止まるから 仕方なく自前で用意した処理の軽いinspectに置換したってこと
383 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 16:53:34 ] Object#inspect はインスタンス変数全部表示しようとするぞ インスタンス変数がアホみたいに莫大だった場合はボトルネックになる
384 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 00:32:45 ] pp だと pretty_print_instance_variablesを定義して簡単に回避できるけど、 単なるinspect向けにそういうのはないの?
385 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 11:10:14 ] >>384 は悪くないかもな。 あるいは module Inspector def inspect_member(name) ... end end class LargeObject extend Inspector inspect_member :lines end とか
386 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 12:51:38 ] タイムアウトも悪くないけど、 速いマシンと遅いマシンとでinspectの結果やら p の出力が変わったりするとそれはそれで地雷かもなあ
387 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 20:52:14 ] そういや、Matzにっきってもう更新されないの?
388 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 22:45:12 ] >>387 Ruby会議でその話になったときはTwitter見てっていってた。
389 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 23:07:24 ] TLをまとめてブログにポストするrubyスクリプトでも書いて それで更新したらいいのに
390 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 23:11:54 ] そんなの読みたくない
391 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 09:18:31 ] twilog.org のこと?
392 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 10:02:00 ] Rubyによる並列処理システム 「CloudCrowd 0.1.0」リリース codezine.jp/article/detail/4417
393 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 13:27:33 ] >>388 twitter見てみたけど、便所の落書きみたいなことしか書いてなかった・・・ blogにもどってくれよん
394 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 13:42:49 ] そもそもTwitterは「基本ひとこと」「ログが長期間残らない」という点で blogとは違ったものだしな 「Matzはblogの更新をやめた」と考えた方がいい
395 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 13:48:34 ] ブログを書く手間と時間はTwitterに消えてるんだろうな Twitterってかなり一般的になってきたけど気が散って生産性落ちたりしないのかな
396 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 13:53:02 ] リアル雑談と同じようなご利益があります 同じようなご利益しかないとも言えます 同じような弊害があるとも言えるわけですが
397 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 14:25:25 ] iPhone持ちだし、Twitter興味はあるけどね 手を出すと集中して本読んだりコード書けなくなる自信がある
398 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 19:26:24 ] twitterも読みきれなくなってきた
399 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 19:33:50 ] >>394 >「ログが長期間残らない」 いや、残るけど?
400 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 19:36:22 ] どうせならここでつぶやいてよ
401 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 19:40:00 ] うむ 元祖便所の落書きとしては是非invitationを
402 名前:メカMatz mailto:sage [2009/09/27(日) 19:40:13 ] Matz江なう
403 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 20:08:43 ] >>399 Twitterのログは途中で消えるよ いやサーバに残ってるのかどうかは知らんけど、少なくともWeb上から見えなくなる
404 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 20:16:36 ] loopっていつの日かまっとうな制御構文に格上げされる可能性はないの? loop end でいいやん
405 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 20:18:46 ] forさんよりも利用頻度が高いloop・・・
406 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 20:24:11 ] for や while はオプションがめんどくさいからな お前は黙って無限ループだけしてりゃいいんだよというのを黙々とこなす loop
407 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 20:38:19 ] 1.9だとloop doはwhile trueより格段に遅くて気に入らない 制御構文になったら違ってくるのかもしれないけど
408 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 20:45:42 ] >>403 Web上からも見えるよ 一覧上からたどれなくなるだけで 個別のエントリのURLを控えておけばいつでも参照可能。
409 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 21:29:44 ] >>407 そうなん? ここに書いたらまたlength/sizeのときみたいに笹田さんが直してくれそうだな
410 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 21:31:55 ] 最適化の書き換えの優先度が低いんだろ 放っておいてもいつか速くなると思われる
411 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 21:35:53 ] loopが、というよりyieldが遅いんでは? 最適化が本格化すると、loopをバイトコードレベルで 無限ループに書き換えるくらいはやってくれるだろう
412 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 21:36:01 ] よし、おまえらささださん方面に電波最大出力だ
413 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 21:36:27 ] 「いつか」とか「本格化すると」じゃなくて、今速くして欲しいんだよね
414 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 21:41:53 ] 今すぐ切実に早くしたいならwhile trueに書き変えろよw
415 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 21:42:32 ] >>413 Rubyのソースコード書き変えて再コンパイルしれ たぶんいちばん早い
416 名前:デフォルトの名無しさん [2009/09/27(日) 21:48:40 ] length/sizeって何があったの? 本人降臨したの?
417 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 22:02:53 ] >>414 切実に速くしたかったらCで書くだろJK せっかく超高級言語つかってんだし、loop do endって書くキモチを 大事にしたいんだもん
418 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 22:19:41 ] むしろforが要らない子になってね?
419 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 23:03:27 ] rubyそのものを最適化オプションガリガリ付けてコンパイルすればいいんじゃね
420 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 06:44:34 ] if RUBY_VERSION >= '1.9.0' then str.force_encoding(::Encoding::ASCII_8BIT) end について本スレで何かコメントでもあれば
421 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 07:01:52 ] 今時thenなんて使わないよね
422 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 08:01:53 ] いや全然
423 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 08:05:40 ] thenだけにー
424 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 08:07:52 ] >>421 てめえちょっと表出ろ
425 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 08:10:26 ] ::Encoding::ASCII_8BIT より "ASCII-8BIT" のほうが短くていいな
426 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 08:22:33 ] やたら短さだけに拘る人間の80パーセントはちんこ短い
427 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 08:25:15 ] で ト ン セ | パ 0 2 り 残 た よかっ
428 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 08:34:26 ] respond_to?(:force_encoding) しろとか defined?(::Encoding) 使えとか言われてたな
429 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 11:29:54 ] A-Zでカテゴリ選んで A-Zで登録アプリを26^2個呼び出せる CUIなランチャ作ったけど起動が重いな。 Lightspeed Languageの登場が望まれる。
430 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 11:50:50 ] >>370 SafariというかWebkitの人が直してくれないから https://bugs.webkit.org/show_bug.cgi?id=24906
431 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 11:53:41 ] >>420 RUBY_VERSIONじゃなくて、>>428 の言うとおりforce_encodingかEncoding見てください。 なお、勝手に俺バージョンのforce_encodingやEncodingを1.8で定義しないように。 その辺を見て分岐することが推奨されているので、MRI以外で死にます。
432 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 11:55:47 ] >>420 >>425 文字列リテラル使うとオブジェクトが増える。
433 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 11:58:19 ] ruby使ってんのに、小せえこと気にすんなよ
434 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 12:34:09 ] >>431 > 勝手に俺バージョンのforce_encodingやEncodingを1.8で定義しないように。 Javaでも使っとれ
435 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 12:40:57 ] 1.8.7 で警告が出ない以上、>>431 の主張はカス Ruby 1.9 の Encoding が動作してくれないと困るのであるなら、そのように記述するべき 我々は実際には Ruby のメジャーバージョンを考慮しているのである以上、 スクリプトとしての記述もバージョンで分岐させるように書か「なければならない」
436 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 12:50:23 ] >>432 どっちかというと文字列から Encoding の特定の定数を決定する処理の負担のほうが嫌気されるのでは 毎回いちいち探させるくらいなら定数として最初から書いておいたほうがプログラム的に親切 .encode('utf8') や encode('sjis') って動作したっけ、encode('EUC-JP-MS') って使えるのか、とか悩む必要もなし 定数だった場合は間違ってれば Ruby が uninitialized constant で教えてくれる
437 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 12:52:46 ] 初心者スレのだが、これくらい書けば問題ないのかも if str.respond_to?(:force_encoding) && defined?(::Encoding::ASCII_8BIT) && str.respond_to?(:encode) && str.respond_to?(:encoding) && defined?(::Encoding::UTF_8) && str.class.new.encode(::Encoding::UTF_8).encoding == ::Encoding::UTF_8 && (_ = str.class.new.encode(::Encoding::UTF_8).force_encoding(::Encoding::ASCII_8BIT); _.encoding == ::Encoding::ASCII_8BIT) then str.force_encoding(::Encoding::ASCII_8BIT) end
438 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 13:06:30 ] 「添付ライブラリにEncodingがあるなら」とか 「標準のStringがforce_encodingを持ってるなら」とか そういう指定の仕方ができないんだよね それを唯一担保するのがRubyのメジャーバージョンなんだから仕方ないわ
439 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 13:10:19 ] >>434 >>435 RailsとかtDiaryとかと混ぜた時に死にたいなら定義してもいいけど。
440 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 13:11:34 ] >>438 MRI以外のこと忘れてない?
441 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 13:17:37 ] >>440 respond_to? を通っても別のどっかで齟齬の例外が出てそもそも動かないことが逆に期待されるから別にいいじゃん(素 バージョン併用スクリプトの書き方のガイドは特急で作ったほうがいいかも
442 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 13:20:58 ] >>438 だからそれが>>428 だろ
443 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 13:23:31 ] っ class Encoding; end
444 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 13:25:17 ] str.force_encoding(::Encoding::ASCII_8BIT) rescue str よし解決 皆の者我に続け
445 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 13:26:17 ] 1.9は文字コード面では完全に失敗だな。 2.0までにPython同様内部文字コードに変換する作りにしといてね。
446 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 13:38:28 ] String そのものにエンコーディング機能のメソッドを新たに持たせたのがめんどくささの原因な気もする String のエンコーディング関連は Encode のメソッドからしか操作参照できないようにしておけばあるいは
447 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 13:58:21 ] >>445 Pythonのucs2/ucs4絡みとかUnicodeString絡みとか見ておいで
448 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 14:13:51 ] >>446 いや、1.8互換ってのが茨の道なんだと思うけど。 > String のエンコーディング関連は Encode のメソッドからしか操作参照できないようにしておけばあるいは 他の言語ならそうしたかもね。
449 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 17:09:38 ] だれだよ UTF-8 とか中途半端なの作ったやつ はじめから 32bit ぐらいの幅にして、世の中の全種類の文字を一意に判定、 かつ少しぐらい文字が増えてもいいようなテーブル作っておけばよかったんだ
450 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 17:10:03 ] つ UCS-4
451 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 17:15:27 ] 中途半端感がひどいのはUTF-8じゃなくてUTF-16だな
452 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 17:15:34 ] >>449 UTF-8はUnicodeのエンコーディング方法の1つでしかない。
453 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 17:21:34 ] UTF-8はこれでもずいぶんマシなんだよ UTF-8以外のUnicodeや広域文字実装を実質全く見ないのがその証拠 どんなに理想的でも、利用されないと意味がない そういう意味で大変戦略的な「とてもマシ」な代物
454 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 17:23:16 ] どこの世界の話ですか
455 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 17:23:18 ] >>448 「1.8」なんて存在しないだろ あるのはオブジェクトがrespondするかどうかだろ
456 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 17:31:18 ] >>455 まあ、これまでの理屈で言えばそうだな 1.8用や1.9用というバージョン分けの理由はないはず
457 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 17:32:48 ] もう1文字4byteのRubyEncodingを策定しようぜ
458 名前:449 mailto:sage [2009/09/28(月) 17:38:33 ] Unicode と UTF-8 という言葉をほとんど同義に使っていたけど、 もしかして違うの? たしかに UTF-16 とか UTF-32 とか、UCS2 とか UCS4 という単語は聞いたことがあって、 どう違うのかはわかっていなかったけど >>457 はげどう でも ASCII オンリーな環境の時は、だいぶ無駄になっちゃうね
459 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 17:45:44 ] >>458 語弊を恐れず一言で言えば概念と実装
460 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 17:46:37 ] >>458 Unicodeってのは、規格群の総称のような感じで、 UTF-*は文字符号化形式及び文字符号化スキーム UCS-*は符号化文字集合
461 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 17:55:38 ] 世界中のあらゆる文字に文字コードという数字を割り振ったのがUnicode そのUnicodeをバイト列表現する(エンコードする)やり方が何種類かあってそれがUTF-* って理解をしているんだけど
462 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 18:25:10 ] >>449 前に書いた記事を読んでください、わからないところがあれば答えます。 gihyo.jp/dev/serial/01/ruby/0004?page=2 >>459 UnicodeはUTF-8を含むので違う。(ISO 10646はおいておいて) >>460 おおむね正しいんだけど、UCS-2とUCS-4も文字符号化表現なんだよね。 d.hatena.ne.jp/nurse/20090325#1237964260 >>461 基本的に正しい。 世界中の文字を集め、Unicode scalar valueという数字を割り振り、 さらにその他文字を扱うのに必要な規格を定義しているのがUnicode。 その他の規格っていうのは、例えば「だいたいこれとこれは同じ意味の文字」 って処理をするための「Unicode正規化」とか、大文字小文字変換とか。 この辺まで定義しているのがUnicodeの凄いところ。 www.unicode.org/versions/Unicode5.1.0/ 先述の通り、UTF-*だけじゃなくて、UCS-2とUCS-4もバイト列表現するためのやり方。
463 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 18:43:33 ] >>456 じゃあバージョンとか本当はいらないんじゃね?
464 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 18:52:08 ] >>463 スクリプトの実行者はスクリプトが実行されているシステムのこともRubyのことも知っていて スクリプトを適宜修正可能であるというモデルを暗黙に設定してるのは確か “お客様”であるという前提はあまりしてないはず
465 名前:445 mailto:sage [2009/09/28(月) 18:55:19 ] >>447 見た上で言ってるんだが? この点ではPythonは完璧。
466 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 18:59:56 ] >UnicodeはUTF-8を含むので違う 概念は実装を含むと思うけど 仕様と実装のほうがよかった? たとえばRubyと言えばMRIを含む(指す)ように まあ一言なんて所詮はたとえ話みたいなもんだw
467 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 19:04:05 ] >>464 例外出たら自分の環境に合わせて修正してもらえればいいんじゃね、というスタンスではある rescue もいわゆるバージョン差異を埋めるために使うものじゃないわけでさ
468 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 19:04:41 ] >>458 はMatzのコードの世界を読むべき
469 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 20:24:45 ] >>463 バグ報告対応で使います。 >>465 dsas.blog.klab.org/archives/51322951.html この辺とか。 まぁ、言語を実装する側にとってもUCS正規化の方が楽だけどね。 >>466 なんか「抽象」は「具体」を含むと言っているように聞こえるんですが
470 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 21:38:09 ] 今日の名言 概 念 は 実 装 を 含 む
471 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 22:58:07 ] Rubyを支えるYuguiの自信 「最後にはわたしがいる」 jibun.atmarkit.co.jp/ljibun01/rensai/leader/33/01.html Yuguiさんかっけええええええええ
472 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 23:12:18 ] Yugui△
473 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:51:18 ] yugui さん かっく 足りねえぞおい
474 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:55:22 ] セクシーと言ったほうが喜ぶんじゃまいかい?
475 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:58:04 ] >>473 さんかっけー (ボケだったらスルーしてくれ) しかしいい写真だな
476 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 23:00:55 ] かっけー、のはいいとして、previewとか全然出てないんだけどどうなったんすか?
477 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 23:08:00 ] >>476 RubyWorld conf での議論を受けて、スケジュール切り直し。 後日開発者会議で決定。 RubySpec全パスを目指すみたい。[ruby-core 25707] 上のメールで触れられている開発者会議は10月13日にダイビルで開催。 [ruby-dev:39404][ruby-core:25841]
478 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 00:57:05 ] 裸の王様ごっこはいつ終わるのですか?
479 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 08:16:38 ] >>478 自分の妄想に正面から向き合う勇気を持てよ
480 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 09:23:06 ] >>471 関連記事で気づいたんだが、富田倫生の「パソコン創世記」 @itが連載形式で掲載してたんだな。 全文、青空文庫で読めるわけだが。
481 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 09:56:09 ] コレまじすか 【島根】 プログラミング言語「Ruby」開発者ら3人を松江市名誉市民に ttp://tsushima.2ch.net/test/read.cgi/newsplus/1254271871/
482 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 10:04:43 ] おお、クレヨンしんちゃんなんかと一緒ですな
483 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 15:59:07 ] 島根県マジだな
484 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 16:25:20 ] 負けるな取烏
485 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 19:37:11 ] そして久しぶりにMatzにっきが更新された
486 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 00:02:02 ] こっそりここ見てるんじゃないのか?w
487 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 00:04:42 ] 日記の内容的にそれはないと思うけど。
488 名前:デフォルトの名無しさん [2009/10/01(木) 00:09:23 ] 【島根】 プログラミング言語「Ruby」開発者ら3人を松江市名誉市民に tsushima.2ch.net/test/read.cgi/newsplus/1254271871/
489 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 00:55:13 ] プログラミング言語で村おこしとかすげえな 過疎で悩んでる地域はIT会社の誘致とかしろよ ほとんどオンラインで出来るから場所は関係ないしな
490 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 03:10:02 ] ほとんどオンラインでできるなら会社の社屋は都会にあったほうが便利 これまめちしきな
491 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 03:54:34 ] 家賃
492 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 04:01:39 ] >>491 お前都会でしかネット使ったことないだろ
493 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 04:11:43 ] NTTの支店があるような市でならうまくいく可能性はあるな 田舎は下手すりゃISDNだったりするからある程度都会だったほうがいいのは事実 社員集まれと言ったときにJRの駅がないとか非常に困る
494 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 04:23:10 ] じゃあ間をとって地方都市の中心市街だな。 別に松江でいいじゃん。
495 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 04:34:56 ] だからJRの駅がないと駄目だって言ってんだろ
496 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 05:42:21 ] おまえJRってどういう意味で使ってるの? 旅行でビジネスホテル使ってもかなりブロードバンド引いてあるし 家の中にばっかいないで外に出ろよ
497 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 07:54:32 ] >>496 の考えてる田舎は既にかなり都会である件
498 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 08:25:59 ] >>496 お前こそJRをどういう意味で使ってるんだ 駅だぞ? ブロードバンドが引いてあろうが何だろうが 交通手段が無いところでIT会社が成長するのは難しすぎる
499 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 08:34:10 ] 松江ってJRの駅ないの?
500 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 08:36:45 ] >>499 JRの駅くらいしかない。
501 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 08:38:23 ] 普通に山陰本線だが、どうも>>498 は新幹線とでも言いたいのではないかという気がして仕方がない
502 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 08:46:17 ] 松江厨が空気読めないレスをしております
503 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 09:11:31 ] 松江にJRの駅があるなら 初めから会話が成り立ってないな
504 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 09:19:55 ] 一畑も忘れんなよ
505 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 09:23:21 ] セリーヌの金ピカ自転車に乗ってくるので交通手段の問題はありません
506 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 11:54:31 ] 日本にJRの駅がない県庁所在地はないだろ… と思ったら、那覇があったか。
507 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 13:26:38 ] >>494 確かに>>490 は「都会」とは言ってるが「首都圏」とまでは言ってないからな
508 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 15:56:30 ] ちょっと質問 Ruby1.8 と Ruby1.9 で併用するスクリプトで文字列のエンコーディングの変換をしたいんだけども Ruby1.9 では String#encode を使ったほうがいい? 共通で使えるから Iconv.conv でいいやーとかはダメ?
509 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 17:57:42 ] 隣の机でもメールで会話してるアフォPGも居るから、 距離は微妙だな。 客は大都市圏のほうが多いから、営業と打ち合わせは大都市に事務所無いとコスト掛かるな。
510 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 18:02:18 ] >>508 併用かつ常に同じiconv実装を使える保証があるならIconvでいいと思う。 保証が無くて、CP932やCP51932くらいしか使わないのだったらNKFの方がよい。 どちらでもないなら場合によるかなぁ。
511 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 20:21:07 ] 1.9でYAML.loadしたらハッシュはYAMLに書いた順番通りになりますか?
512 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 20:44:52 ] >>510 そういえば1.8の$KCODEって sはCP932,eはCP51932を期待していいもんなんだろうか なんとなくWindowsは期待していい気がするけど他OSだと微妙な気がしてきた
513 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 11:34:22 ] Ruby1.9 で日本語文字列を inspect するとコンソールのエンコーディングによっては前時代的に表示が崩れるよね Ruby1.8 の時より退化してるような気がしなくもないんだが、なんか超賢い irb の設定とかある?
514 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 11:43:54 ] >>513 $ irb1.9 irb> p "うんこ".encode('UTF-8') "うんこ" irb> p "うんこ".encode('Shift_JIS') "????" irb> p "うんこ".encode('EUC-JP') "????" $ $ irb1.9 -Eutf-8 irb> p "うんこ".encode('UTF-8') "うんこ" irb> p "うんこ".encode('Shift_JIS') "うんこ" irb> p "うんこ".encode('EUC-JP') "うんこ" $stdout の external encoding を irb 内で直接切り替えてもよさそうだが方法がよくわからんかった
515 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 12:57:37 ] 新時代的に日本語文字列はUTF-8しか使わないというのでどうだろうか
516 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 13:09:20 ] defaukt_external の正しそうな使用法を見た気がする irb で実行されたファイル保存なんかが UTF-8 に切り替わる危険性はあるが
517 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 15:51:25 ] $stdin.set_encoding("locale") $stdout.set_encoding("locale", undef: :replace, invalid: :replace) $stderr.set_encoding("locale", undef: :replace, invalid: :replace)
518 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 16:40:11 ] ぎゃー set_encoding なんて組み込みクラスにあるのか メソッド名変えないと
519 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 16:54:49 ] 例外が起こらない begen ... rescue ... end は処理遅いですか? begin ... end で括っただけでやや重いとかそういうことってある?
520 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 17:02:35 ] 初心者スレじゃないんだしまず自分でベンチ取ってみろよw たぶん、その重さが気になる状況ならRuby自体やめろっていう程度だと思う
521 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 17:15:25 ] >>518 自作メソッドが微妙に似た機能で全く同じ名前だと困るよね
522 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 17:17:46 ] あんだば入れるかどうかって何か決まりがあるの?
523 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 17:19:59 ] RubyであえてHigh Performance RubyやEffective Rubyみたいな本を読みたい もう出てたりする?
524 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 17:23:51 ] rubyのメソッド名で単語区切りに入れる 定数(マジックナンバー的な意味での)も同様 camelCaseは使わん
525 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 18:18:06 ] メソッドは小文字でアンダースコア区切り クラス・モジュールはUpperCamel それ以外の定数は大文字でアンダースコア区切り 例外はString()とかInteger()とか
526 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 19:45:08 ] >>523 ホットスポットをCモジュールに切り出せ、以上、で終わってしまうので、 そういう本は出ない。てかEffectiveじゃなくてEfficient?
527 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 19:48:16 ] るびまでパフォーマンスチューニングねたいっぱいやってたじゃん
528 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 19:57:57 ] >>523 アプリケーションレベルでの高速化(キャッシュとか並列化とか)はよく聞くけど Rubyプログラムの高速化はあんまり聞かないなあ。 「Ruby 速い」でぐぐったらるびまの記事とかあったけど、求めるものとは違うかも。 ttp://jp.rubyist.net/magazine/?0022-FasterThanC
529 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 20:54:02 ] ライブラリ名は _ と - か混在してカオス状態
530 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 20:58:29 ] もうだめかもわからんね 5冊も参考書買ったのに
531 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 21:06:03 ] >>529 Rubyの標準添付ライブラリを見てくれていれば - (ハイフン)が標準だということは分かっただろうに・・・ wx_sugar、お前のことだ
532 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 21:42:52 ] 個人的は(C++ みたいに)言語の変数に使える記号のみで ライブラリ名も命名されてる方が一貫性があって好み というわけで、最近書くRubyライブラリ名はみなアンダースコア 区切りに統一した
533 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 21:55:20 ] >>532 頼むからやめてくれ もうこれ以上、require書くときに「ハイフンだっけアンダースコアだっけ」とか悩みたくない
534 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 21:55:56 ] いるよね個人的趣味でデファクトスタンダード破る奴
535 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 21:57:25 ] >>532 まっとうな判断だと思う どうせクラス名・メソッド名になればハイフンは使えないんだし、無意味な脳内変換が必要になるだけ
536 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 22:03:22 ] 統一されていないのが一番厄介なんだよな 空気呼んでくれ
537 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 22:46:53 ] C の #include 同様 require の引数も所詮ファイル名なんだから、どちらでも気にならんな。
538 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 22:57:20 ] 脳味噌が欠乏している人はそんなことでも気になるんだよ
539 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 23:14:43 ] Rails脳だとActiveSupportの自動ロード(*)に毒されているので アンダースコアを使う。 const_missing 時に Foo::BarBaz → foo/bar_baz と変換した 名前で require する機構がある。
540 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 04:57:11 ] いるよね個人的趣味でデファクトスタンダード破る奴
541 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 05:07:53 ] ・ require がハイフンとアンダースコアと空白を同一視すべきだった ・ ActiveSupport はハイフンに変換すべき ・ 必要なのはファイルではなくクラスやモジュールである以上ファイル名に依存するのが糞 ・ マニュアル読まずにライブラリ使おうとすること自体が間違い どれか選ぶよろし
542 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 05:14:43 ] require 'a と書いた時点でディレクトリ走査して 候補を表示するサポートがあってもいいかな、と思うことはちらっとある
543 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 05:29:39 ] 前田さんのところのコーディング規約はハイフンだね ttp://shugo.net/ruby-codeconv/codeconv.html
544 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 05:33:53 ] どれでも良「かった」んだよ その中からRubyはハイフンを選んだわけで 娘を人質にとられてるとかそういう事情があるのでない限り 利便性を捨てる理由がないのならハイフンにするのが無難
545 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 05:57:45 ] 教祖がハイフンと逝ったから、信者の皆さんはハイフンを使わないと地獄に堕ちるだけ。
546 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 07:32:06 ] なんかもう目眩がしてきた all_load_paths-c.yaml
547 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 09:22:01 ] >>535 さんの作るライブラリのクラス名はハイフン区切りなんですねさすがです
548 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 09:40:28 ] アンスコの間違いでは
549 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 09:44:36 ] Ruby歴はけっこう長いんだけど低いレベルで安定しちゃってて 全然進歩がない。それで困ってないといえば困ってないんだけど。 開くたびに違うTIPSや小ネタ表示してくれるサイトとかってないですか?
550 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 09:59:50 ] 困るような問題にぶつかれ 困るような問題が無いならそれでいいじゃないか 以上
551 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 11:33:13 ] >>549 レシピブックをひととおり読んでみるとか
552 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 12:03:33 ] >>551 どのレシピブック?
553 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 14:32:53 ] 初心者スレ見てると、このぐらい簡単だろと回答してみようにも意外ときれいに書けなかったり これ初心者に役立つのか?とは思いつつも盲点をつかれたような回答がついたりと 為になることもままある さっぱりなときも多いけどw それはともかく他人のコード読みまくるのが一番だと思うよ
554 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 14:37:06 ] そこまで労力かけたくないって話だろう
555 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 14:39:55 ] 自分が使うライブラリのコード読むだけでずいぶん効果あるんだけどな それもブラックボックスで困らないというなら、その程度で身の丈に合ってるんじゃね
556 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 14:51:08 ] アンテナ作りたいんですけどhtmlパーサっぽいのないですか ぐちゃぐちゃのhtml渡してもパースエラー吐かずにがんばってくれるのがいいです
557 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 15:07:14 ] ぐぐれ それすらできんのでは成功はない
558 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 16:27:53 ] 最初にLINT噛ませて成形してパーサに喰わせればいいんじゃね。 方言を標準語に直して字句解析すればおk。
559 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 16:49:46 ] そのへんは、firefox (かIE)に渡すのが一番だという結論になってたはず
560 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 23:01:42 ] >>556 htmlsplit >>557 ライブラリに関しては、探しても見つけられない (or 良くないものを見つけて満足してしまう) ことがよくあるので、人に聞くべきだと思う
561 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 23:25:46 ] Ruby 1.9.2 のリリース延期かよ・・・ まあ、分かっちゃいたけど下手したらさらに1年後くらいになりそうだな
562 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 00:39:11 ] リリース延期てなんかあったの?
563 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 00:46:43 ] >>562 延期というかリスケ。[ruby-core:25707] 決まるのは10/13の会合で。[ruby-core:25841]
564 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 14:33:48 ] うんこでもいいから毎年一回だしてほしいなあ
565 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 14:40:58 ] previewとか1.7系みたいなのならいくら出してもかまわないけど 正式版でうんこは臭うからやめてくれ
566 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 14:42:00 ] 正式版でもどうせたいしたことないし リリースが質を高めるモチベーションになってるからさ
567 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 14:43:35 ] matzにっきが再開?
568 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 16:09:14 ] しかし1.9系は1.9.2からが本番だから 1.9.2はなるべく早く出して欲しいなぁ
569 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 16:45:42 ] バージョン番号が1増えたからといってどうかどうにかなるもんでもあんめえ 「それ」はおそらく1.9.1でも充分に行えるはずだし、そうしておくべき あと RUBY_VERSION >= '1.9.0' の問題は公式にコメントなりガイドなりあったほうがええぞ
570 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 16:49:24 ] >>569 ここに書いて解決する可能性は低いと思う
571 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 16:54:56 ] >>569 どうにかなるんだよMerbユーザにとっては 1.9.2を待ってる人は相当多いと思う
572 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 17:20:29 ] 再利用型メソッド上書きにまつわるエトセトラと同じような問題だと思ってる > RUBY_VERSION >= '1.9.0' alias _old_hoge hoge def hoge old = _old_hoge ... end だとまずい、みたいな
573 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 17:25:55 ] まー、 「提供されてるそのまんまのはずの機能を使ってごく素直に記述して“きちんと動作する”のに怒られる」 という点では似ていなくもない
574 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 17:29:01 ] >>569 結局「バージョン番号分岐でもdefined?でもどっちでもいい」って方向で まとまったんじゃなかったけ
575 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 17:31:04 ] rubyなんて1.68で充分だろ
576 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 17:32:05 ] >>569 も>>572 もダメな理由がわからない\(^o^)/
577 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 17:44:28 ] >>574 各々で動作しない場合の理由の例示というのはあってもいいかな、と思う 動作しない場合を踏まえた上で利用するのは全く問題あんめえ defined?(Encoding) は Module::Encoding が include されてると誤爆するから defined?(::Encoding) と書け、とか str.respond.to?(:force_encoding) は ::Encoding の存在を保証しないから defined?(::Encoding) にしとけ、みたいな RUBY_VERSION が駄目な理由は結局明示されなかったが
578 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 17:52:51 ] あー、>>420-のことか
579 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 18:14:40 ] つか、 Ruby 1.9.1 を名乗っておきながら特定の標準ライブラリが動作しないなんてのは スクリプト作者が考慮することじゃない気がしてならない そのプラットフォームで Ruby を使用する利用者側が、各々の環境における代替手段を追記すべき
580 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 19:10:24 ] 現時点で1.9系専用の(文法ではなく)機能を要求するからといってバージョンに依存した判定をすると 例えば1.8系にコンパチの機能がついて要件を満たした時に、無駄に1.9系を要求することになるから微妙だという話じゃなかったっけ あとはMRI以外の実装がバージョン番号と機能が一致しないんじゃないかって話とか そのへんは事情がよくわかんないけど
581 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 19:14:40 ] 現時点では 1.9.1 と 1.8.7 と 1.8.6 しかないのにね 「1.8.8.ではどうなるかわからないだろ」なんてのは今議論されてもそいつが困るだけのはずなのに
582 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 19:31:20 ] RUBY_VERSION のいいとこは、でかい if 文で括れるところだろ 機能 A は存在するが機能 B は存在しない、というような複雑な状況を無視できる 本当に respod_to? と defined? を使っていったら可読性は限界まで下がるぞ
583 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 19:34:01 ] Ruby.has_encoding? みたいなのがあればよかったんでないか
584 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 19:37:35 ] RUBY_VERSIONよりdefined?がいいという理由は 1. >>580 2. 「Encodingが必要だ」という意図が分かりやすい の二つが今まで挙がってたはず 両方とも一長一短あるし、俺はどっちでもいいと思うよ >>582 Encoding関連以外に、if文で分岐しないといけないような機能ってないのでは
585 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 19:45:25 ] Encoding は String クラスと Encoding クラスの両方に影響して なおかつ iconv とかも必要として実装依存だから例外中の例外とも言える でも使用前に返り値が Enumerable かどうか確かめるとかいうのはめんどいぬ
586 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 19:49:18 ] Object#tap 使うたびに Object.new.respond_to?(:tap) を調べるのはやだなあ
587 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 19:56:44 ] tap使ったスクリプト書く度にバージョンチェックするのもいやだぞw そういうのは例外で動作止まるのを期待してノーチェックでいいだろ
588 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 20:00:40 ] >>586 tap程度なら、ない環境を検出したら自前の定義を提供すればいい。
589 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 20:05:28 ] if RUBY_VERSION >= '1.9.0' require '1.9/main.rb' else require '1.8/main.rb' end これが許されざるよなのが辛い 実質2バージョンを並行管理しないといけないのも辛いが
590 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 20:11:40 ] 実際問題としては「Ruby1.9ぽく書きたい」のでない限り、併用スクリプトでは問題にならないはず 文字列とIOだけは別途処理しないとどうにもならないが
591 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 08:16:44 ] >>583 だね。どんなフューチャーがサポートされてるか、って観点だとそれが一番きれい。 当面はそういうgemを作って凌ぐとして、 次の1.9系、1.8系リリースで入らんもんかね。
592 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 08:33:16 ] >>591 今入っても、もう遅いだろう 動く環境と動かない環境があるのでは…… というか、もし1.9.1の時点でhas_encoding?が入っていたとしても そのメソッドは1.8.0や1.6.xでは動かないのだから どちらにしても、あまり役に立たないと思う
593 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 08:34:17 ] フューチャーだから未来のために入れるんじゃないのか
594 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 08:52:20 ] フィーチャー?
595 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 08:53:06 ] ときどき futuring 誰それ って書いてあるのを見るとかわいそうに思う。
596 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 08:53:17 ] バージョンチェックはアフォっぽい所は有るな。 バージョンチェック部分の記述だけで10バージョンぐらい比較してたりしてw
597 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 08:58:18 ] いまさらC言語が30年前に解決している問題で揉めるなんて…
598 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 09:02:21 ] 「どんな未来がサポートされているか」 なんだかかっこいいな。
599 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 09:03:18 ] autoconf系だと、小さなプログラムをコンパイルして 期待どおりの動作をするか(エラーが出ず、出力も想定どおりか) チェックしてたりするな。
600 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 09:48:45 ] >>599 1.8 と 1.9 ではインストールされるファイルが違うという rubygem は前どっかで見た 面倒だからほとんど行われてないけど まあこのスレの論理で言うとバージョンでの分岐や ライブラリインストール時の環境固定でチェックするなんてことは あってはならないわけだが(w あくまで実行時にすべてがチェックされるべきであり
601 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 10:31:45 ] どっちかってと 「メソッドの存在は一緒だし返り値のクラスも同じなのだが返り値の具体値が 1.9 と 1.8 では違う」 というような場合に、非 RUBY_VERSION 派はどう書くのか知りたい
602 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 10:38:41 ] 具体的には?
603 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 10:45:22 ] ちょっと考えてたんだが、なんだろうね String#inspect あたりは違うかもしれん defind?(::Encoding) の範疇かどうかがちと微妙
604 名前:591 mailto:sage [2009/10/05(月) 11:35:02 ] >>594 あばばばば W-ZERO3から入力したから!!入力補完とバック・トゥ・ザ・フューチャーが悪いんや!!! (顔を真っ赤にしながら) で、gemについては ・どうにかしてある機能が実行環境下で存在するか判定 ・機能の有無をFeature.has?(Synbol)とかそんな感じでチェックできるように なんてgemを作っておいて、機能の有無で処理を切り分けたい側は このgemに依存関係を与えておくと。 とはいえ、俺も文字コード関連のほかにはFiberぐらいしか 嬉しいところが思いつかないけどね。
605 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 11:46:49 ] 動作チェックした環境をコメントに書いとくだけでいいよ
606 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 12:09:36 ] >>602 Class#name。 [1.8] Class.new.name # => "" [1.9] Class.new.name # => nil
607 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 12:37:02 ] 俺も>>584 に同意で、>>601 みたいなケースがあったなら素直にバージョン判定でいいじゃない そこでdefine?使う理由がないし、>>603 三行目はdefine?派の主張ねじまがってないか?w ただライブラリなりアプリなりのユーザが制御する方法を用意すれば 判定方法にこだわる必要なくなるんじゃないかとずっと考えてた # 1.9の場合 require 'hogelib' # 1.8の場合 require 'hogelib/compat-1.8' require 'hogelib' 1.9指定もなにかrequireさせて、単体呼び出しは自動判定というインターフェイスのほうがいいのかな? 「自動判定手段に納得いかないなら手動ないし自作コードで判定しろよ」と言えるようになる requireするファイルの中身は依存コードをモジュール化して切り出す方が理想っぽいけど めんどくさいしフラグ立てておけば十分だろうw COMPAT_1.8 = true
608 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 12:45:45 ] ならsite_ruby/1.8とsite_ruby/1.9.1にインストールしろよ。
609 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 12:57:25 ] >>608 >>455
610 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 14:56:48 ] 1.8は捨てろ。 1.8はもうダメだ。終わった。 1.9で動かないrubyプログラムは捨てろ。書き直せ。
611 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 19:54:36 ] 走れ描け走れ走れ
612 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 19:58:20 ] mswin32でユニコードファイル名扱えるようにしておくれ。
613 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:04:48 ] >>610 最近始めたんだけど、そんなに違うの?
614 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:12:59 ] >>613 文字列の文字エンコードとファイルIOが、互換性保ちつつ書くのがとてもめんどくさいレベル 1.8のほうが普段遣いの範囲では直感的なので、1.8で慣れてから1.9に移行するのがベスト
615 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:17:41 ] そんなにエンコーディング関係にはまるってのは「普段遣い」の範囲が常人とはかけ離れてる説
616 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:19:25 ] >>609 > # 1.8の場合 > require 'hogelib/compat-1.8' こんなマネをするくらいなら、ということだよ。
617 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:21:58 ] なんだか意味不明だけど、1.9でもclass Stringは未だにutf8じゃないってこと? ところでjava, c#とおなじで、文字列用クラスで内部エンコードがutf16のクラスってのはいつ組み込みクラスになるんですか?
618 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:29:13 ] うんにゃ、バイト列+エンコーディング情報 エンコーディング情報を文字列オブジェクトごとに保持してる Shift_JISの文字列 + UTF-8の文字列 はエラー /Shift_JISの日本語/ =~ UTF-8の文字列 もエラー
619 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:42:02 ] >>617 他言語対応には大きく2通りのアプローチがあって、 ・巨大な文字集合を扱える一つの内部表現方式を抱えて 外部表現との入出力は都度変換/逆変換する (内部表現は普通unicode系の何か) ・ある文字コードの取り扱い(文字の区切りとかマッチングとか)を 文字コードごとに用意しておいてそのとき扱ってる文字コードで 処理を切り替える という感じ。 それぞれに一長一短があり、 前者だとJavaやWindows 後者だと主に昔からのUNIXが採用している。 Ruby1.9は後者を採用した。
620 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:16:59 ] 詳しくありがとうございます。 エンコードを持つ方式なんですか。 rubyはもともとregexpが主要機能なんで、内部はutf8で統一の方がいいと思いますけど、なんか事情があるんでしょうね。 それと文字処理するなら、メモリなどから見て非効率でもエンコードを統一しないと出来ませんよ。 処理とはあまり関係ないところについて時間をかけて無駄に脳みそ使いたくないでしょ。
621 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:19:30 ] あともう一つお聞きしたいんですけど、ほぼPOSIX互換の言語はruby以外にありますか? 言語上、ライブラリでスレッドやパイプ、IOを持ってて、POSIXレベルまで充実しているってことです。
622 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:27:54 ] Rubyこそが唯一あなたにふさわしい言語です。 だから他の言語にこないでね。
623 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:33:17 ] >>620 POSIXという単語を知っててCSIを知らないのがよくわからないけど。 ある文字コードでの文字列処理関連のプリミティブな処理を自力で実装して 処理系に教えてやれば、どんどん対応文字コードを増やしていけるのがCSI。 この場合実装のために汗を流す人間と受益者がたいてい一致し、 余所に迷惑をかけることなく目的を達成できたので 昔はこの方法が主流だった。
624 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:36:05 ] あれ? 昔rubyを触ったときにあるブログで聞いたんですけど、rubyは(処理が遅くても)もともともposix互換あたりを目標に作ってたんじゃないですか? 実際現在では、OSという概念が既にハードから分離されてますし・・・・
625 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:38:24 ] 言語の用語として「POSIX互換」なんて用語は知らないんだが。 (UNIX-like OSのシステムコールについてならわかるのだが) 「POSIX互換」てなんのことだか説明してくれ。
626 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:45:36 ] >>623 というよりも、普通にjavaとかjsとか使えるんでどうでもいいですけど。 ただそれらは電卓代わりとかちょっと数値計算(四元数とかほかでサポートがあまりないもの)で使うとなるとちょっと面倒なんで。 もともとCに慣れてるからやはりmaximaとかmathematicaとか構造化言語か純粋OOPに基づいた設計じゃない言語は扱いにくく、あんまりです。 perlも取って付けた無駄が多くてあんまり。
627 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:47:26 ] >>625 言語上、ライブラリでスレッドやパイプ、IOを持ってて、POSIXレベルまで充実しているってことです。 実際現在では、OSという概念が既にハードから分離されてますし・・・・
628 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:48:56 ] >>625 もう少し脳みををやわらかくしたほうがいいですよ。 あなたは未だに「Web 0.91」ですか?w
629 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:52:20 ] 脳味噌がほおむぺえじであばばばばーでふにゃんふにゃんの人がいるようでつね。
630 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:52:33 ] >>627 Rubyはライブラリでスレッドやパイプ、IOを持ってて、POSIXレベルまで充実していてうらやましいな PerlやPythonはスレッドという概念が存在せずプロセス一辺倒だし IPCは全部メッセージングだ しかも作者がUNIX嫌いでWindowsに傾倒してしまっている ここらへんはDebian使いのMatz(Rubyの作者)とは大きな違いだ だから悪いことは言わない。Rubyにしとけ
631 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:03:44 ] >>630 まあ簡単には調べてみたんですけど、やっぱりrubyしかないんですね・・・ あとはjava, dotnetのVMものですけど。 まっつさんはもともとPOSIX(と機能上)互換を目指してライブラリを充実していったという話しなんですけど。 ルビーですけど、個人的にはパイソンのタプル型(イミュータブル型)があれば言うことないと思います。 いま大黒なんとかのPDFを読み返しているんですが、彼の文章は非常に読み難いので他によいガイドというか言語解説レファレンスないですか? ruby-doc.orgも使ってますが日本語がいいです。
632 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:18:30 ] ハチドリ本でいいんじゃないの?
633 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:20:29 ] yugui本はハチドリじゃなかった、キリンだっけ
634 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:30:58 ] 〃´⌒ヽ . , -―― メ/_´⌒ヽ / / ̄ ´ヽ ヽ . / , /// ト. ! 、 丶ヽ l / /(((リ从 リノ)) ' | i l . ヽノ .V l l ,=! l /// ///l l ねんがんのキリン本をてにいれたぞ! l ヾ! ', l ヽ_フ l l | ヽヽヽ // l ヾ≧ , __ , イ〃 li (´`)l {ニ0ニ}、 |_"____ li /l, l└ タl」/l´ `l リヽ/ l l__ ./ |_________| ,/ L__[]っ / / ::::::::/ ヽ、 :: ::: ::: ::::::::::::::::::::::::::::::::: :::::/ lハ ::: : :: :::::::::: ::::::::::::::::::::::::::::: ::::l l /ノリ ::: : :: ::::::::::: ::::::::::::::::::::::::::::: :::| /) / ::: : :: ::::::::: ::::::::::::::::::::::::::::: ::l /イ/| . :. :. .:: : :: :: :::::::: : :::::::::::::::::: / / ||/ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 7l:::::::::::::::::::: i /_,/i!/ Learning Ruby / l:::::::::::::::: l 人 / Michael Fitzgerald / /:::::::::::::::: l / /⌒ヽ ハ,,ハ / /:::::::::::::::: l /il | ) ( ゚ω゚ ) / /:::::::::::::::: ll l i! `ー、\___ n__/_/:::::::::::::::: lヽ l |\. \ /⌒〉::::::::::::::
635 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:48:04 ] >>632-633 rubyは他の言語と文法・リテラルが結構似ていて、突飛なruby独自の概念があるわけではないので 実際は充実したクラスAPIのレファレンスがあればいいんですけど。 もともと他の言語を使えるわけで、下らない解説とか主義思想・小話なんかよりも各APIの典型的な使い方だけでいいですよ。 その点JAVA(英語サイト)の方が勉強しやすいし、習得も早いんじゃないですか。 英語でしたがやっぱりruby-docで我慢します。
636 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:54:07 ] >>635 こういうのを小賢しいって言うんだろうか? doc.okkez.net/
637 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 23:23:09 ] >>629 あばばばばー乙
638 名前:619,623 mailto:sage [2009/10/06(火) 00:07:56 ] 普通に釣りだと思うけどなあ。 具体的に言うと ttp://ja.wikipedia.org/wiki/%E3%83%9C%E3%82%B0%E3%83%80%E3%83%8E%E3%83%95%E4%BA%8B%E4%BB%B6 の劣化コピー。さらにこれの元ネタとされるソーカル事件が1994年だからそこから数えると15年ほど周回遅れと思われる。 おまけのネタ ttp://ja.uncyclomedia.org/wiki/%E3%82%BD%E3%83%BC%E3%82%AB%E3%83%AB%E4%BA%8B%E4%BB%B6 あえてやるならこれぐらいのヒネリは欲しいところ。
639 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 00:27:21 ] いや、別に彼がこのスレ住人の知的誠実さを試しているわけではないので ソーカル事件とは根本的に違うだろう
640 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 03:16:00 ] >>639 だからあえてボグダノフ事件の方を貼ってるのでは
641 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 10:10:12 ] 質問者が誠実でないことだけは明らかだしな。
642 名前:デフォルトの名無しさん [2009/10/06(火) 10:50:06 ] . 1. HTML で検索した結果 1〜10件目 / 約5,040,000,000件 . 2. PHP で検索した結果 1〜10件目 / 約2,970,000,000件 . 3. Java...... で検索した結果 1〜10件目 / 約 835,000,000件 . 4. Forth. で検索した結果 1〜10件目 / 約 323,000,000件 . 5. Ruby.. で検索した結果 1〜10件目 / 約 275,000,000件 . 6. perl..... で検索した結果 1〜10件目 / 約 245,000,000件 . 7. Python... で検索した結果 1〜10件目 / 約 204,000,000件 . 8. pascal... で検索した結果 1〜10件目 / 約 170,000,000件 . 9. Delphi で検索した結果 1〜10件目 / 約 127,000,000件 10. VisualBasic...で検索した結果 1〜10件目 / 約 121,000,000件 11. lisp... で検索した結果 1〜10件目 / 約. 26,700,000件 12. fortran で検索した結果 1〜10件目 / 約. 21,300,000件 13. COBOL で検索した結果 1〜10件目 / 約. 18,500,000件 14. HSP で検索した結果 1〜10件目 / 約. 12,300,000件 15. FreeBasic.. で検索した結果 1〜10件目 / 約 6,320,000件 16. Tcl/Tk. で検索した結果 1〜10件目 / 約 4,940,000件 17. QBasic で検索した結果 1〜10件目 / 約 4,190,000件 18. VisualC.... で検索した結果 1〜10件目 / 約 1,360,000件 19. DarkBASIC. で検索した結果 1〜10件目 / 約 1,320,000件 20. BasicStudio で検索した結果 1〜10件目 / 約 304,000件 21. N88basic. で検索した結果 1〜10件目 / 約 215,000件 22. f-basic で検索した結果 1〜10件目 / 約 109,000件 23. ActiveBasic で検索した結果 1〜10件目 / 約. 89,800件 24. 99BASIC.... で検索した結果 1〜10件目 / 約. 11,500件 3Dprogramming で検索した結果 1〜10件目 / 約794,000件 2Dprogramming で検索した結果 1〜10件目 / 約. 57,400件 intel で検索した結果 1〜10件目 / 約729,000,000件 amd で検索した結果 1〜10件目 / 約355,000,000件
643 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 11:44:53 ] FORTH大健闘じゃんw Chuck Mooreは偉大だわ www.simple-talk.com/content/article.aspx?article=775
644 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 11:50:42 ] たとえばforthは英語の副詞でもあったりするけど、考慮してるのかな。
645 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 11:56:50 ] namespaceが違うとはいえRubyもネット検索しやすい独自の名前にすりゃよかったのに
646 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 12:06:51 ] Rubyはまだマシだろ 一番検索しづらいのはC
647 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 12:14:52 ] いやそれは単純に検索エンジン側の不手際だから 「プログラミング言語のほうのC」「プログラミング言語のほうのRuby」と指定して プログラミング言語のほうの結果だけを返さない検索エンジンのほうが一方的に悪い どうやって実現するのかまでは知らん
648 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 13:05:10 ] 単一ワードで検索する方が悪いだろww
649 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 13:19:31 ] 何に期待して「C」と検索するんだ
650 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 13:31:28 ] Cは知ってても、それだけじゃ困るからだろ
651 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 13:40:00 ] 単語レベルで意味が混ざるIconとかのほうが悲惨じゃなかろうか
652 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 15:07:06 ] Perlみたいに英語の単語にないつづりがいいね
653 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 15:30:49 ] でも本当は、Pearl にしたかったんだよね。
654 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 16:11:52 ] そう 既に Pearl という言語があったんで、仕方なく Perl にしただけ 唯一性の意図があったわけでは全くない 時々勘違いして痛いこと言う人がいるのがたいへん味わい深い
655 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 17:03:48 ] gloria -> pearl -> perl
656 名前:デフォルトの名無しさん [2009/10/07(水) 05:37:29 ] るびまって今どうなってるのかな? 昨夜(おとといの夜)読んでて途中で見れなくなったんだけど、 30時間ちかくたった今もまだ。 頼みの綱のつもりでいた記事あったから、非常に今あせってるw
657 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 05:43:12 ] るびまはマネタイズされてないから時々止まります 鯖代捻出方法の案があれば教えてあげるとみんなよろコンブ
658 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 05:55:23 ] そんな理由かいw せめてブラウザのキャッシュされるようになってれば・・・
659 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 06:02:05 ] あれってなんでだろうね 確かに訂正前の不正確情報が残ると不便だが、 ぶっちゃけそんな事後更新されてるわけでもないだろうに オフラインモードで読めないことのほうが遥かに面倒
660 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 07:51:35 ] 23号までなら緊急避難的にarchive.orgで代用可
661 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 08:44:58 ] ルビィ本とかのアフィでも張って鯖代稼げば? ググルアフィぐらいじゃマイナー過ぎて儲からないだろうけど。
662 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 11:35:54 ] そもそもいくら必要なんだ?ん?
663 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 12:09:35 ] 富豪的サーバ運営というやつですね
664 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 12:12:47 ] 富豪のワリには風呂に入ってないから異様に臭いw
665 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:28:26 ] 自己紹介乙
666 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:29:38 ] 自己紹介乙wwwwwww
667 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:42:35 ] 頭がすこしよわい人は、「相手の心の持ちよう」を想像する能力がなくて、 罵倒の際に「相手が言われていやだと思うこと」ではなく、 「自分が言われていやなこと」をベースに罵倒文句を考えるので 結果として自分自身のコンプレックスを大声で宣伝することになってしまうらしい。 これがいわゆる「馬鹿の罵倒は自己紹介」のメカニズムなんだとか。
668 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:46:56 ] 自己紹介乙wwwwwww
669 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:47:46 ] 全米が噴いた( ´,_ゝ`)プッ
670 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:54:07 ] 連投するから馬鹿がバレバレw
671 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:55:13 ] ジサクジエンバレバレw
672 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:17:32 ] カタカナで書かれると違和感があるね ルビー開発者のまつもと氏を松江名誉市民に www.nikkei.co.jp/news/retto/20091006c6b0601w06.html
673 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 17:01:42 ] ハード障害だそうだ。もうちょい待て。
674 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 17:22:11 ] >>664 は二人の増井氏のことを知らないと分からないネタだな。
675 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 17:17:52 ] 1.9の正規表現で名前つきキャプチャが使えるようになったけど 無名キャプチャと名前つきキャプチャが同時に使用できないのは使いにくいと思う 名前つきキャプチャが使われると、無名キャプチャは無効になってしまう /(1)(2)(3)4/.match "1234" # => #<MatchData "1234" 1:"1" 2:"2" 3:"3"> /(1)(2)(3)(?<four>4)/.match "1234" # => #<MatchData "1234" four:"4"> Perlみたいに同時使用できた方がいいのに >perl -e "'1234' =~ /(1)(2)(3)(?<four>4)/;print qq!$1 $2 $3 $4 $+{four}!" 1 2 3 4 4 よく知らないが PythonもPerlと同じで同時に使用できるっぽい 鬼車はオプション選択でどちらの動作でも可能みたい
676 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 19:25:31 ] それは直した方がよいね
677 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 20:26:58 ] これはひどい
678 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 21:07:34 ] ()が(?:)等価になるのだとしたら、ちょっとうれしいような、まぎらわしいような
679 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 21:56:41 ] しかし名前付キャプチャって、書くときはいいが読むときはなんか死にそうになるような気がする ただでさえ可読性が高いとは言えない正規表現がさらに膨張するわけだし、それなら括弧を一つずつ数えてもいいかなと 直らなくてもいいや
680 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 22:06:14 ] そういえば、Rubyのライセンスって結局どうなるの? ruby-talk見ても、議論してるのは分かるんだけど 最終的にどうなったのか全く分からん そもそもまだ結論が出てない? あと、るりま(新リファレンス)のライセンスも気になる
681 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 22:18:41 ] るりまは CC 3.0 BY ってことで話を進めてるっぽい。 12月が目処だと。
682 名前:デフォルトの名無しさん [2009/10/09(金) 00:04:03 ] 【パソコン/島根】プログラム言語「ルビー」開発者のまつもと氏を松江名誉市民に tsushima.2ch.net/test/read.cgi/newsplus/1254874530/
683 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 13:46:36 ] >>680 何、ruby-talkでやってんの? リンクきぼん
684 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 12:13:20 ] printfは統一感あるけど、regexpは後付けばかりで混沌としてるからruby独自路線でrexpepのフォーマットを再定義して欲しい。 \bとかもそうだけど、とくにperlがgnuのころからあったフォーマットをセンスもなく勝手拡張したせいでもう取り返しがつかないからね。
685 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 12:22:56 ] $なんたら系全廃止してから考える
686 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 12:37:48 ] $:.push("a") とかかなり違和感あるけどね。 javaから見ると、そもそも 1 .+ 2 .* 3 なんかできるのはかなり嫌われるんだけど、そういうのと同じだろうと思う。 $てのはパールとの下位互換として認めて、もう必要な人用ってことで諦めたほうがいいよ。
687 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 14:35:06 ] 名前つきキャプチャは他言語と同じ挙動にして欲しいな ググったら .NET の正規表現も 同時使用できるっぽい どうも、同時使用できるのが主流なような というか、Rubyが異端? >>678 正規表現のどこかに (?<x>) とか入れれば ( ) はキャプチャしなくなるね 念のために 予約語にしておくと /(?<xxx>)/ =~ 'foobar' とかやって ローカル変数 xxx が定義されたり、変更されてしまうのを防げる /(?<end>)/ =~ 'foobar' だとendは予約語なので変数としては定義できずに無視される
688 名前:,,・´∀`・,,)っ-○○○ mailto:sage [2009/10/10(土) 17:05:56 ] >>644 それを言うならRubyはHTMLタグ(ry
689 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 09:27:01 ] 本家をLLVMに〜というのも面白そうだが。 LLVMベース、Snow LeopardのGCDサポート Rubyのコンパイルや並列処理対応、MacRuby最新ベータ登場 www.atmarkit.co.jp/news/200910/08/macruby.html □YARV→LLVM Sansonetti氏は、ネイティブコードへのコンパイル機能がないことと、 GIL(Global Interpreter Lock)の存在によって、マルチコアを生かすような 真の並列処理が難しいことを挙げている。 □並列処理 GCDは多量のタスクをキューに入れ、それを1つずつ取り出してスレッドプールで処理する という処理モデルを抽象化したAPIを提供する。 C/C++/Objective-C向けには、ブロック と呼ぶクロージャ風の独自文法を導入してタスクのキューイングを行う形だったが、 MacRubyではRubyのブロックが使える。 □実行時最適化のJIT(Just-in-Time)と、 事前コンパイルのAOT(Ahead-of-Time)の双方をサポート AppleがGCとBlockをC1Xに提案 www.open-std.org/jtc1/sc22/WG14/www/docs/n1370.pdf
690 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 18:41:20 ] 1.9って、ひょっとして今後おおきな変更はいる?さっきProgramming Ruby 1.9という本を買ってしまったのだが……
691 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 18:47:11 ] 1.9.1は「今後大きな変更を入れないためのリリース」という位置づけ でもある(訳: だからライブラリ作者は将来の変更を心配せず対応を始めろ) ので、ドラスティックな変更は入らないと思う。 # 100年後くらいに2.0が本当に出る段になったらそりゃ変るだろうけど。
692 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 00:07:34 ] やだ…なんか頼もしいレスがついてる…ウホッ
693 名前:デフォルトの名無しさん [2009/10/12(月) 12:04:25 ] 初心者な質問じゃないかと思うのですが、dbiのソースを見ているのですが、いきなりPGconnというオブジェクトが出てきます。 dbiのソースをgrepしても見つかりません。どこに定義があるのかどうやれば分かるでしょうか? dbd-pg-0.3.8/lib/dbd/pg/database.rb: @connection = PGconn.new(hash['host'], hash['port'], こんな感じで急に出てきます。
694 名前:デフォルトの名無しさん [2009/10/12(月) 12:20:05 ] postgresのコネクタだよ lib/ruby以下をgrepしてごらん
695 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 14:31:15 ] >>634 超ウケル!
696 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 14:40:19 ] ふときになった いま rubinius とかどうなってん?
697 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 16:05:20 ] Rubiniusか。LLVMつかって〜とかいわれてもLLVMのビルドだりぃ。
698 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 19:08:24 ] TCPSocketで受信バッファの中身をすべて読み出すメソッドみたいなのってありますか?(HTTPのリクエストの取得でテスト中) readってやると止まってしまいます。eachで"\r\n"を終点に読み出すと大丈夫ですがあまりスマートではないので・・・
699 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 19:15:58 ] オラでプログラミング言語Ruby買ったらPerlのシールが付いてきた。 またまたご冗談を…
700 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 20:39:24 ] >>698 IO#read_nonblock
701 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 21:29:20 ] Ruby on Railsの「えせMVC」の弊害 satoshi.blogs.com/life/2009/10/rails_mvc.html
702 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 21:41:31 ] >>701 考えてやってる人は出来るだけモデル側にロジックを書くから、 問題はRailsやりはじめるまでMVCを知らなかったような人かな。
703 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 23:16:46 ] CoCだから、やろうと思えばなんでも出来るんだし Railsそのものの批判は的外れ的な。書き手の問題だろう。 そもそもruby自体がopen classだからほぼやりたい放題だし。 世界がガチガチのMVCで出来てるならJavaでもC++ででも書けばいい。 問題はそうじゃないことが沢山あるから、Rapid Prototypingとして Railsがもてはやされたのだと思う。まあ、あくまでRapidだから 軌道にのったら捨てられちゃうんだけどね。
704 名前:デフォルトの名無しさん [2009/10/12(月) 23:21:57 ] >>694 ありがとうございます。grepしてみましたが、定義がないように見えます。 この中のどれかなんでしょうか? $ find /usr/local/lib/ruby/ -type f | xargs grep PGconn /usr/local/lib/ruby/site_ruby/1.9.1/dbd/pg/statement.rb: oid = @db.__blob_create(PGconn::INV_WRITE) /usr/local/lib/ruby/site_ruby/1.9.1/dbd/pg/database.rb: @connection = PGconn.new(hash['host'], hash['port'], hash['options'], hash['tty'], /usr/local/lib/ruby/site_ruby/1.9.1/dbd/pg/database.rb: def __blob_create(mode=PGconn::INV_READ) /usr/local/lib/ruby/site_ruby/1.9.1/dbd/pg/database.rb: def __blob_open(oid, mode=PGconn::INV_READ) /usr/local/lib/ruby/site_ruby/1.9.1/dbd/pg/database.rb: blob = @connection.lo_open(oid.to_i, PGconn::INV_READ) /usr/local/lib/ruby/site_ruby/1.9.1/dbd/pg/database.rb: blob = @connection.lo_open(oid.to_i, PGconn::INV_WRITE) /usr/local/lib/ruby/site_ruby/1.9.1/dbd/pg/type.rb: PGconn.escape_bytea(str) /usr/local/lib/ruby/site_ruby/1.9.1/dbd/pg/type.rb: ret = PGconn.unescape_bytea(obj)
705 名前:デフォルトの名無しさん [2009/10/12(月) 23:49:05 ] とりあえず、>>704 の探したソースにはないよ コードを読んでいる環境ってdbi動作しない環境だったりしない? pgのアダプタをgemから入れてごらんよ もしくはPGconnでぐぐってみるとかさ
706 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 03:40:34 ] >>701 元MSの設計者がSmalltalk的MVCを力説し ルビ厨が堕落したWebアプリ的MVCでもって反論するという なんとも変な話になってますなw
707 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 08:37:33 ] 釣りタイトルだけ見て中見ずに喜んでる香具師もいそう。
708 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 08:39:46 ] redmine調子悪い?
709 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 14:41:15 ] >>701 コントローラーにロジックをがしがし書くのはアプリ制作者の問題なのに、 フレームワークに原因を求めようとしてるんだな。 1. 「手持ちの現金の増減」を記録するテーブルに「現金100円の増加」を記録 2. 「売り上げ」を記録するテーブルに「100円の売り上げ」を記録 3. 「在庫の増減」を記録するテーブルに「リンゴ1つ減少」を記録 4. 「経費の計上」を記録するテーブルに「仕入れ値60円の経費計上」を記録 これもめちゃくちゃw なんで売った時点で仕入れデータを計上するんだよ 商品在庫に至っては会計と直接関係ないし。 この人、なんでも問題をごちゃまぜにする人なんだな。
710 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 14:44:38 ] MVCにこだわるヤツ程能書きばっか垂れて仕事ができないイメージがある
711 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 14:46:02 ] 使えないコードをガシガシ書くことを仕事と称する奴もいる
712 名前:デフォルトの名無しさん [2009/10/13(火) 15:02:07 ] Windows>>>>>>>>>>>>>>>>>>>>Ruby 何とも残酷な結果が出てしまったな
713 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 16:16:21 ] >>712 何から?
714 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 16:39:35 ] こりゃ確かにゲットーだw 徒党組んで声だけでかい馬鹿の集まり=ギーク(笑
715 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 19:37:53 ] えせMVCについてそろそろ一言言っておくか d.hatena.ne.jp/higayasuo/20091013/1255408723 ひがさんも加わりました
716 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:15:12 ] つーか、MVCの概念を完全に理解してる人っているの? なんかどのサイトの説明見ても、微妙に違う気がする。 MMVCとPMVCの違いもよく分からんし、そもそも 今の言語ってどれもGUIと入力部分が結びついてるから ViewとControllerを完全に分離出来ないし
717 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:45:11 ] >>715 それのServiceってのはRoRの機能? それともデザパタの用語?
718 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:46:52 ] > 今の言語ってどれもGUIと入力部分が結びついてるから > ViewとControllerを完全に分離出来ないし 意味わからん
719 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:48:01 ] GUIパーツがデータコンテナ兼ねてるから 分離付加ってことなら意味わかるが
720 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 23:44:08 ] >>718 ああ、馬鹿なんですね
721 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 00:53:55 ] >>720 そうかもね
722 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 01:01:57 ] 馬鹿にしない〜でよ
723 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 01:04:28 ] 意図を伝えきれずに捨て台詞吐いて逃亡ってのが一番みっともないパターンだな
724 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 01:41:57 ] 自己紹介しなくていいよ
725 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 01:46:55 ] MVC2でしか仕事したことないJava厨か? こういう馬鹿どもが基幹系のリプレースして COBOLどころじゃないスパゲッティを残すんだろう
726 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 01:51:57 ] ttp://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/39480
727 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 02:01:49 ] >>715 これが正しかったらRubyは完璧じゃないかwww
728 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 03:08:56 ] >MMVCとPMVCの違いもよく分からん とかいってる人の台詞が >今の言語ってどれもGUIと入力部分が結びついてるから >ViewとControllerを完全に分離出来ないし なんだからよくわかってないだけでしょ。 VBや初期のSmalltalkみたいにデフォルトのGUI系APIと言語のコンセプトが 密接に絡みついてるとかならともかく普通はGUIと言語は独立なわけだし OSとかが標準として提供するGUIのコンポーネントで見た目と入力部分が云々、 と読み替えてあげても入力イベントに対するリアクションとかが ViewであるGUIコンポーネント上に取り込まれることがある、程度の指摘にしかならないし。
729 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 09:02:54 ] モデルの実装の中で、他のテーブルのモデルをいじるのは、いつも気持ち悪い。 複数テーブルのデータをいじる場合は、ActiveRecordのモデルの上に更にモデルを作るっていうのは賛成だけど、やったことがない。
730 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 09:18:46 ] ん? だから、その複合的なクラスをモデルと呼べって話じゃないのか?
731 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 11:19:19 ] 呼べ、っていうかモデルに属するってことかな C -> Logic -> M でロジックはモデルに属する、と
732 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 11:23:43 ] >>728 ああ、やっぱり馬鹿だったんだねw
733 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 12:04:51 ] rails厨はhelperでも使ってろよ
734 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 12:10:49 ] >>728 初期のSmalltalkと今のSmalltalkの違いが分からないので教えてください。
735 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 12:12:30 ] >>728 お前本当に馬鹿なんじゃないか? >ViewであるGUIコンポーネント上に取り込まれることがある、程度の指摘にしかならないし。 それで十分結びつきが強いことの証明になってるじゃん 自分で何を言ってるかさえ理解できてないのか・・・
736 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 13:07:32 ] 記事の反響はかなり大きかったみたいで さっそくRals捨ててASP.NETに乗り換えるところが出始めてるみたいだな。
737 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 13:11:01 ] >>736 あほか
738 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 14:34:24 ] >>735 Viewに取り込まれる程度のイベントが本当に分割して 管理しなきゃいけないものなのかって話でしょ。 インプットボックス上でキーボード上の「1」を押したとして インプットボックス上に「1」が表示されるぐらいまでは 今時のコンポーネントは普通に行うけどそれをもって 結びつきが強いとか言ったらアホなわけで。
739 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 15:20:23 ] >>738 はぁ?こりゃ真性のキチガイだな >Viewに取り込まれる程度のイベントが本当に分割して >管理しなきゃいけないものなのかって話でしょ。 この発言でお前がMVCを全く理解してないが分かったわ >今時のコンポーネントは普通に行うけどそれをもって >結びつきが強いとか言ったらアホなわけで。 これでさらに日本語さえ理解できてないレベルの馬鹿だと はっきり分かった 今時のコンポーネントが普通に行っているからといって それが結びつきの強さと何の関係がある? 今時も何も関係なく、結びつきが強いという事実がそこにあるだけ 自分の間違いを指摘されたからといってファビョッちゃった典型例だな
740 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 15:22:50 ] Rails厨は巣に帰ってね
741 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 15:23:53 ] っていうか >インプットボックス上でキーボード上の「1」を押したとして >インプットボックス上に「1」が表示されるぐらいまでは こんな事書いてる時点でこいつ何も分かってない気がする
742 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 15:27:12 ] >>738 えーと、初期のSmalltalkと今のSmalltalkの違いは何ですかね結局
743 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 15:40:37 ] >>739 間違ってるのはあっちだが、よりファビョってるのはお前だな。どういうわけか。
744 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 15:43:54 ] >>743 自作自演乙っす 不利な状況になったら他人の振りっすか?www
745 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 16:04:49 ] きも
746 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 16:10:57 ] >>744 > 不利な状況になったら他人の振りっすか?www そんなに面白いダジャレじゃないだろこれ。
747 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 16:12:08 ] ワロスw
748 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 16:35:25 ] >>742 SELFからMorphicが入ってくる以前と以後じゃね この辺でコントローラに期待される仕事ぶりが変化してるし
749 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 17:20:08 ] よそのスレでやれ
750 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 19:54:06 ] >>748 コントローラそんなに変わってるか? それよりモデルの方が変わってるような
751 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 19:59:05 ] 火消しよろ Ruby on RailsのMVCは「えせMVC」? - スラッシュドット・ジャパン slashdot.jp/developers/09/10/14/085237.shtml
752 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 21:09:47 ] スラドjは、なんかどうでもいいネタほど記事にするようになってきたなぁ。
753 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 21:20:18 ] RailsのMVCの分けかたがおかしいんだろ Djangoを見習えば解決
754 名前:721 mailto:sage [2009/10/14(水) 23:20:25 ] 複数テーブルの操作が気持ち悪いってことは、 トランザクションを知らないか使ったことないってことか? それでモデルを論じるのはどうかと思うぞ GUIがなんとかってのは結局なにいってるんだがさっぱり プログラムソースだせよ。短いのでいいからさ。 >>716 で「今の言語〜」とあるが、そもそもRubyのGUIってなんだよ。 RailsとMVCが話の流れなのにRuby/Tkってことはないだろうな。 ソース出せないでレスいらないから ちなみに>>721 以降のレスはこれが初めてな
755 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 23:38:53 ] >>748 今のSmalltalkってったらVisualWorksだろjk Squeakしかしらんのかね
756 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 00:23:31 ] >>755 余計に別物じゃんw シンコムは黙って勉強会の場所提供だけしてりゃあいいんだよ!!
757 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 00:59:53 ] >>754 ソースとか関係ないだろ馬鹿 お前の理解力の無さを他人のせいにするな そもそも意味がわかんねーならレスしなくていいから
758 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 01:00:35 ] VisualWorksのMVCにおけるMはアプリケーションモデルであってドメインモデルではない つまりARはMVCのMではない これ豆な
759 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 01:05:52 ] >>758 最近のソースだとちゃんとアプリケーションモデルと ドメインモデルに分けて書いてるみたいだぜ それ以前はプラガブルで、さらに以前は 全部詰め込んだ単一のモデルだったみたいだが
760 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 01:06:52 ] >>754 つーか、わざわざ終わった話を蒸し返すのはよせ それともわざと荒らしたいのか?
761 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 01:07:20 ] またRuby暴威の薬が切れたのか あまりにもおかしいからすぐ分かるな
762 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 01:10:28 ] >>759 だからドメインモデルはMVCのMじゃないし、MVCとは関係ないってこと 同じくARはMVCのMじゃないし、MVCとは関係ないってこと
763 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 01:17:16 ] >>762 あーはいはい、プレゼンテーションモデルってやつでしょ? 違うかな、俺も正直その辺の理解が曖昧だ
764 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 01:22:09 ] >>763 そう VisualWorksではアプリケーションモデルと呼んでいて、そういう名前のクラスも ライブラリに含まれてるが、一般的な認識としてはプレゼンテーションモデルと 呼んだ方がふさわしい。MVCはMも含めてプレゼンテーションレイヤのパターン satoshiはそこをわかってない。やつの理解こそえせMVCなんだよ
765 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 02:18:08 ] アプリケーションモデル、ドメインモデルという言葉が出てきたけど、 いわゆるデータベースのテーブルのエンティティクラスは、どちら? このふたつの言葉は Smalltalk から出てきたようだけど、 「web + DB アプリではどうなるか」と置き換えようとするのがそもそもナンセンスなのかな
766 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 02:25:57 ] なんで全部クラスにしなきゃあかんの ビジネスロジックにオブジェクト指向なんか不要
767 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 04:24:48 ] >>765 エンティティクラスというのがDBのレコードの写像程度で賢いインターフェースを持っていない クラスのことなのであれば、どっちでもない。 初期のMVCの際の問題点として、M相当のオブジェクトが ただのデータストア相当になっててあまり賢くない、というものがあって RailsのARで今モデルを作るときにはARのクラス上に実装するような処理も 全部Controllerに書いてて結果として見通しが悪かった、という経緯がある。 加えてView側で発生したイベントを何から何までController上で捌いてたりすると より寒いことになりがちだったと。 で、その後View側でControllerとのメッセージのインターフェースを考えたときに、 View側として本当にController側に伝えたいイベント以外はView側で隠蔽というか 内々に処理するようになり、ModelについてもModel内で閉じるような処理は Model中でやるようになったので相対的にController側の責務は減っていった、という流れ。
768 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 05:37:13 ] RubyKaigi 2009 Sessions(1st day) www.nicovideo.jp/mylist/14722636 RubyKaigi 2009 Sessions(2nd day) www.nicovideo.jp/mylist/14733712
769 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 23:18:05 ] 文字コードのエラーは分かりづらいのぅ
770 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 15:39:54 ] Matz教授 誕生 itpro.nikkeibp.co.jp/article/NEWS/20091016/338915/
771 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 15:41:15 ] 第8回日本イノベーター大賞にRubyのまつもとゆきひろ氏 itpro.nikkeibp.co.jp/article/NEWS/20091015/338868/
772 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 15:46:24 ] Rubyプログラミング講座受けてぇ
773 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 16:32:56 ] MITみたいにWEBで流したりしないのかな
774 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 19:09:00 ] Rackミドルウェアのコンテストが開催中 (参加賞あり) ttp://route477.net/d/?date=20091016
775 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 19:23:41 ] 島根とくりゃ来年は鳥取大学だよな?
776 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 19:26:12 ] あー俺も小さいころは架空の県とか大学とか作って遊んだよ 懐かしいなあ
777 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 22:32:59 ] blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/46455 blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/46456 この流れで、はじめてML見ててわらったよw
778 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 22:45:34 ] Rails始めようと思ってScaffoldまでしたんだけどわけワカメで とりあえずRubyから始めることにした 変数宣言いらんわ、初期化いらんわで気持ち悪い言語だ・・・
779 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 23:03:16 ] 自動でやってくれてるんだよ 宣言や初期化が無いわけじゃない
780 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 23:05:38 ] Ruby が気持ち悪いなら Rails のほうは「徹底して気持ち悪い」と思う…
781 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 23:06:25 ] 合わないと思うなら使わないのが吉
782 名前:778 mailto:sage [2009/10/16(金) 23:11:14 ] シュミグラマでC系しかやったことないんだけど 世間一般ではこういう仕様が喜ばれるのか・・・ 俺みたいに名前付けが苦手だと苦労しそうな仕様だ
783 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 23:13:52 ] 変数宣言嫌いでVBやめたおれはどうすれば
784 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 23:17:37 ] Rubyのライブラリですら、アホみたいなtypoが放置されてきたりしたことを考えれば、 あなたの不安は間違ってはないよ 言語によって、どう楽をするかではなく、どうがんばるかなんだよ
785 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 23:18:24 ] 今じゃC#ですら var n = 3.14; みたいになりつつあるからな。Rubyだけが特別変態仕様ってこともない。
786 名前:778 mailto:sage [2009/10/16(金) 23:23:45 ] >>785 普段はC#メインで使ってるけどC#のそれは宣言と初期化を一行にしてるだけで Rubyみたいに明示しないのとは全然ちがうと思う まあ、先走ってRubyとRailsの本4冊も買っちゃったから何か作れるレベルまでは やってみようと思うけど
787 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 23:27:59 ] >>786 =
788 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 23:33:54 ] typoなのか区別できないからな
789 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 23:35:54 ] 宣言させるだけさせてtypo素通しな言語よりマシだ おまえのことだよjavascript typoするとグローバル変数として収まるとかもうね
790 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 23:53:37 ] 〜〜よりマシとか言い出す言語にまで成り下がったのかい
791 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 00:00:17 ] > 言語によって、どう楽をするかではなく、どうがんばるかなんだよ 修造かよ
792 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 00:01:23 ] >>786 Rubyも明示してますよ
793 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 00:36:54 ] ウィーッス ∧_∧∩ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ (´∀`*// < RUby買ってきたぞーい ⊂二 / \_________ | ) / 【ひろゆき】/  ̄) ( <⌒<.< >/
794 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 01:08:20 ] >>785 やっぱ型推論と動的型付けの区別つかないやつって多いんだろうな。
795 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 01:33:01 ] Rubyistはアホだと思われるからお前は黙れ
796 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 06:06:00 ] >>787 で終了なのだが
797 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 06:16:51 ] 結局のところjavascriptと同じくらい糞ってことなんだね
798 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 10:04:55 ] さすがにjavascriptよりはマシじゃね?
799 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 10:05:25 ] いやそんな普通のレスされても
800 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 10:11:21 ] 宣言ないと書きにくい読みにくいって人は、コメントでがりがり書いておけばいいんじゃないか? って、そうじゃないのか。 >>786 > 俺みたいに名前付けが苦手だと苦労しそうな仕様だ この人のコードはとにかくスコープが広すぎるんじゃないかと
801 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 10:20:41 ] >>794 言語自体に興味がある人以外は、 表層的な文法と動作しか気にしないからねぇ。
802 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 10:29:16 ] それでいいんだよ そういうのを一般ユーザーが気にしないで使えるのがいい言語仕様 問題はその知識で深部仕様に突っかかってくることだが
803 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 10:30:20 ] つまんねー流れ
804 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 10:42:35 ] typoの報告を見るたびに、恐ろしい言語だなと思わずにいられないのだが。 Rubyのいい面でもあるが、そうでない面でもあるでしょ
805 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:01:35 ] ところで、1.9.2のリリースは結局いつになったの? 延期になった事が決まっただけで、具体的な予定は無いの?
806 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:03:56 ] >>805 ないです。
807 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:07:59 ] 我々は―― ただ、粛々と―― 1.9.1対応を進めるのみ――
808 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:09:26 ] >>807 RUBY_VERSIONで比較すると涎たらしながら否定して射精する人の対策はどうなりましたか
809 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:14:36 ] >>808 RUBY_VERSION で 1.9 かどうか比較して駄目な場合の例がさっぱし出てこないから許可
810 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:18:31 ] >>806 ないのか・・・こりゃずるずるいきそうなパターンだなぁ
811 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 11:20:49 ] てか、1.9.2のためにしなければらないことがさー
812 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:10:58 ] >>804 typoを防ぐための仕組みがあればいいなあとは思う 現状だと -w オプションなしでは、まともに見つけられないし でもRubyの良いところを残しつつ、typoを防げる仕組みなんてあるの?
813 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:16:23 ] >>809 >>584
814 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:19:35 ] 射精したくてもできない件
815 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:21:19 ] >>812 防ぐわけではないけど、変数の名前と使用回数の一覧が出せたらいいなぁとは思う
816 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:22:06 ] >>812 perlのuse strict; my = …; みたいの入れればいいんじゃね?
817 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:22:15 ] >でもRubyの良いところを残しつつ、typoを防げる仕組みなんてあるの? 誰がそんなものあると言ってんだ?
818 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:23:07 ] 真にマジレスすると、そんな状態のスクリプトを通すテストがヘボい
819 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:27:42 ] テストがtypoしてたという話はあまり聞かないな あるんだろうけどさ テストは通ったけどtypo残ってたというのは恥ずかしいの
820 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:29:56 ] >>814 closed stream兄貴オッスオッス
821 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:42:37 ] >>816 Rubyでそれを入れるとすると 1. strict メソッドを呼ぶ 2. そのファイル内で、インスタンス変数・クラス変数が未定義のまま参照されたら 警告ではなく例外を出す という感じになるのかな
822 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:45:46 ] use_foo_process if @foo 涙目
823 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 12:47:23 ] そういや、未定義のインスタンス変数が nil 返すのはなんで? それとは対照的に未定義のクラス変数が例外出すのはなんで?
824 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 15:25:59 ] 仕様です
825 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 23:58:05 ] 我らの武器は三つ! オブジェクト指向! ガーベジコレクション! 教祖への妄信! それから素敵な赤い色! ……テンポ悪いな。
826 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 00:04:30 ] タダ−ン!! ... nobody expects the Spanish Inquisition!
827 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 00:08:55 ] なぜ唐突にそんなおっホイねたをw
828 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 02:14:49 ] 元ネタ知らないのに大笑いしてしまった
829 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 02:34:57 ] モンティパイソンは"Communist Quiz"も応用が利くよね。 マルクス => RMS レーニン => ケイ チェ => PG 毛沢東 => Matz とかでサッカーネタ => M$ APIネタ にすればいろいろ遊べそう。
830 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 03:22:40 ] ゲートから12人のYuguiさんが一斉に出馬、 先頭YuguiさんYuguiさん、一馬身遅れてYuguiさん、続いてYuguiさん、 追い上げるYuguiさん、とかそういう
831 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 14:51:46 ] ひげの山男にとって2ちゃんの言葉は難しすぎるらしい
832 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 22:07:25 ] Yuguiさんって付き合ってる人いるの?
833 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 22:14:44 ] >>832 Audley
834 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 22:18:57 ] Yuguiでググったらでてきたけど、この人? twitter.com/yugui
835 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 22:26:51 ] >>834 聞かなきゃわからないってことはお前ここは初めてか?力抜けよ
836 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 22:27:11 ] yes
837 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 22:28:49 ] >>834 そのお方。 1.9 系リリースマネージャ(*1)。 Ruby 界のロッテンマイヤーさん(*2) *1) jibun.atmarkit.co.jp/ljibun01/rensai/leader/33/01.html *2) yugui.jp/articles/766
838 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 23:02:47 ] 女だったのか。 ネカマだと思ってた。
839 名前:デフォルトの名無しさん [2009/10/19(月) 23:06:16 ] 生物学的には男
840 名前:デフォルトの名無しさん [2009/10/19(月) 23:21:01 ] オカマだよ
841 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 23:22:12 ] MtF-TSってプロフィールに書いてるよね。
842 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 23:23:50 ] まあ、気持ち悪くてもがまんして下さい。
843 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 23:49:07 ] やっと>>833 の意味がわかったわw
844 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 00:24:23 ] MtF-TSなので男とも女ともオカマとも言い難い 「MtF-TSです」としか言えない
845 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 00:30:05 ] おれは性的にはヘテロだけど、他の面でマイノリティで不自由な思いしているので、なんか同情する。
846 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 00:38:45 ] yuguiさんを称えるときに「抱かれてもいい」と書くべきか「掘られてもいい」と書くべきかはたまに悩む