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


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

Rubyについて Part 40



1 名前:デフォルトの名無しさん [2010/04/26(月) 11:16:19 ]
オブジェクト指向スクリプト言語Rubyについて扱うスレッドです。
お前らケンカすんな。

Ruby Home Page
www.ruby-lang.org/ja/

= 前スレ
Rubyについて Part 39
pc12.2ch.net/test/read.cgi/tech/1265467681/

過去スレ・関連スレは >>2-

2 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 11:17:53 ]
Rubyリファレンスマニュアル刷新計画
doc.loveruby.net/
ライブラリ一覧
doc.loveruby.net/refm/api/

RubyExtensionProgrammingGuide
ttp://i.loveruby.net/w/RubyExtensionProgrammingGuide.html
Ruby Hacking Guide
ttp://i.loveruby.net/ja/rhg/

よくわかるにっき
ttp://www.rubyist.net/~matz/20061107.html#p03
ttp://www.rubyist.net/~matz/20061117.html#p02
ttp://www.rubyist.net/~matz/20070104.html#p03
ttp://www.rubyist.net/~matz/20070112.html#p04
ttp://www.rubyist.net/~matz/20070208.html#p04
可視性メモ
ttp://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/30107
ttp://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/30275
YARV without 1.9
ttp://www.rubyist.net/~matz/20070215.html#p01
ttp://www.atdot.net/~ko1/diary/200702.html#d22
ttp://i.loveruby.net/d/20070223.html#p01
JSON
ttp://json.rubyforge.org/
ttp://webos-goodies.jp/archives/51019710.html
ttp://webos-goodies.jp/archives/51071565.html
YAML
ttp://www.ruby-lang.org/ja/man/?cmd=view;name=YAML
ttp://jp.rubyist.net/magazine/?0009-YAML
ttp://www.namikilab.tuat.ac.jp/~sasada/prog/yaml.html

3 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 11:18:34 ]
Ruby/Gtk+
ttp://www.unixuser.org/~haruyama/software/goRua/
ttp://takeposo.sakura.ne.jp/windows/environment/rubygtk.html
ttp://ruby-gnome.sourceforge.net/
ttp://ruby-gnome.sourceforge.net/programming/intro.html
ttp://ruby-gnome2.sourceforge.jp/
ttp://psux1.kek.jp/thitoshi/ruby/gtk/
ttp://www.rubycgi.org/ruby_gtk_book/
ttp://ruby.gfd-dennou.org/products/cygwin/index-j.html
ttp://www.magicianmaster.jp/tdiary/?date=20040912

Ruby on Rails
pc11.2ch.net/test/read.cgi/tech/1191381506/
ttp://jp.rubyist.net/magazine/?0004-RubyOnRails
ttp://www.onlamp.com/pub/a/onlamp/2005/06/09/rails_ajax.html
ttp://kyotosanga.com/gaku/archives/2006/01/ruby_on_rails_a.html
ttp://blog.hacklife.net/archives/50190377.html
ttp://www.metadata.co.jp/web20/ohba/060718_Rails/
ttp://japan.cnet.com/news/ent/story/0,2000056022,20089986,00.htm
ttp://japan.cnet.com/interview/story/0,2000055954,20094959,00.htm
ttp://journal.mycom.co.jp/articles/2006/07/31/radrails/
ttp://www.atmarkit.co.jp/fjava/column/andoh/andoh29.html
ttp://www.atmarkit.co.jp/fjava/column/andoh/andoh30.html
ttp://www-06.ibm.com/jp/developerworks/linux/050708/j_l-rubyrails.html
ttp://itpro.nikkeibp.co.jp/article/COLUMN/20060209/228940/
ttp://itpro.nikkeibp.co.jp/article/COLUMN/20060424/236113/

4 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 11:20:46 ]
      ,―ヽ_(((((_、―
   ,/  ノ       ヽ  ~\
  /   ノ   IPA    ヽ   ~\
/   ノ           ヽ、  `ヽ
|    ノ / ̄\   / ̄~ヽ ヽ    i
|   ノ              |  ノ
\  |  <●>  <●>  (  )
 \ |      | |       i /
    |      /  ヽ       レ
   i     (●_●)      /  
    i、    ,-――-、   ・ /
    i、  <(EEEEE)> ∵/    >>1 スレ立て乙ピョん☆
      i、  \   ./  /
       \   ーー   ,ノ       
  ,,.....イ.ヽヽ、ー-―一ノ゙-、.
  :   |  '; \_____ ノ.| ヽ i
      |  \/゙(__)\,|  i |

5 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 11:20:55 ]
関連スレ

初心者スレ:
ttp://pc12.2ch.net/test/read.cgi/tech/1269233796/
Ruby1.9スレ:
ttp://pc12.2ch.net/test/read.cgi/tech/1201603546/
アンチスレ:
ttp://pc12.2ch.net/test/read.cgi/tech/1249737531/

GUIスレ:
ttp://pc12.2ch.net/test/read.cgi/tech/1269609576/
Windowsスレ:
ttp://pc12.2ch.net/test/read.cgi/tech/1155031689/
Railsスレ:
ttp://pc11.2ch.net/test/read.cgi/php/1266563593/


6 名前:デフォルトの名無しさん mailto:sage [2010/04/26(月) 11:22:01 ]
 ○  >>1 乙 もうお前に用はない 
 く|)へ
  〉   ヽ○ノ
 ̄ ̄7  ヘ/
  /   ノ
  |
 /
 |


7 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 08:22:09 ]
体が目当てだったのね

8 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 14:20:16 ]
IronRuby1.0のおはなし

button01 = System::Windows::Forms::Button.new()
button01.Name = "button01"

って感じでボタンを定義してやって
ボタンを押したときに

puts sender.name + "押した!\n" #=> button01ツ可淞つオツつスツ!
puts "button01" + "押した!\n" #=> button01押した!
puts sender.name.chomp + "押した!\n" #=> button01押した!
puts sender.name == "button01" #=> ture

って感じになるんだよな
日本語については、なんか使いずらそうだな

9 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 14:29:45 ]
よくわからないけどとりあえず芸スポから来ましたオッスオッス

10 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 16:25:39 ]
ねー質問
Mechanize のクラスを再オープンしてメソッド付け加えたり書き換えたりするライブラリを作ったんだよ

 require 'mechanize'
 require 'mechanize/plus' # ←こんなノリのやつ

Mechanize は GPL だから、そのソースを動的に改変するこれを誰か第三者に公開するときは
やっぱり GPL で公開「しなければならない」よね?



11 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 16:27:18 ]
動的に改変するってそんな大層なことしてるわけじゃなかった
えーと、GPL なクラスの構造を頼りにしたソースコードってやっぱ GPL だよねみたいなそんな質問

12 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 16:33:21 ]
説明と解釈に迷うようなら親と同じライセンスにしておくのが超無難

13 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 16:42:51 ]
お、じゃあMechanizeにメソッド足したりクラス継承したりしてるライブラリはみんなGPLか

14 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 17:08:21 ]
GPLはそういうライセンス

15 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 18:25:59 ]
>>14
class Mechanize
end

これが GPL ライセンスに感染するの?

16 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 20:15:44 ]
それだけなら感染するわけがない

17 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 20:37:50 ]
Mechanize クラスは既に GPL のもとにあるはずだが

18 名前:デフォルトの名無しさん mailto:sage [2010/04/27(火) 23:56:35 ]
GPLは著作権に依拠したライセンスである。
よって、GPLで保護できるのは著作権が発生するコードのみである。

classとendはRubyの予約語だから誰が書いても同じになる。
よって著作権が発生し得ない。

問題はクラス名であるMechanizeだが、クラスMechanizeにアクセスするためには
当然クラス名をコード中に記述することが必要なわけで、ゆえにクラス名自体は
一種のAPIであると考えられる。
ところが、API自体は著作権で保護されないとされている。

以上により、>>15 のコード例には著作権は発生せず、よってGPLで保護される
こともない。

19 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 00:15:20 ]
GPLはRubyスクリプトライブラリみたいなものにイマイチ合わない気がする

20 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 00:27:39 ]
再オープンしてメソッドを追加したり上書きしたりするのはGPLの影響を受けないと思う
元のクラスのメソッド定義をコピペして改変した新メソッドで上書きするとGPLに従う必要が出てくると思う
どんだけ改変すれば元のライセンスから逃れられるかは裁判所へGoだ



21 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 00:32:06 ]
>>20
>メソッドを追加したり上書きしたりするのは
GPLの影響をうけるだろ

22 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 00:43:32 ]
「元のプログラムから派生したもの」ではないと断言できる場合、
その「派生したものではない何か」は GPL の影響は自動では受けない
たとえば、GPL のプログラムに対して BSD ライセンスのパッチを作ることは可能

クラス再オープンして中に何か書いた時点で元のコードのライセンスの影響を受けるとか怖過ぎるだろ
標準クラスにメソッド追加したら Ruby ライセンス?

23 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 01:00:34 ]
ソースコードの履歴として追加や上書きされてるわけじゃないから問題ないと思う

24 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 01:20:49 ]
>>10
動的に〜・・・とか問題にできるのはLGPLの話だからなあ
GPLだと再オープンも含めてGPLになるわな

25 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 08:03:16 ]
>>24
クラスの再オープンに元のクラスのソースが必要になるとは思えない

26 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 08:32:22 ]
とりあえずGPL1とGPL2は分けて考えるべきだと思った
MechanizeはGPL2
んで、Rubyのクラス再オープンは

ttp://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.ja.html#GPLAndPlugins
> GPLの下で公開されていたプログラムがプラグインを使うとして、
> プラグインのライセンスにはどのような条件がありますか?

のプラグインに該当するような気がする
プラグインはなくても動作するが、プラグインの実行にはGPL2のプログラムが必要
require 'mechanize' した時点でそのプログラムの公開はGPL2限定

27 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 08:52:09 ]
Mechanize オブジェクトに引数渡してメソッド使って返り値を取得してるだけならセーフ
メソッド追加したらその部分がアウト
Mechanize オブジェクトに extend してもアウト

WWW が Mechanize から無くなったのは、 require 'mechanize' したあとに
他のライブラリがたまたま WWW というモジュールを作って中にクラス作ると
WWW::Mechanize のライセンスに引っかかるからな気がする

28 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 08:58:14 ]
GPLのライブラリを利用しておきながらGPLを回避しようと考えること自体おこがましい
使いたい便利なライブラリがGPLだったなら、それはもう諦めてGPLとして公開すべき

自分の好みのライセンスを使いたいならゼロから自分で作るか、
好みのライセンスとかち合わないライセンスで公開されている類似のソフトウェアを使う

29 名前:デフォルトの名無しさん [2010/04/28(水) 09:10:38 ]
      ,―ヽ_(((((_、―
   ,/  ノ       ヽ  ~\
  /   ノ   IPA    ヽ   ~\
/   ノ           ヽ、  `ヽ
|    ノ / ̄\   / ̄~ヽ ヽ    i
|   ノ              |  ノ
\  |  <●>  <●>  (  )
 \ |      | |       i /
    |      /  ヽ       レ
   i     (●_●)      /  
    i、    ,-――-、   ・ /
    i、  <(EEEEE)> ∵/    どういたしまして
      i、  \   ./  /
       \   ーー   ,ノ       
  ,,.....イ.ヽヽ、ー-―一ノ゙-、.
  :   |  '; \_____ ノ.| ヽ i
      |  \/゙(__)\,|  i |

30 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 11:28:34 ]
require して agent 使うだけなら大丈夫
Mechanize クラスにメソッド追加したりしたら GPLv2

でいっすか
>>10に対する回答としては「本体と同様 GPLv2 です」だな



31 名前:デフォルトの名無しさん mailto:sage [2010/04/28(水) 23:31:04 ]
>>28
適用可能なライセンスを正確に知るための調査、と
GPLを回避しようと考えることの間には随分飛躍があると思うが

32 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 00:27:18 ]
なんかrubyって衰退する一方だね

33 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 01:05:54 ]
無駄に盛り上がり過ぎただけだとは思うけどね
Railsのブレイクがなければ、未だに魅力的な言語の印象が先行してそうな気はする
良くも悪くも実務に揉まれたって所じゃないのかな

ユーザにとっては、正直PerlやPythonと同等に魅力有る言語だってことで十分
信者って言われても別にいい。慎ましく使わせてもらうさね

34 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 01:30:54 ]
>>32
Scalaでいいからね

35 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 08:16:51 ]
くまくまーの人がScala記事書いてたな

36 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 08:45:46 ]
Scalaの記事なのでRubyスクリプト部分が不自然でへちょいというなんともアンバランスな

というか使ってみればわかるがScalaは文法が変態だ
馴染みのない概念×変態な文法というハイレベル敷居

37 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 09:30:29 ]
変態というか関数型なんかOCamlもF#もScalaもみんな同じ
ラムダ式と呼ばれるごく一般的な文法だ
エンタープライズ分野だとオブジェクト指向+関数型が主流になる日が遠くはないので
ラムダ式理解できないと歯が立たないぞ

38 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 09:38:10 ]
いや、PerlとRuby程度には違う
Scalaはシンタックスシュガーの使いどころ絶対間違ってる
OCamlのほうがなんぼか親しみやすい

39 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 10:00:15 ]
実務に揉まれた結果Rubyは使用に耐えないと判断され(バレ)ました

40 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 10:09:31 ]
ラムダ式って文法か?



41 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 10:13:30 ]
何の話題かと思ったら、はてブで盛り上がってた記事か
ttp://wota.jp/ac/?date=20100426#p01

この記事は若干ズレてると思うし、Rubyから乗り換えようという気にはならないけど
ほぼ純粋オブジェクト指向で、静的型付け(コンパイル可能)というのは確かにおいしそうだ

42 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 11:20:33 ]
純粋オブジェクト指向で静的型付けならC#で十分
明らかに黎明期にありがちな過大評価>Scala
同じ関数型ならF#の方が実用性は高いしC#との連携だって柔軟にできるし
インタプリタ型としても使える
関数型だけで何かしようと思ってるストイックな人には向いてるかもしれんが
Rubyと比較するのはアホもいいとこ

43 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 11:52:43 ]
F#はWindows2000でインストールできないから嫌い
いやサポート切れてるしワガママなんだけどねw

44 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 14:53:13 ]
メソッド引数に対する respond_to? 地獄または kind_of? 地獄について本スレとして何かコメントでもあれば

45 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 15:07:46 ]
口で「Ruby1.9の場合は…」と言っておきながら str.respond_ro?(:force_encoding) とか書く奴は池沼

46 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 15:12:03 ]
そんなチェック書いたことないし、書く方がおかしいと思う。

47 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 15:19:41 ]
respond_ro? は寡聞にして知らんが respond_to?(:force_encoding) ならけっこう見るな
ttp://www.google.com/search?num=50&hl=ja&q=respond_to%3F%28%3Aforce_encoding%29&lr=lang_ja
うーん…
ttp://www.google.com/search?num=50&hl=ja&q=def+%22kind_of%3F%28Array%29%22&lr=lang_ja

48 名前:デフォルトの名無しさん mailto:sage [2010/04/29(木) 15:24:09 ]
case-whenでクラスのチェックは頻繁に使う

49 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 07:04:45 ]
型チェックとか絶対いやだ。
そんなことするくらいならポリモーフィズムを使う。

50 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 07:41:06 ]
Rubyに型なんてありませんよ



51 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 07:44:40 ]
変数に型がないだけで、値には型があるんだが

52 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 07:59:30 ]
スクリプト上からいわゆる「型チェック」をする機構は無いような気もする
メッセージ応答性と所属クラスのチェックは型チェックとは違うような

53 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 07:59:51 ]
型チェックをしたいならしたいで
新しい便利メソッドを1つ定義すればいいだけの話
わざわざrespond_toとかkind_ofとかを重ねる必要はないと思う

54 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 08:02:06 ]
Rubyとしては
「妥当なオブジェクトを引数に指定しなかったユーザーが悪い」
「kind_of? とかするくらいなら受け付けるオブジェクトをマニュアルに書いと毛」
でいい?

55 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 08:34:21 ]
ユーザーにメソッド名で選択させればいいじゃん?
「引数に何が来るかわからない」なんてのは多くの場合嘘だしさー

def hoge_with_str(str)
 hoge_with_hash(:text => str)
end
def hoge_with_params(*arr)
 keys = [:text, :opt1, :opt2]
 hoge_with_hash(Hash[keys.zip(arr).flatten])
end
def hoge_with_hash(h)
 ...
end

56 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 08:42:07 ]
>>55
次の日くらいにめんどくさくなって

def hoge(*arg)
case arg[0]
when String then hoge_with_string(arg[0])
when Hash then hoge_with_hash(arg[0])
else hoge_with_array(*arg)
end
end

とか速攻作られそうだな

57 名前:デフォルトの名無しさん mailto:sage [2010/04/30(金) 09:27:08 ]
逆回しのリファクタリングを見ているかのよーだ

58 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 10:07:18 ]
>>1
次スレのテンプレに入れておいてね

RubyからScalaに乗り換えた15くらいの理由
wota.jp/ac/?date=20100426#p01

59 名前:デフォルトの名無しさん mailto:sage [2010/05/01(土) 10:53:11 ]
RubyはScalaに負けてしまうん?

60 名前: [―{}@{}@{}-] デフォルトの名無しさん mailto:sage [2010/05/01(土) 11:17:43 ]
釣りにはちょっと遅いな



61 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 00:34:39 ]
釣りとかじゃなくて、>>58の文章読んだところ本当にそう思った

62 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 00:36:48 ]
くまくまーの人はBerryzからAKB48に乗り換えた15くらいの理由って記事を

63 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 01:16:31 ]
℃-ute から S/mileage に乗り換えた 15 くらいの理由

64 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 10:20:03 ]
Windows で require 'iconv' した場合、使われる iconv.dll ってどこにあるもの?

65 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 10:23:44 ]
ruby\bin

66 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 10:31:38 ]
1.9.1の場合は bin\libiconv2.dll が読まれるような気がする

Nokogiri なんかは自前で iconv.dll が入ってるけど、これは nokogiri がパス固定で読んでるんだよね
require 'iconv' で使用される iconv.dll と Nokogiri が使用する iconv は別だよね

67 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 10:39:34 ]
>>66
nokogiri.rb:
 ENV['PATH'] = [File.expand_path(
  File.join(File.dirname(__FILE__), "..", "ext", "nokogiri")
 ), ENV['PATH']].compact.join(';') if RbConfig::CONFIG['host_os'] =~ /(mswin|mingw)/i

ということで、ENV['PATH'] が弄られてる
require 'iconv'
require 'nokogiri'
とすると、Iconv は ruby-1.8/bin/iconv.dll を、
require 'nokogiri'
require 'iconv'
とすると、Iconv は nokogiri/ext/nokogiri/iconv.dll を使う
…ように見える
誰か検証プリーズ

68 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 19:08:21 ]
>>67
最初に呼ばれた方を使うはず。
ただ、いずれにしろWindowsバイナリ版Gemに同梱されてるiconv.dllは随分古くて日本向けパッチも当たってないもののはず。
このせいで配布されてるActiveScriptRubyでNokogiri使う場合、

Rubyについて Part 36
ttp://pc12.2ch.net/test/read.cgi/tech/1246174168/262
>NokogiriがWindows-31Jエンコーディングをサポートしていない気がする。
>正確にはNokogiriが使っているlibxml2が呼んでいるiconvかもしれないけど。

>>irb -Ks -rrubygems -rnokogiri
>#Shift_JISの範囲外の文字を含んだWindows-31J(=CP932)エンコーディングの文字列
>irb(main):001:0> s="<html><HEAD><TITLE>11@11@</TITLE></HEAD><body></body></html>"
>=> "<html><HEAD><TITLE>11@11@</TITLE></HEAD><body></body></html>"

>#Windows-31JエンコーディングでHTMLパース。失敗。
>irb(main):003:0> Nokogiri::HTML.parse(s,nil,'Windows-31J')
>encoding error : output conversion failed due to conv error, bytes 0x82 0x50 0xC
>2 0x87
>I/O error : encoder error
>=>

あたりの問題を踏むことになる。

69 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 19:08:45 ]
対処としては
ttp://pc12.2ch.net/test/read.cgi/tech/1246174168/641
>どうもnokogiriのWindows版gemに同梱されてるDLLは
>libXML2の公式サイトからリンクされてる
>ttp://www.zlatkovic.com/libxml.en.html
>のもののようなので、
>ttp://www.zlatkovic.com/pub/libxml/iconv-1.9.2.win32.zip
>のDLLの情報等を参考にしつつ、libiconvの1.13に
>森山さんのところのパッチ
>ttp://www2d.biglobe.ne.jp/~msyk/software/libiconv-1.13-ja-patch.html
>をあてたものを
>MinGW/MSYSでビルドして、MSYS環境でそのままビルドすると
>libiconv-2.dllとかしか出来ないので、ビルド時に生成された*.oに
>libiconv-2.dllから抜き出したdefファイルを加えて
>dllwrapでiconv.dllを生成……

みたいにlibiconv-1.13-ja-1相当のiconv.dllを作成してruby/bin配下のiconv.dllを置換で。

70 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 19:10:58 ]
本来ならActiveScriptRubyとRubyInstallerの中の人、
あとはgemでiconv.dll同梱してるような方々にiconv.dllの更新をお願いすべきなんだろうけど。

それはちょっと敷居が高いよね。



71 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:06:24 ]
あ、いや、Nokogiri の iconv.dll は Windows-31J に対応したは…ず

irb> html = "<title>@1@`_</title>"
irb> puts Nokogiri::HTML.parse(html, nil, 'Windows-31J').at('title').inner_text
@ツ1ツ@ツ`ツ_

…ごめんなさい嘘でした

irb> p RUBY_DESCRIPTION
"ruby 1.8.7 (2010-01-10 patchlevel 249) [i386-mswin32]"

Nokogiri は gem build 時にここにあるのを wget してパッケージングして gem として配布してる
ftp://ftp.xmlsoft.org/libxml2/win32/
自力で dll を作ってるわけではないから、パッチ示されてもどうにもならない
たぶんそこまでサポートしきれないんだろうし、それは仕方ないよね

偏見だけど、RubyInstaller を使う海外の人は iconv.dll が強まっても嬉しくないと思うんだ
いざとなったら MinGW を自力で入れてコンパイルできるし

だから ActiveScriptRuby の中の人に頑張って欲しいのだけど、
現在でも「追加物」が多いってのにさらに増やすのは流石に

72 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:07:55 ]
MinGWを入れるってなんだ
MSYSね

73 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:12:07 ]
iconv-ja という gem パッケージを作る
require 'iconv/ja' でジャパニーズフレンドリーなインターナショナルコードセットコンバセーションライブラリが

74 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:20:39 ]
結論としては「おまえらRuby1.9.1使え」ということでよろしいですか

75 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:25:25 ]
>>74
いや、iconv.dll に Windows-31J を使わせなければなんとでもなる
事前にわかってさえいれば、泥臭く回避は可能

irb> puts Nokogiri::HTML.parse(html, nil, 'Shift_JIS').at('title').inner_text.tosjis

irb> puts Nokogiri::HTML.parse(html, nil, 'CP932').at('title').inner_text.tosjis
@1@`_
irb> puts Nokogiri::HTML.parse(html, nil, 'Windows-31J').at('title').inner_text.tosjis
@ツ1ツ@ツ`ツ_
irb> puts Nokogiri::HTML.parse(html.toutf8, nil, 'utf-8').at('title').inner_text.tosjis
@1@`_

76 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:32:34 ]
そんなのやだよ

77 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:46:49 ]
Nokogiriに限ればひげの山男に言えば対応してくれそうな気もする。
最近Windows環境も手に入れたみたいだし。


78 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:48:19 ]
>>73
以前同じ動機で>>69の人の
>.とりあえず今回生成したiconv.dllは
>.需要があるかどうか何とも言えないけどうpっておきます。
>.ttp://www1.axfc.net/uploader/Sc/so/23793.zip

だけ入ってるgem作ったんだけど、
gemucutter(当時)にup出来なくて投げた覚えが。

自分のところではiconv.dll上書きすれば動くのわかってるから
あんまり頑張る気がしないというか。

79 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 20:52:33 ]
>>77
・ActiveScriptRubyの人(arton氏?)にiconv.dllのパッチ版を入れてもらう
・ひげの山男の人にiconv.dll同梱をやめてもらう
でrequire順で結果が変わることなく(日本人的には)おおむね望ましい結果になるのかな

80 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:00:18 ]
日本向けっていうかWindows向けじゃないのか<iconvのパッチ



81 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:05:42 ]
いや、「りなっくすにほんごかんきょうぱっけーじ」とか入れると日本用パッチ入りiconvが入ったりする…はず

82 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:17:50 ]
そもそも iconv に全世界が利用してるというオフィシャルの気概がないのが悪い(逆切れ

日本語レガシーエンコードのぐちゃぐちゃに対応し切れないような感じだったと風聞
日本人でも「これが一応決定版もう何もしなくていいですこれだけやって」というようなパッチ出せないしなあ

83 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 21:40:03 ]
海外の人は現状で困ってないだろうからなあ
処理速度遅くして日本人のために頑張ってください、というのはなかなか

84 名前:デフォルトの名無しさん mailto:sage [2010/05/02(日) 23:29:26 ]
>>78
gemcutterはなにかと不安定なのでRubyForge推奨

85 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 10:45:43 ]
というか、ActiveScriptRuby か RubyInstaller か OneClickInstaller を使っている限り、
gem が自前で iconv.dll を持つ必要はないんだよね
Iconv 用の iconv.dll がくっついてるはず(または別途自力で用意するはず)だから

libxml2/libxslt のサイトには「iconv.dll も必要ですこれをダウンロードしてね」とか書いてあるけど、
$PATH にあればなんでもいいはず
配布もとの iconv.dll を libxml2.dll と同じディレクトリに必ず入れなければならないわけではない(少なくとも libxml2.dll に関しては)
あれは iconv.dll が用意されてない環境向けの文言であって、 iconv.dll が常にくっついてる Windows 用 Ruby には不要だ

と、思う

86 名前:デフォルトの名無しさん mailto:sage [2010/05/03(月) 10:55:57 ]
ライセンス上セットにしておくことが必要なのかも

87 名前:デフォルトの名無しさん [2010/05/07(金) 10:43:44 ]

整数から浮動小数点への暗黙の型変換ってRubyではどう実装されているのでしょうか?
例えばT_FLOAT型を期待している関数にT_FIXNUMを渡すと、そのままではエラーとなります。
関数の入り口で全部方をチェックして変換しているのでしょうか?


88 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 10:55:42 ]
> 整数から浮動小数点への暗黙の型変換
そんなもんあったっけ

89 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 10:58:52 ]
3/2
=> 1

(3 / 2) + 0.5
=> 1.5

90 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 11:00:33 ]
2じゃないのかよw



91 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 11:08:39 ]
Cでも2じゃないだろ?

92 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 11:08:50 ]
irb> 1.coerce(0.5)
[0.5, 1.0]


93 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 11:14:08 ]
>>89
これは暗黙の型変換と言っていいのか

94 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 11:20:22 ]
def +(o)
 b, a = if o.instance_of?(self.class) then [o, self] else corce(o) end
 a.c_function_add(b)
end

こんな感じ?
C の機能関係ない Ruby 的処理の部分で完結してるん?

>>93
1 + 0.5 は TypeError を起こしてもいいはず
起こさないんだからどっかで型変換
ユーザーが明示的に行ってないんだから暗黙

1 + 0.5 が 1 で 1 +. 0.5 が 1.5 になるべきかもしれない

95 名前:87 [2010/05/07(金) 11:20:24 ]
ごめんなさい、そう言う事じゃないです。
関数引数としてT_FLOAT型を期待する関数が
T_FIXNUM型を受け取った場合内部的にどういう動作をするのか、
と言うことです。
C/C++みたいにT_FLOAT型からT_FIXNUM型の暗黙の型変換が
起きるのではないかと予想しているのですが。

96 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 11:31:11 ]
C/C++では、引数としてT_FLOAT型を期待する関数が、
T_FLOAT型からT_FIXNUM型の暗黙の型変換を起こしたりはしません。

97 名前:デフォルトの名無しさん [2010/05/07(金) 11:37:31 ]
ソース見るのが一番よくわかると思うけど、単に関数ごとにチェックして変換してる

98 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 11:38:56 ]
おきない
C++のテンプレートみたいなものだと思えばいい

99 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 11:59:11 ]
「変換」って単にメソッドの戻り値の型が違うだけなのだが
戻り値の型が、レシーバーや引数の型と違うことが変換なのか?
RubyならRubyらしく考えないと理解できんぞ

100 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 12:01:05 ]
rubyのCのソース読むときの話だろ?



101 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 12:54:45 ]
え、そうなの?

102 名前:87 [2010/05/07(金) 14:45:51 ]
>>97

関数に入ったら引数(arg)のチェックを

float a;

if (TYPE(arg) == T_FIXNUM)
  a = FIX2INT(arg);
else if (TYPE(arg) == T_BIGNUM)
  a = NUM2LONG(arg);
else if (TYPE(arg) == T_FLOAT)
  a = RFLOAT_VALUE(arg)
else
  // エラー

こんな感じで行っているのでしょうか?

>>100-101
拡張ライブラリの話です。
Rubyは何が飛んでくるかわからないから、
全部チェックするのがセオリーですか?


103 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 14:49:21 ]
しなくて済むならもちろんチェックしなくてもいいよ

104 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 15:10:31 ]
全部チェックできるもんならやってみろやオラみたいな

基本マニュアルで縛るよね
指定以外の変なもの寄越したほうが悪い

105 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 15:12:05 ]
拡張ライブラリは自作ラッパーとセット
拡張ライブラリだけを配布するといろいろ頭が痛くなるので、Rubyインタフェースを併用して縛る

106 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 15:28:27 ]
Ruby が遅い理由を垣間見た気がする

107 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 17:00:00 ]
>>102
rb_Float関数(rubyでいうFloat関数)を使えばT_FLOATなVALUEを返してくれるんで
普通はこれを使えばいいと思う。
rb_Floatがやってることはそれと大体いっしょ。

108 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 22:44:44 ]
1.9.2用ブランチ切られたのね。


109 名前:87 [2010/05/07(金) 22:49:29 ]
>>107
ありがとうございます。オリジナルマクロで大分書いてしましたが
標準の方が良いのでそれでやってみます。
大分理解出来るようになりました。

110 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 09:22:37 ]
>>87
NUM2DBL()というマクロ、あるいはその実体のrb_num2dbl()という関数使え



111 名前:デフォルトの名無しさん mailto:sage [2010/05/09(日) 06:11:11 ]
IRBのDebianパッケージってなんで未だにreadline5にリンクしてんの?
readline6で作ってほしい。


112 名前:デフォルトの名無しさん mailto:sage [2010/05/09(日) 15:00:26 ]
ソースから入れるのは絶対嫌だっていうポリシーなら仕方ないが、
そうでないなら、Rubyはソースから入れるほうが不便がない。



113 名前:デフォルトの名無しさん mailto:sage [2010/05/09(日) 15:22:22 ]
SSLとreadlineだけ気をつけてあとは自前コンパイルしてホームにインストール

114 名前:デフォルトの名無しさん mailto:sage [2010/05/09(日) 16:34:25 ]
rvmで楽しよう。


115 名前:デフォルトの名無しさん mailto:sage [2010/05/09(日) 18:15:39 ]
ソースから入れる場合だけど、1.8.7-p249(1.8.7の最新版)をインストールする場合は、
string.cのinspectのバグを修正してからmakeする点に注意ね。
------------------------
2645c2645
< if (ismbchar(c) && p - 1 + (len = mbclen(c)) <= pend) {
---
> if (ismbchar(c) && p + (len = mbclen(c)) <= pend) {
------------------------

UTF-8な文字列をinspectすると末尾のマルチバイト文字列が文字化けするので。
これ直さないとけっこう不便なんだ。


116 名前:デフォルトの名無しさん mailto:sage [2010/05/10(月) 16:28:54 ]
あのね mes というメソッドを作ったのです

mes(1, 2)
mes([1,one], [2, two])
a = [[1,one], [2, two]]; mes(a)

の3つをユーザーフレンドパークな感じで受け付けたいです
one と two の部分はオブショナルで、 mes(1, 2) は mes([1, nil], [2, nil]) と同一視したいです

def mes(*args)

とメソッド書いた時点で引数の処理がめんどくさいことに気づきました
なんかいい方法ないですか
3タイプの引数すべてを、配列の配列である [[1,opt1], [2, opt2]] 形式に揃えて each で回したいです

117 名前:デフォルトの名無しさん mailto:sage [2010/05/10(月) 16:36:27 ]
# 引数を mes する
#   mes(1, 2)
#   mes([1, one], [2, two])
#   mes(*[[1,one], [2, two]])
def mes(*args)
arr = args.map{|e| e.kind_of?(Array) ? e : [e, nil]}
arr.each do |x, opt|
 …

「配列は*つけて渡せ」とマニュアルに書いておく

118 名前:デフォルトの名無しさん mailto:sage [2010/05/10(月) 16:49:41 ]
>>116
そーゆーのは mes([a, b]) としたときに

  [[a, nil], [b, nil]] のつもりなのか
  [[a, b]] のつもりなのか(b は opt)

自動判別するのが超めんどいのでやめようぜ、ということになってる
「データ列としての配列使いたいときはユーザー側で*つけれ」という指示が真っ当


119 名前:デフォルトの名無しさん [2010/05/10(月) 21:51:04 ]
拡張ライブラリ書いてます。
C++側で Transform:: set (float* matrix) という関数があるのですが、
これをRubyに持っていくと、どういう名前がいいでしょうか。
個人的には Transofrm#matrix がいいと思うのですが
C++とRubyで名前が違ってしまうのが今ひとつ。
基本的にRubyに持っていくときは set/get は削除しています。


120 名前:デフォルトの名無しさん mailto:sage [2010/05/10(月) 22:15:56 ]
変換行列? どういう使い方(C++で)なの?




121 名前:デフォルトの名無しさん mailto:sage [2010/05/10(月) 22:35:42 ]
MLに投げた方が良いかもだが、あっちのアカウント取るのが面倒いので、ここで失礼。

RubyのトランクのBigDecimal/math
atan()に1.08を入れると戻り値の有効桁数が足りない

return pi.div(neg ? -2 : 2, prec) if x.infinite?
return pi / (neg ? -4 : 4) if x.round(prec) == 1
* x = 1 / x if inv = x > 1
x = (-1 + sqrt(1 + x**2, prec))/x if dbl = x > 0.5

irb(main):004:0> BigDecimal("1")/BigDecimal("1.08")
=> #<BigDecimal:9940ce4,'0.9259259259 25926E0',16(24)>
irb(main):005:0> BigDecimal("1").div(BigDecimal("1.08"), 30)
=> #<BigDecimal:9957468,'0.9259259259 2592592592 5925925926E0',32(44)>
irb(main):006:0>

ここで桁数が足りなくなるのね。
分母と分子の有効桁数が少ないときに、出力の有効桁数の指定が無い場合は、
適当にちょんぎるのは、言語仕様的には、正解でありましょう。
1/3が来たら、メモリを全部使い切りました、では悲しい。
はい、
x = BigDecimal("1").div(x, prec)
で、なおります。
y = tan(atan(x, prec), prec)
で、ループを廻して、xとyの値を比較していてたら、たまたま発見しました。
あ、トランクにはtanはないのだけど、sinとcosの組み合わせで間に合わせました。
tanはパッと見、収束が遅いようなので後回し。
続く


122 名前:デフォルトの名無しさん mailto:sage [2010/05/10(月) 22:36:39 ]
あと、expの絶対値が大きくなると、戻って来ないのよね。
exp(a*b+c) = exp(a)**b * exp(c)
を使うと、幸せになれるかも。(ん十倍の威力で)
んで、powerも全部の桁を計算してご苦労さんなんだが、integerではないのだから、そんなに気張らなくても..
とは、思います。
expと同じ要領でやると、実行速度がずいぶん速くなります。
(Rubyのコードからpowerをcallするんだが、それでもとても速い。
ソースを書き換える手もあるのだけど、コンパイルするのがめんどくさい。
そもそも、その手の労力を厭わない人は、こっちに来なくて良いでしょ)

logは、exponentが負の場合、
を書いてあるから、正で2桁以上の場合、を追加すると良いですね。
expとlogが実用範囲内になると、実数**実数が(実用的に)使えるようになります。

今のメンテナの方は、前の方よりアクティブのようで、
ここ1年で随分よくなった感じがします。
.rbでの動作が安定して、.soにして貰えると、実行速度がさらに上がってさらにうれしい。

さて、おいらは、gammaも書いたし、erfの逆関数も書いたので、しばらくお休みするべ。
てか、動作確認が一番コストがかかる訳なんだが。


123 名前:デフォルトの名無しさん mailto:sage [2010/05/10(月) 23:11:15 ]
>>117
> arr = args.map{|e| e.kind_of?(Array) ? e : [e, nil]}
これ不要。eachのブロック引数で展開させれば済む。

$ ruby -e '[1, 2].each {|(x, opt)| puts "#{x.inspect}=>#{opt.inspect}"}'
1=>nil
2=>nil
$ ruby -e '[[1, "one"], [2, "two"]].each {|x, opt| puts "#{x.inspect}=>#{opt.inspect}"}'
1=>"one"
2=>"two"


124 名前:デフォルトの名無しさん mailto:sage [2010/05/10(月) 23:40:55 ]
わー便利と思えないような機能を紹介するのはやめよう

125 名前:デフォルトの名無しさん mailto:sage [2010/05/10(月) 23:45:43 ]
いや便利かどうかで言えばふつうに便利だと思うぞ
微妙に紛らわしいうえに nil がどこから来てるんだか不明なだけで

126 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 04:13:57 ]
なんか読んでて微妙に不安だよね

irb> a, b = 1
irb> p b
nil

これと理屈は同じなんだろうけどさ
あとカッコで括るご利益はなんかあったっけか

127 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 07:21:11 ]
rubyinstaller-1.8.7-p249-rc2.exeをインストールしたんだけどirbが
あほかー!ってレベルで重たいんだけど何なんですかね。
ま、Windowsはたまにしか使わないからどうでもいいっちゃどうでもいんですけど。

128 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 07:24:12 ]
irb --noreadline

129 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 11:09:25 ]
>>128
軽くなった!ふしぎ!

130 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 11:14:34 ]
FAQ



131 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 11:26:40 ]
rubyinstaller なんて使うから…

132 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 11:32:02 ]
初心者スレではもう何も言わずActiveScriptRuby使えって言われてるなw

133 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 11:34:18 ]
readline の dll を手作業で入れ替えてもいいんだっけか

134 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 11:55:57 ]
4スレくらい前から常識

135 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 14:11:04 ]
>>123見て思い出したんだけど、each_pair って使うのあまりよくない?
collection.each do |k, v| なら collection が配列の配列でも平気だけど、
collection.each_pair do |k, v| だと Hash 限定になるよね

あんまり原理主義振り回す気はないけど、Hash と配列の配列っておおむね同じに扱われてもいいよね

136 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 18:24:27 ]
1.8.7あたりから(1.9からのバックポート?)
Hash[ 配列の配列 ] # => Hash
ができるようになってる
が、マニュアルには載ってないっぽい


137 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 21:35:16 ]
>>136
俺もこの前知った
けっこう前から入ってるんだよな
もっと早く知ってれば無駄に inject 使わなくて済んだのに

138 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 21:42:11 ]
>>135
ハッシュはキーと値のペアをバッグにしたものと同じように扱える。
ペアのバッグ

139 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 21:51:16 ]
配列の配列からは

Hash[*arr_in_arr.flatten]

だろ
inject わざわざ使わなくてもいいと思うんだが

140 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 22:00:34 ]
>>139
キー列からハッシュ作る場合の話。
keys.inject({}) {|h, x| h[x] = ...; h }
よりも
Hash[ keys.map {|x| [x, ...] } ]
のほうが記述が短くてしかも速い。

ちなみに flatten して * 展開は一番遅い。




141 名前:デフォルトの名無しさん mailto:sage [2010/05/11(火) 23:54:54 ]
>>140
興味深いな。手元で試さないで訊いて申し訳ないんだが、
何桁程度の要素数から有為に遅くなる感じなんだろうか?

3〜4桁なら大差ないだろうと今までflatten使ってたが、
もっと少ない領域で遅くなりだしたりする?

142 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 10:16:47 ]
>>141
よっぽど古いマシンで大量のデータでループ、とかじゃなければ
気にしなくていいレベル。

かなり古いLinuxで 1..100000 から to_s への Hash 生成でベンチ。
map して Hash[] は 0.77、inject({}) は 0.87、map 結果を flatten して * は 1.15


143 名前:142 mailto:sage [2010/05/12(水) 10:22:12 ]
おっと、1.8.7 です。
1.9 最新は Linux 古すぎてビルドできんかった orz

去年 7 月頃の 1.9.2dev が残ってたんでやってみたら、
flatten 版は SystemStackError になったw

144 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 18:08:18 ]
松江市の食品会社が「Rubyラーメン」発売、売り上げの一部でRuby支援
itpro.nikkeibp.co.jp/article/NEWS/20100512/347926/

松江・・・

145 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 18:44:34 ]
聖地巡礼のお土産にどうぞ
ってことかw
まるきり宗教だなwww

146 名前:デフォルトの名無しさん [2010/05/12(水) 18:47:31 ]
早速注文
www.amazon.co.jp/dp/B003L7H9SA

147 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 19:03:09 ]
アニメで町おこしみたいなもんだろww

148 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 19:07:02 ]
売り上げが寄付されるとは益々宗教くさい

149 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 19:24:50 ]
>>148の考える宗教の概念が興味深い

150 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 20:24:31 ]
どんな味なのかまったく想像できんw



151 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 20:26:37 ]
想像だけど、醤油ラーメンっぽい味じゃないかな

152 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 20:33:04 ]
ダシは何でとってるんだろう

153 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 20:34:46 ]
麺にRubyスクリプトが記述されてたりするの?

154 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 20:37:36 ]
なにこのスラドくさい流れ

155 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 20:46:14 ]
Matzさん何かコメントを。

156 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 21:19:09 ]
みなさんもっとお布施を

157 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 22:35:26 ]
スパゲティもラーメンも麺の絡まり具合という意味では大差ないよな

158 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 22:48:40 ]
ラーメンはちぢれてて絡まる可能性がさらに高いのもあるからな

159 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 23:18:51 ]
ruby-devを見ると、log遅いじゃん、
と思ってるのは、おいらひとりだけでは無いようですね。
バグでは無いので、1.9.2には間に合わないようでして、
御用とお急ぎの方は、以下を参考に自己責任でどうぞ。
部分的にちょこっとの修正だけど、全文載せます。
興味の無い方は、跨いでお通りくださいませ。
def log(x, prec)
raise ArgumentError, "Zero or negative argument for log" if x <= 0 || prec <= 0
return x if x.infinite? || x.nan?
bdf = BigDecimal.double_fig
n = prec + bdf
flg = false
if (expo = x.exponent) < 0
x = x.mult(BigDecimal("1E#{-expo}"), n)
flg = true
elsif expo > 2
expo = expo - 2
x = x.mult(BigDecimal("1E#{-expo}"), n)
flg = true
end
続く


160 名前:159 mailto:sage [2010/05/12(水) 23:20:19 ]
one = BigDecimal("1")
two = BigDecimal("2")
x = (x - one).div(x + one,n)
x2 = x.mult(x,n)
y = x
d = y
i = one
while d.nonzero? && ((m = n - (y.exponent - d.exponent).abs) > 0)
m = bdf if m < bdf
x = x2.mult(x,n)
i += two
d = x.div(i,m)
y += d
end
if flg
y.mult(two, n).add(log(BigDecimal("10"),n).mult(BigDecimal(expo.to_s), n), n)
else
y.mult(two, n)
end
end




161 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 23:26:05 ]
これ?
ttp://redmine.ruby-lang.org/issues/show/3279

162 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 23:36:44 ]
なんか上にもいたけど、なぜここに貼る

163 名前:159 mailto:sage [2010/05/12(水) 23:37:42 ]
うん、それ。
リクエストがあれば、expの高速版も公開できると思う。

164 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 23:37:43 ]
なんか1.9の文字エンコード情報を持つやつ苦労してるみたいだな
Yuguiさんがツイッターで嘆いてたぞ
混乱が出ても根本的な解決を選択してほしいのだが

165 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 23:38:27 ]
>>159
ここにそのまんま貼っちゃうとライセンス的に取り組みが面倒になるようなので
gistあたりを使うのが吉。

……といっても、それぐらいだったらredmineに貼るかw

166 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 23:39:44 ]
あぁ、迷惑だったらもう来ない。
さようなら。

167 名前:デフォルトの名無しさん mailto:sage [2010/05/12(水) 23:47:54 ]
ここはメソッドチェーンの使い方を競うだけのスレなのに場違いだろ

168 名前:デフォルトの名無しさん mailto:sage [2010/05/13(木) 00:53:42 ]
ネタだと思ったらマジですか

169 名前:デフォルトの名無しさん mailto:sage [2010/05/13(木) 08:44:55 ]
>>159
貼り付けたコードの著作権は 2ch に移譲されるので
無闇に貼り付けない方がいいぞ、取り込むのが難しくなる

170 名前:デフォルトの名無しさん mailto:sage [2010/05/13(木) 08:50:51 ]
2ch もうすぐ潰れるから権利主張の主体が無くなる



171 名前:デフォルトの名無しさん mailto:sage [2010/05/13(木) 08:53:06 ]
redmine を使いたくて解説通り gem install rails とやったら
動いてんだか死んでんだかさっぱりわからない状態で5分経過
rails みたいな巨大パッケージのインストールのコマンドライン解説は全員詳細表示つきで書け
いろんな意味で不安でいまさら止められないじゃないか

>>169
2ch側が権利を主張するどうこうではなく
「Rubyのソースコードの一部の権利が他者に渡っているようですが問題ないのですか?」
という外部指摘の可能性をどうするかという話だな
わざわざ爆弾抱える必要もないわけで

172 名前:デフォルトの名無しさん mailto:sage [2010/05/13(木) 08:56:30 ]
痴呆症のように何度も同じ話しなくていいよ

173 名前:デフォルトの名無しさん mailto:sage [2010/05/13(木) 09:18:41 ]
>>171
-v


174 名前:デフォルトの名無しさん mailto:sage [2010/05/13(木) 15:02:46 ]
>>169
> 2ch側が権利を主張するどうこうではなく
> 「Rubyのソースコードの一部の権利が他者に渡っているようですが問題ないのですか?」
> という外部指摘の可能性をどうするかという話だな
> わざわざ爆弾抱える必要もないわけで

法に無知なバカをいちいち相手にしていたらキリないわ

175 名前:デフォルトの名無しさん mailto:sage [2010/05/13(木) 15:14:23 ]
>>174
じゃああなたが全コストを負って迎撃して説明してください
そういう人は大歓迎です

176 名前:デフォルトの名無しさん mailto:sage [2010/05/13(木) 15:20:16 ]
正しいことさえしていれば何も言わなくてもみんなわかってくれる…
そう考えていた時期が俺にもありました

177 名前:デフォルトの名無しさん mailto:sage [2010/05/13(木) 20:34:17 ]
>>159
svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev

178 名前:デフォルトの名無しさん mailto:sage [2010/05/13(木) 20:36:46 ]
>>111
readline6はGPLv3だからじゃないか

179 名前:デフォルトの名無しさん mailto:sage [2010/05/13(木) 21:16:05 ]
v3の嫌われっぷりは異常

180 名前:デフォルトの名無しさん mailto:sage [2010/05/14(金) 14:49:01 ]
V3はオタクが持ち上げ過ぎなだけ



181 名前:デフォルトの名無しさん mailto:sage [2010/05/14(金) 19:19:12 ]
Vを大文字でV3と書くと「ブイスリー」としか読めなくなるので避けたほうがよいがどうでもいい

Redmine をインストールしたがこのマシンでは超重い
なんか残念だ
いやまあうちでは Rails アプリケーションはどれも重いんですけどね

182 名前:デフォルトの名無しさん mailto:sage [2010/05/14(金) 20:12:18 ]
ほんとにどうでもいいなw
ちなみにどの程度のスペック?


183 名前:デフォルトの名無しさん mailto:sage [2010/05/14(金) 20:35:32 ]
$ cat /proc/cpuinfo | grep -E "name|MHz"
model name : Celeron (Mendocino)
cpu MHz : 400.907
$ cat /proc/meminfo | grep -E MemTotal
MemTotal: 124696 kB
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 8.10
Release: 8.10
Codename: intrepid
$ ruby -v
ruby 1.8.7 (2010-01-10 patchlevel 249) [i686-linux]


184 名前:デフォルトの名無しさん mailto:sage [2010/05/14(金) 20:42:35 ]
しまった 8.10 か、ずいぶん古いなこれ

…アップグレードめんどい
バックアップめんどい

185 名前:デフォルトの名無しさん mailto:sage [2010/05/14(金) 21:55:55 ]
>>183
それってひょっとしてCeleron300Aをオーバークロックして450MHzで動かしてたりしてたような時代の代物か。
……12年前?

186 名前:デフォルトの名無しさん mailto:sage [2010/05/14(金) 22:05:37 ]
そんな古くねえよ

えーと…(サイトを調べて)1999年5月発売。ちょうど11歳だね。
このころのIBMのデスクトップPCは物持ち良過ぎて困る

Celeron400MHzの64MBの8GBが本体だけで当時17万ですってよ奥様
128MB増設済みを5年位前に中古で3000円で買ったのに

何の話だっけ

うん、えーと、メモリ128MBだと Rails では即スワップ突入してとても遅いよとかそんな報告

187 名前:デフォルトの名無しさん mailto:sage [2010/05/14(金) 23:59:18 ]
とても有用な報告だ

188 名前:177 mailto:sage [2010/05/15(土) 00:19:34 ]
途中で切れてた
>>159
r27747以降でもやっぱり遅い?

189 名前:デフォルトの名無しさん mailto:sage [2010/05/15(土) 00:31:51 ]
>>181
ヴイスリャー

190 名前:デフォルトの名無しさん mailto:sage [2010/05/15(土) 03:31:31 ]
ttp://store.shopping.yahoo.co.jp/mengurume/ramen-ms-ruby.html
ruby on matsue



191 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 00:08:09 ]
>>180
ライダーマンdisってんのか、ぁあ?

192 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 03:54:42 ]
PHPerだけどRubyラーメン食べてみた - あっきぃ日誌
d.hatena.ne.jp/Akkiesoft/20100514/1273844892

f.hatena.ne.jp/images/fotolife/A/Akkiesoft/20100514/20100514215327.jpg
f.hatena.ne.jp/images/fotolife/A/Akkiesoft/20100514/20100514220924.jpg
f.hatena.ne.jp/images/fotolife/A/Akkiesoft/20100514/20100514220944.jpg
f.hatena.ne.jp/images/fotolife/A/Akkiesoft/20100514/20100514221028.jpg
f.hatena.ne.jp/images/fotolife/A/Akkiesoft/20100514/20100514221054.jpg

Rubyラーメンうまそーだな、おい・・・
画像見てたら腹減ってきた

193 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 04:15:06 ]
Rubyとの関係が解らん
初音以外

194 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 10:43:45 ]
Ruby.開発者.出身地.ご当地ラーメン
=> 松江ラーメン

195 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 11:14:53 ]
開封すればするほどRubyと関係無くなっていく

196 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 11:18:38 ]
Rubyロゴの海苔くらいは同封すべきだな

197 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 11:35:16 ]
そうだねえ、プリント海苔の出番のはずなんだが

198 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 11:56:13 ]
野球カードみたいなの入れるとか
ライブラリには載せてない隠しクラスをこっそり書いておくとか
そのぐらいの商魂は見せてほしいね

199 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 12:08:13 ]

 ・ Rubyロゴの印刷された海苔を2枚入れとく
 ・ 標準/添付クラスのチートシートカード(全10枚、2枚ランダム封入)
 ・ Rubyコア開発者ブロマイド(裏には自己紹介兼ねた短いRubyスクリプトつき)
 ・ コンピュータ完動祈願の松江の神社のお守りが入ってる(サーバに貼れるシール1枚同封)



200 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 12:08:57 ]
Rubyチョコ新発売!
組込、添付クラスライブラリのAPIカード付き。
APIカードを集めてRubyウィザードになろう!

どうよ。企画→俺。駄菓子メーカー→やおきん



201 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 12:12:21 ]
萌えRuby

各種クラスライブラリを擬人化
Stringたん
Arrayたん

202 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 12:16:07 ]
カードくらいは入れるべきだったな。
そもそもターゲットがいわゆるマニアなんだから、
カードをコンプリートするまで買うやつ多いだろ。

203 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 12:24:50 ]
Matzのターン!中田さんを召還!とか出来るのなら箱買いしてもいい

204 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 17:37:59 ]
>>199
出雲大社のなら欲しい

205 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 18:54:34 ]
class C ; attr_accessor :data ; end

describe "C" do
it "changes data from {} to {'k' => 'v'}" do
@c = C.new
@c.data = {}
lambda{ @c.data.update({'k' => 'v'}) }.should change(@c, :data).from({}).to({'k' => 'v'})
end
end

----------------
$ spec c_spec.rb
F
1)
'C changes data from {} to {'k' => 'v'}' FAILED
data should have initially been {}, but was {"k"=>"v"}
.c_spec.rb:7:


ピキッ

206 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 19:12:43 ]
>>205
rspec 2.0.0.beta.8でもそうなった。

Rspec::Matchers::Change#matches? の中で、ブロックを呼ぶと
@beforeの中身自体が変更されてしまうね。
これはバグといっていいんじゃないだろうか。

@before = evaluate_value_proc

@before = evaluate_valu_proc.dup
にすれば一応解決ではあるが、チケット出すべきか……



207 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 19:14:39 ]
チケットあった。
ttp://rspec.lighthouseapp.com/projects/5645/tickets/984

208 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 19:37:18 ]
うーん、テスト漏れだね

rspec本家でもこのへん漏れるか
テスト大事だなー

209 名前:デフォルトの名無しさん mailto:sage [2010/05/17(月) 09:37:21 ]
プライベートメソッドのテストは @obj.__send__(:mes) と書くしかないよね?
っていうかプライベートメソッドのユニットテストは書くよね?

210 名前:デフォルトの名無しさん mailto:sage [2010/05/17(月) 09:45:06 ]
プライベートメソッドは公開API内部から呼ばれるんだから、
そのAPI内でそのプライベートメソッドを呼ぶようなAPIテストパターンを(全部)書くべきという考え方はある
プライベートメソッドのテストを100個書いてもAPI内の状態で失敗しないことをぜんぜん保証しない

がぶっちゃけめんどいし rspec -fs とかするとメソッド動作一覧みたいにできるので
とりあえずユニットテストはプライベートメソッドでもあらかた書くほうが間違いないんじゃねみたいな感じ
API内で呼んだときの動作をどんだけテストするかはAPIのテストを書く人に任せるということで
いやたいてい同じ人だけど

プライベートメソッドの __send__ はヘルパーメソッドにされることが多い印象



211 名前:デフォルトの名無しさん mailto:sage [2010/05/17(月) 10:19:48 ]
プライベートメソッドのテストを書かなきゃ…という規模になると、
それはライブラリを作るためのライブラリが必要な状況に近い。
とうなると設計の見直しが要るかなとそわそわする。

212 名前:デフォルトの名無しさん mailto:sage [2010/05/17(月) 10:37:03 ]
Ruby のプライベートメソッドの92%は private ではなく # :nodoc: の使用が適切です

213 名前:デフォルトの名無しさん mailto:sage [2010/05/17(月) 12:03:00 ]
そもそもprivateってRubyではどんな意図でつけるもんなの?

214 名前:デフォルトの名無しさん mailto:sage [2010/05/17(月) 14:28:36 ]
レシーバを省略したメソッド呼び出しでしか呼ばせなくしたいメソッド

215 名前:デフォルトの名無しさん mailto:sage [2010/05/17(月) 22:59:11 ]
private までテストするって、もはやテスト自体が目的になってるな
目的と手段を混同するのはよくある過ちだが

216 名前:デフォルトの名無しさん mailto:sage [2010/05/17(月) 23:26:02 ]
>>215はまだRubyの考え方に慣れてないようだ
Rubyのプライベートメソッド化は実質何も行わない
いまだにC++やJavaの論理を持ち出す人がいて困る

217 名前:デフォルトの名無しさん mailto:sage [2010/05/17(月) 23:32:25 ]
せっかくprivateにしてるのになんちゃらevalとか使って
ユーザがアクセスしやがるから困る

218 名前:デフォルトの名無しさん mailto:sage [2010/05/17(月) 23:39:02 ]
irb> class C ; private ; def hidden ; "hidden!"; end ; end
irb> p C.new.hidden
NoMethodError: private method `hidden' called for #<C:0xb74fc358>
irb> p C.new.__send__(:hidden)
"hidden!"
irb> class C ; def call_hidden ; hidden ; end ; end
irb> p C.new.call_hidden
"hidden!"

まあテストするかどうかはそのメソッドがprivateかどうかで決めるべきではないな

219 名前:デフォルトの名無しさん mailto:sage [2010/05/17(月) 23:41:36 ]
そもそも>>213への回答がない時点で「privateメソッドだから」などという理由は存在し得ない

220 名前:デフォルトの名無しさん mailto:sage [2010/05/17(月) 23:44:33 ]
微視的とはこのことだなw



221 名前:220 mailto:sage [2010/05/17(月) 23:45:38 ]
>>218へのレスね。スンマソ

222 名前:デフォルトの名無しさん mailto:sage [2010/05/17(月) 23:50:36 ]
private にしておいてよかったと思うことは特にないな
マニュアルに表示されないようにするなら nodoc があるし

223 名前:デフォルトの名無しさん mailto:sage [2010/05/18(火) 00:22:21 ]
Rubyでのprivateにはトルクスねじ的な警告の意味があるような。

224 名前:デフォルトの名無しさん mailto:sage [2010/05/18(火) 00:28:59 ]
>>216
むしろ逆に聞きたいだが、何のためにprivateメソッドをテストするの

225 名前:デフォルトの名無しさん mailto:sage [2010/05/18(火) 00:30:48 ]
>>218
そりゃわざわざ__send__まで使って
(クラスCの作者が隠した)privateメソッドにアクセスしようとするユーザが悪い

この場合テストすべきはcall_hiddenであって、hiddenではない

226 名前:デフォルトの名無しさん mailto:sage [2010/05/18(火) 01:45:45 ]
初心者スレ落ちそうなので立てて下さい・・・頼む
立てられない・・・

227 名前:デフォルトの名無しさん mailto:sage [2010/05/18(火) 04:44:21 ]
>>213に誰も答えない件について

要は用途上のコンセンサスがないんだな

228 名前:デフォルトの名無しさん mailto:sage [2010/05/18(火) 05:01:40 ]
テストの種類や粒度についても特に考慮されてないと思います
最終的に「製品」に付属して提供するテストはパブリックメソッドの機能テストだけでいいよそりゃ
インストール時に1回しか実行されないんだからね

229 名前:デフォルトの名無しさん mailto:sage [2010/05/18(火) 05:04:52 ]
Ruby 初心者スレッド Part 37
pc12.2ch.net/test/read.cgi/tech/1274121477/

230 名前:デフォルトの名無しさん mailto:sage [2010/05/18(火) 06:10:44 ]
>>225
この場合、クラスCを再オープンしてcall_hiddenを定義したのはユーザーだと思う



231 名前:デフォルトの名無しさん mailto:sage [2010/05/18(火) 07:52:13 ]
>>227
1つ下の>>214ですでに書かれている件について

232 名前:デフォルトの名無しさん mailto:sage [2010/05/18(火) 09:29:25 ]
それは形式的なものだろ
何のためにそれを選ぶのかについての答えがねえ

233 名前:デフォルトの名無しさん mailto:sage [2010/05/18(火) 12:44:36 ]
>>214ではないが、レシーバを省略するということは、
そのインスタンス内からしか呼び出せないということなのだが。
その縛りを入れることが目的という回答を否定させても困るだろ。

234 名前:デフォルトの名無しさん mailto:sage [2010/05/19(水) 08:42:59 ]
不完全にしておよそ正しくないプログラミング言語小史
www.aoky.net/articles/james_iry/brief-incomplete-and-mostly-wrong.htm

> 1995 オーストラリアがモヒカン刈りの戦士とティナ・ターナーの疾走する砂漠になるという漠然
>とした啓示の実現を回避するため、ユキヒロ・“Mad Matz”・マツモトがRubyを作る。この言語は
>後に本当の作者であるデビッド・ハイネマイヤ・ハンソン(DHH)によりRuby on Railsと改名された。
>[MatzがRubyという言語を作ったというくだりは間違いだから次に改訂するときに取った方がいいよ DHH]

はは、わろすw

235 名前:デフォルトの名無しさん mailto:sage [2010/05/19(水) 10:40:00 ]
自作のautotest(というかautospec)用スクリプトを .autotest ファイル内で require すると
autosepc してもファイル更新待ちにならずに即終了する

自作のスクリプトのどっかでエラーが起きてるんだと思うんだが、
バックトレースとかが一切表示されないのでわけがわからない
このへんを表示させる方法はある?

236 名前:デフォルトの名無しさん mailto:sage [2010/05/19(水) 11:19:16 ]
begin
end

237 名前:デフォルトの名無しさん mailto:sage [2010/05/19(水) 13:01:32 ]
>>236
無理だと思うなあ

238 名前:デフォルトの名無しさん mailto:sage [2010/05/19(水) 23:57:33 ]
たしかに.autotestやらはエラーでなかったかもしれないね。
ruby .autotestしてみたら。中身はRubyスクリプトなんだし。
その前にそのrequireするファイルをエラーでないか試してみるほうがさきだけど

239 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 03:54:44 ]
ruby -d

240 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 07:42:22 ]
↓このdo〜endを使ったブロックの書き方のメリットが解らない。braceを使った場合より3文字もタイプ数が多い。
Enumerable#each do |e|
 # 何か
end

↓しかもこうなるとキモイw
Enumerable#each do |e1|
 Enumerable#each do |e2|
  Enumerable#each do |e3|
  # 何か
  end # e2 ←コメントで必死(笑)
 end # e2 ←コメントで必死(笑)
end # e1 ←コメントで必死(笑)

↓やっぱこうだよな。
Enumerable#each{ |e1|
 Enumerable#each{ |e2|
  Enumerable#each{ |e3|
  # 何か
}}}



241 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 07:50:01 ]
>>240
Enumerable#each{ |e1|
 Enumerable#each{ |e2|
  Enumerable#each{ |e3|
  # 何か
end; end; end

でいいんでね?フォントにもよるが、} より数えやすいかもよ?

242 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 07:50:51 ]
>>241 訂正
Enumerable#each do |e1|
 Enumerable#each do |e2|
  Enumerable#each do |e3|
  # 何か
end; end; end

243 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 07:55:02 ]
>>241
Lispの使用歴が長いと括弧なんて数えないらしいぞ。
非Lispユーザーさん「Lispは括弧が多くてとっつきにくいんだよねぇ。」
Lispユーザーさん「括弧?そんなものあったかなぁ。」
非Lispユーザーさん「えっ?」

244 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 08:44:42 ]
まあ好きにしろとしか言えんのだが


○○
○○○
○○○○
○○○○
○○○
○○


という形と


○○
○○○
○○○○
○○○○


なら前者のほうが若干シンメトリック気味でいいんじゃね、という気分はある
ブロック終端をまとめて書くとがくんと急に閉じる感じがなんかちょっと

245 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 08:47:30 ]
>>244

h = {k1 => v1,
   k1 => v2,
   k1 => v3}

と書くと怒るタイプ

h = {
   k1 => v1,
   k1 => v2,
   k1 => v3
}

こう書く

246 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 09:20:07 ]
Lisp でもあとで何か追加する可能性がある場所では閉じ括弧の前で改行しておくことがあるよ
(list
(foo 1)
(bar 2)
(baz 3)
;; ここに値が追加されるかも
)
みたいに。 Structure Editing すればいいんだけどこちらの方が楽なことが多いし。
Lisper が普段括弧を気にしないのは Structure Editing と auto indent の関係もあると思う。
と、これは do 〜 end と { 〜 } とは関係ないか。

ブロックに do 〜 end を使うのは他の場所で { 〜 } を使っていることとも関係あると思う。
Hash の { 〜 } とブロックの括弧が同じでもいいのか、別にした方が読みやすいか、とか。
言語によっては記号を多用して {< 〜 >} としてみたり、 << 〜 >> みたいなリテラルがあったりもするけど
ASCII で使える記号は少ないので、できるだけ簡単な記号は残しておきたいとか。
まあこのあたりは言語の作法にしたがっておけばいいんじゃないかと思う。

247 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 09:50:58 ]
普段はdo endを使うことで、
ここぞという時のブレースを浮かせたいココロがあるんじゃないかね
File.openとかcatch〜throwのブロックは特にブレースを使うって規約を聞いたことがある

タイプ量は許容範囲だと思う
っていうか普通のキーボードだとブレースの入力にはシフトキーを使うわけで
実質1文字の差しかない

248 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 10:12:11 ]
前田さんの規約に従ってる

249 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 11:19:53 ]
買います?

プログラミングRuby 1.9 ?言語編?: Dave Thomas with Chad Fowler and Andy Hun
www.amazon.co.jp/dp/4274068099/

250 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 11:27:49 ]
やっと出るのか……



251 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 11:42:04 ]
オライリーの「プログラミング言語Ruby」とどっちがいいの?

252 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 11:47:14 ]
ピッケル本の1.9版か。

オライリーの方はrubyの組み込みかたとかの解説あったっけ?

253 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 12:02:40 ]
>>252
ない。フラナガンのやつは言語仕様が中心で、
MRIとか処理系の話はメインでない

254 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 12:42:14 ]
>>245
v3 の後ろに , がないとめっちゃ怒るよ。俺は。

255 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 12:55:11 ]
前田さんの規約狂ってる

256 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 12:58:40 ]
>>254
きめえ
そんなこと言うと配列の最後に要素がひとつ省略されているとみなして nil 挿入するぞ

257 名前:デフォルトの名無しさん mailto:sage [2010/05/20(木) 22:07:01 ]
>>255
どの辺が?
言うほどおかしな箇所は見当たらなかったが


258 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 00:20:02 ]
JRuby良さげ

259 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 07:14:43 ]
shugo.net/ruby-codeconv/codeconv.html

* ソースコードの整形
** インデント
プログラムを読みやすくするため、インデントを適宜行う。インデント
幅は2とする。また、インデントにはスペースのみを使用し、タブは使用
しない。(環境によりタブ幅が異なるため。)

> 環境によりタブ幅が異なるため。
はーいせんせー、わかりませーん。
タブを使えばバイナリレベルで同じソースファイルを各個人好きなタブ幅で表示できるので、
その方が開発者は快適なのではないでしょうかー。

260 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 07:20:35 ]
shugo.net/ruby-codeconv/codeconv.html
** 一行の桁数
> 一行の桁数は最大80桁までとする。
はーいせんせー。流石に80桁は狭すぎるんじゃないでしょうかー。
メリットがわかりませーん。



261 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 07:25:07 ]
** コメント
> メソッド定義の中にはコメントは記述しない。(コメントが必要だと思わ
> れるようなコードにはリファクタリングを行う。) ただし、クラス・モ
> ジュールやパブリックなメソッドには仕様をRDocス タイルで記述する。

はーいせんせー。実際の開発ではパフォーマンスとかの兼ね合いでいつもリファクタリングできるとは限りませーん。
必要なコメントは書くべきだとおもいまーす。
あと、コメントとドキュメントはまったく違うものでーす。Ruby的にはおんなじコメント文ですけどー。
そこんとこちゃんと切り分けて説明すべきではないでしょうかー。

262 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 07:28:38 ]
> * メソッド呼び出し
> メソッド呼び出しの引数リストには括弧を付ける。ただし、引数がない
> 場合は、括弧を省略する。また、printやputsやpの 場合は、引数の括弧
> を省略してもよい。

> * return
> メソッドの値を返す場合は、必ずreturnを使用する。 また、returnの括
> 弧は省略する。

はーいせんせー!メソッドの引数は括弧つけなきゃだめなのに、どうしてreturnには括弧は省略するんですかー。
なんかポリシーが破綻してるきがしまーす。

と言う感じで、こんなのWebに公開すべきじゃない。

263 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 07:31:33 ]
前田さん?と言う方には面識はないが、なんかふるーい、いにしえのC言語をあれこれを引きずり過ぎてるという印象。
Lispとかやったこと有るのかな?
RubyはLispだよ。

264 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 07:35:06 ]
他人のしかも3年前の規約に突っ込みとかずいぶん暇そうだな

265 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 07:39:00 ]
だってニートだもん。
とまぁ、書き方は気に障ったかもしれないので誤ります。
けど、この規約に色々と疑問点があるのは事実。
出来れば修正してほしい。


266 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 07:55:13 ]
横に長いメソッド定義は単純に読みづらいので、改行可能な位置で適当に改行しておくというのがメソッドチェーンしがちなRubyには合うとは思うんだが、じゃあ何文字が適当かというとうまい根拠もないんだよな

267 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:00:42 ]
実際のプロジェクトに適用する際には、このコーディング規約をカスタマイズして用いることを推奨する。

268 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:03:03 ]
メソッド10行超したら機械的にでも分割しとけ
ただし単純要素列挙でメソッド呼ぶ形式のcaseは許可

case x
when cond1 then mes1
when cond2 then mes2
when cond3 then mes3
when cond4 then
  ……
when cond5 then mes5

とか20個くらい続くハブメソッド

269 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:11:39 ]
前田さんの規約は万人が遵守すべきものとは思わないが、
Ruby界では権威のある人だけに、こういうのを公開してると
影響が大きいんだよな。


270 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:14:36 ]
「守ったほうが実は得するもの」と「ポリシーがない場合に従う例」を混ぜこぜにしてるのが難点



271 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:15:50 ]
ここで騒いでも、1ビットたりとも改善されないことだけは確かだ

272 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:16:14 ]
>>268
分割したメソッドはプライベートにすべきですか?
というような話がちょっと上の議題の根っこだった気もする

273 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:17:27 ]
>>259
インデントを全部タブでするつもりならそういう規約もなくはないと思う。
スペースがまざると地獄。
>>260
画面幅 80 桁ならまずどこでも表示できる。
Ruby のコードは横に長くなるという気持ちはわかる。
そのためのインデント幅 2 でもあると思う。
>>261
コメントよりもコードで、というのは Smalltalk あたりからの文化だと思う。
あと、あとで直そうっていうのは往々にして直されないので
最初から綺麗に書こうという方が規約としてはいいんじゃないだろうか。
ドキュメントとコメントの話は別の話だというのは確かに。
>>262
return はメソッドじゃない。
p, puts, print は統一感がないけれど慣習。戻り値を使うかどうかで分ける人もいる。
return 必須は大人数だとこっちの方が便利なこともあるんだろう。

前田さんは net/ftp の作者で昔からの Rubyist だよ。
Sather とか他の言語の話をしているのもちらほら見掛ける。
あと、この規約と Lisp 文化はまったく関係ない。

274 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:19:59 ]
>>272
Ruby の private は「ユーザーに使ってほしくない内部メソッド」の意図を示さないんだってば
そういう意図を示す機能は Ruby には無い
RDoc の nodoc がやや近いが

275 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:20:07 ]
最近の一番大きな仕事はIPAのRuby言語仕様だろうね。




276 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:20:43 ]
規約なんて局所的に宗教論争を抑えるくらいの現実的効能しかないのに
それを肴に宗教論争おっぱじめるとかもうね…

277 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:21:29 ]
肴としてつつく程度なら楽しいけど、叩き始めるとか、もうね。


278 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:34:29 ]
>>274
普通のクラスレベルでは「基本的にユーザーに触ってほしくないメソッド」
くらいの機能と理解しておいていいんじゃないかなあ。
特殊な使い方はとりあえず置いておいて、
send とかを使って呼ぶのはもうわかっててやっているものとして。
そもそもの話として、 Ruby の private は
Smalltalk の private カテゴリくらいのゆるいものだから
Java とかの言葉で説明しようとすると破綻すると思う。

279 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:40:04 ]
実際問題としてどっかのライブラリの private のメソッドを __send__ で呼ぶ羽目になることはけっこう多い
ぜんぶ public でいいじゃんと思うのだが
というか private とかあるからみんなマニュアル書かねえんだよ

280 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:41:44 ]
>>274
いや、意図は示せるんじゃね。
ユーザがどうするかは別で



281 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:53:47 ]
「マニュアル書きたくないからこっから下全部 private」というのはなくもないわけでもなく

282 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 08:56:32 ]
>>273
>コメントよりもコードで、というのは Smalltalk あたりからの文化だと思う。

間違いではないですが、一方でメッセージパターン(シグニチャ)に続いてコメントを書くことも
一般には推奨されています。念のため。

www.druby.org/ilikeruby/best_practice.html
“メソッドの先頭にコメントを書くことで、コードから読み取れない重要な情報を伝えるようにしよう”

283 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 09:30:06 ]
>>279
>実際問題としてどっかのライブラリの private のメソッドを __send__ で呼ぶ羽目になることはけっこう多い
これホント?
何かがおかしいと思うのだけど。


284 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 12:11:39 ]
>>277
いや、実際前田さんの趣旨としては
「ゼロベースから作るよりはなにか叩き台でもあった方が」ぐらいの気持ちじゃね?
ver0.0.1的な。

不幸なのは他にそういうのを公開してる人が出てこなかったのと、
前田さんが有名人だったがためにver0.9.8ぐらいの受け取り方をされてることで。

285 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 12:19:32 ]
他にもいくつかあるよー

286 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 12:38:03 ]
>>283
一度だけprivateメソッドを外から呼び出したことがあったが例外だな

287 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 13:17:19 ]
とりあえずはーいせんせーがこの上なくムカついた

80文字とかなまぬるいから78文字にすべき

288 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 13:18:07 ]

前田さんてまだ生きてんの?

289 名前:273 mailto:sage [2010/05/21(金) 20:57:10 ]
>>282
おっとそうでした。 Smalltalk Best Practice Pattern は一応読んだのに
Intention Revealing Message ばかり頭に残っていた。
SBPP だと、そういうコメントの例として
「メソッドの依存関係」とか「変更の理由」が挙がってた。
あと見掛けるのはアルゴリズムの出典論文とかかなあ。

290 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 22:37:43 ]
>>288
ttp://twitter.com/shugomaeda



291 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 00:01:19 ]
>>265
修正して欲しいならこんなところで煽ってないでメールするなりなんなりしろよ

>なんかふるーい、いにしえのC言語をあれこれを引きずり過ぎてるという印象
お前これ言いたかっただけだろ

292 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 00:10:09 ]
個人的なコーディング規約なんだから
修正しろと言われても困ると思うのだが・・・

293 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 00:18:46 ]
小人閑居してなんとやら

294 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 00:45:38 ]
むしろ修正した規約をまとめてwebに出して,こっちの方がいいだろ? と
問いかけたらどうだ.ほんとに良いなら基準になるし,ダメならダメ出しか
無視されて終わり.どっちに転んでも損無し.

295 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 01:30:56 ]
批評される側に立つなんてとんでもない!

296 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 07:02:03 ]
Wikipediaみたいにコーディング規約を議論しつつ良さげなのを決めるのはどうかとおもったけど、
戦争が始まってしまうか、人が寄り付かなくなるな…

297 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 07:02:44 ]
訂正
×Wikipediaみたいに
○Wikipediaみたいなシステムで

298 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 08:40:06 ]
>>296
気取るつもりはないけど典型的な自転車置場の議論
ttp://0xcc.net/blog/archives/000135.html
だからなあ。

多分タブ幅を決めようとしたあたりで頓挫

299 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 10:14:20 ]
>>262
>はーいせんせー!メソッドの引数は括弧つけなきゃだめなのに、どうしてreturnには括弧は省略するんですかー。
>なんかポリシーが破綻してるきがしまーす。

これまったく意味がわかんないんだけど、メソッドとreturnでなんでポリシーを同じにしなきゃいけないの?

300 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 10:20:18 ]
未だにreturnを書くかどうか悩む



301 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 10:23:45 ]
Cの規約では、うっかりretrunとかしてしまった時にコンパイルエラーにできる、
という理由で、returnの値はカッコで囲まない、としてるものが多いな。

ruby では理由にならないが。

302 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 10:24:23 ]
しかしつまらんスレだな

303 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 12:12:36 ]
returnはメソッドじゃないのにカッコで囲む理由がないだろ

304 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 13:50:01 ]
はい燃料投下きました〜

305 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 14:03:25 ]
前田さんの規約だけどRails対応版ってないの?
モデルやコントローラ内の記述順序の方針を参考にしたい

306 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 14:06:48 ]
そもそもRubyでreturnに括弧つけるとエラーになる場合もある
タプルを返す時に

307 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 14:48:25 ]
return自体をめったに書かない。


308 名前:デフォルトの名無しさん mailto:sage [2010/05/22(土) 23:59:43 ]
少なくともメソッドの最後には絶対に書かない

309 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 03:31:30 ]
悪臭

310 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 10:47:18 ]
ここの規約で return 書くって書いてあったから書くことにした。
shugo.net/ruby-codeconv/codeconv.html

少なくとも意識的に返り値を返したい場合は return 書いたほうがいいと思う。
ソース読んで「偶然返ってるだけなの?それとも返したい意図があるの?」っていうのが分かるしね。

少なくともコードがドキュメントとか言って得意げな奴らは書くべきだ。



311 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 11:00:39 ]
ライブラリ作ってると非常に厄介な問題
どういうつもりでその値を返してるのかわからんからね
意味のある値を返してることを示すためだけの専用クラスに包んで返すパターンとかも見かける

312 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 11:06:33 ]
でも実際は現場でreturn書く奴はほとんどおらんよ。
もっともらしい思想を貫くのは勝手だけど、仕事で使うなら周に合わせないと駄目。

313 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 11:08:58 ]
道理でみんなScalaに逃げちゃうはずだよ
こんな液状化したあやふやな地盤じゃコード書きたくないだろう

rubyは1画面に収まるシェルスクリプト++的に使うのがベストだね

314 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 11:14:35 ]
rubyで大規模開発となるとRails必須だから。

315 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 11:14:39 ]
おまえがそう思うのならおまえはそうすればいいだろう。

316 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 11:46:59 ]
なぜRubyではreturn必須にしなかったのだろう
理由というか、思想について知っている人がいれば教えて欲しい

317 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 12:12:00 ]
Perlを踏襲、じゃないの?


318 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 12:25:32 ]
lisp とかの流れでは?

319 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 12:28:03 ]
単純に冗長だからとか
return 必須じゃ tap も魅力半減

320 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 12:31:20 ]
tap関係ないぞ



321 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 12:36:05 ]
>>316
Lisp の影響だと思っていた。
ちなみに、 RnRS Scheme だと副作用を目的に呼び出す手続きの戻り値は
不定ということになっていて、ある処理系が偶然返してきた値に依存するような
プログラムは可搬性がないということになっている。
戻り値に意味があるかどうかはドキュメントで決められている。
最後の式の値がそのまま返るというのは関数型言語では普通。
Scala もこうなる(メソッドの型が Unit だった場合は自動的に () が挿入されたりするけど)。
こちらの流儀だと基本的に return は書かない。
他の言語だと、例えば Smalltalk は ^ を使って値を返さないと self が返ることになっている。
この流儀なら、意味がある値を返すときは return を書く。

322 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 13:19:49 ]
Cも実はreturn不要

323 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 13:28:29 ]
return 書けなやつらは、mapメソッドとかに引き渡すブロックにも return を書いてるのか?

324 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 13:33:48 ]
メソッドとクロージャの違いとかわからない人は書き込まないで下さい

325 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 13:42:16 ]
>>322
戻り値の型が存在して、return なしに関数の終わりに到達した時の値は未定義だぞ >C

> If the } that terminates a function is reached, and the value of the function call is used by the caller, the behavior is undefined.

値を使わなければ問題は無いが

326 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 13:59:43 ]
>>324
クロージャの概念がわからないやつは書き込むなよ

327 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 14:16:17 ]
returnしたらどうなるかやってみりゃいいじゃん

328 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 14:25:42 ]
へー、こんな挙動するんだ。知らなかった。
そもそもクロージャ書くときなんてタイプ数減らしたいんだから書こうと思ったことすらなかったけど。

irb(main):004:0> (1..10).select {|i| (i % 2 == 0)}
=> [2, 4, 6, 8, 10]

irb(main):005:0> (1..10).select {|i| return (i % 2 == 0)}
LocalJumpError: unexpected return
from (irb):5
from (irb):5:in `select'
from (irb):5:in `each'
from (irb):5:in `select'
from (irb):5
from :0


329 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 14:28:56 ]
メソッドは自分以外の誰かに呼ばれる処理なんだから、戻り値に意味があるか無いかはどこかで示さなければならないよね。
別にそれを示すのはドキュメントでもいいと思う。
コードがドキュメントとか得意げに言う奴は今の Ruby の仕様のだと return 書いといたほうがいいと思う。(意図をコードに残せ)

とは言え、Rubyってそういう文化圏じゃないよな。
「わー、動いた、パチパチ」で十分許される世界なんだから、もともと誰もまともなドキュメント書く気なんて無い。

330 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 14:30:23 ]
クロージャだとnextで値返すんだっけ



331 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 14:31:07 ]
(1..10).select {|i| break (i % 2 == 0)} => false

332 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 14:32:56 ]
reuturnの有無でここまで議論する情熱があるなら、
wordpressみたいなソフトでも作ってくれよ
生産性のない情熱だなw

333 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 14:35:45 ]
>>329 インタプリタの意図がそもそもおまえにはわかっていない

334 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 14:37:34 ]
インタプリタというより、スクリプト言語と言った方がいいな
「素早く書けて、すぐに動かせる」がスクリプト言語の条件であり目的だな

335 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 14:40:31 ]
>>329
本当にコードに語らせたいのなら、
戻り値に意味があるかどうかはある程度メソッド名からわかるようにしないと駄目じゃね。
中身を読まないと意味がわからないのはメソッド名がわるい。
例えば、標準で使われているメソッド名と同じ名前のものは
だいたい似たようなインタフェースにするとか。
あまり突き詰めても仕方ないから、俺はそれはコメントに譲るけど。

>>330
ドキュメントの「手続きオブジェクトの挙動の詳細」のあたりを参照。


336 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 14:58:23 ]
Rubyは日本で生まれたのに、
Railsが日本で生まれなかった理由がなんとなくわかるな

337 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 15:01:31 ]
まあそもそもみんな Rails 好きかというとそういうものでもないんだけどね

338 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 15:42:28 ]
RailsというよりActiveSupportとかActiveRecordが好き

339 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 19:06:39 ]
それって他の言語のフレームワークにはない機能なの?

340 名前:デフォルトの名無しさん mailto:sage [2010/05/23(日) 23:12:43 ]
Rails以外でRuby使う機会無いんだけど。価値も無いし。



341 名前:デフォルトの名無しさん [2010/05/23(日) 23:22:27 ]
確かに ActiveRecord はとてつもなく便利だ。
あれこそ動的言語の良さを一番よく伝えてる気がする。
静的型言語ではなかなかああは出来ない。

342 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 00:19:08 ]
>>259
>>‎ 環境によりタブ幅が異なるため。
> はーいせんせー、わかりませーん。
> タブを使えばバイナリレベルで同じソースファイルを各個人好きなタブ幅で表示できるので、
> その方が開発者は快適なのではないでしょうかー。

その疑問は、タブとスペースまぜてリリースするアホがいなくなれば俺はまだ許せるんだが

343 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 09:18:58 ]
あとデフォルトのハードタブの幅8がちょっと大きすぎるという問題が

344 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 09:29:44 ]
アセンブラ使ってたときはタブ8が快適だった
CとかJava使ってるときはタブ4が快適だった
PythonとかRuby使い始めてタブ2が快適になった
これは進化だと思う

345 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 11:16:09 ]
ほう、ならばインデントはもう要らないな…

346 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 12:09:12 ]
スペースを混在させずにタブだけ使うとしても、
文の後にくっついてるコメントはタブ幅の設定によっては開始位置が揃わないよね
あれイラッとくる

347 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 12:11:07 ]
行頭以外でタブは使わない

348 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 13:13:18 ]
Ruby 使ってるとスペース使っちゃうのでタブ使わなくなった


349 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 15:23:36 ]
>>345
ワンライナーの時代と聞いて

350 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 19:49:28 ]
そのうちタブじゃなくて1スペースしか空けなくなるだろう



351 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 21:00:51 ]
インデントやらスペースやらは全部フォーマッタ任せだわ。
餅つきみたいにぺっったん!ンパッンパッ、ぺっったん!ンパッンパッ、ぺっったん!
と言う感じ。
# どういう感じだ(w

352 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 21:02:52 ]
3タブが最高とか言ってた奴とかほんとセンス無いと思ったわ。ってか、あれ誰だったっけ?

353 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 21:08:08 ]
>>352
>3タブが最高とか言ってた奴とかほんとセンス無いと思ったわ
そう思った理由は?

354 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 21:09:08 ]
正直そこら辺はどうでもいいな
2でも3でも4でも5でも何がどうにかなるわけじゃない

355 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 21:49:08 ]
>>353
主観はどうでもいいからコードのインデントなんぞ素直に長いのに巻かれとけって意味でセンス無いと思った。
さらにハードタブとか使われるとdiffも取りにくくなったりするし。
個人でやるなら別にいいんだが、多数に薦めて混乱を助長する所がありえんと思った。

俺もローカルでコードリーディングするときには好きな設定に変えてるけど、みんなでやるときはみんなに合わせないと駄目だろ。

356 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 21:52:59 ]
> さらにハードタブとか使われるとdiffも取りにくくなったりするし。

ソフトタブだとdiff取りやすいのか?

357 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 21:54:54 ]
diff -b とか -w とか知っとけ。


358 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 21:58:33 ]
イヤだと思うなら、使わなければいい
相手も勧める程度で、強要してるわけじゃないんでしょ

そういえば、一時期試してみてたw
確かにendが揃って良い感じなのは分かったが、
デファクトスタンダードの2を上回る優越性は無いなあという感触

359 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 22:02:47 ]
個人でやるとか好きな設定として3タブを叫んでいる人はいたけど規約にしてた人はいたかなぁ
tdiaryもいま見たらインデント2タブ4の混在インデントだった

360 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 22:03:41 ]
>>357
そんなの使うかよ。
svn diff か redmine の diff 使うし、チームの人間にそんなしょーもないオプション強制させんな。ボケ。

>>358
迷惑撒き散らしてるだけなのに「美的感覚持ってる孤高のマイノリティ」みたいな感じで騒いでるのがイラつくんだよ。



361 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 22:06:10 ]
あれはネタだろう
イラつくとかどんだけ沸点低いんだ

362 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 22:10:26 ]
あーくだらね

363 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 22:16:46 ]
3タブってのは、ハードタブで勝手に揃えればいいじゃん派でしょ
メインの人たちがスペースとタブを混在させてるのが迷惑なんだよね

364 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 22:21:26 ]
仮想同僚をでっちあげて発狂するのがRubyコミュニティの流行なんですか?

365 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 22:21:30 ]
なんか俺は旗色が悪くなってきたな。おれは尻尾巻いてトンズラするわ。アバヨ!

366 名前:デフォルトの名無しさん mailto:sage [2010/05/25(火) 00:30:08 ]
>>360
> 迷惑撒き散らしてるだけなのに「美的感覚持ってる孤高のマイノリティ」みたいな感じで騒いでるのがイラつくんだよ。
俺はお前の勝手な決めつけの方がイラつくな

367 名前:デフォルトの名無しさん mailto:sage [2010/05/25(火) 02:24:30 ]
男は黙って1タブ

368 名前:デフォルトの名無しさん mailto:sage [2010/05/25(火) 14:14:48 ]
Railsリリース早すぎワロタw

369 名前:デフォルトの名無しさん mailto:sage [2010/05/25(火) 15:44:09 ]
それだけRailsの進歩が早いということだな、うんうん

370 名前:デフォルトの名無しさん mailto:sage [2010/05/25(火) 16:04:44 ]
テスト駆動の限界をみた。極端な崇拝はよくないな



371 名前:デフォルトの名無しさん mailto:sage [2010/05/25(火) 22:15:25 ]
>>360
>svn diff か redmine の diff 使うし、

svn diff でも -b や -w が使えるだろ。
初心者だから今まで知らなかったというだけなんだから、教えてもらって感謝こそすれ逆切れすることないのに。

372 名前:デフォルトの名無しさん mailto:sage [2010/05/25(火) 23:15:44 ]
混在させるのが問題ってなら、解決策は一つしかない
次善の妥協案だとしても、ハードタブ使うな

宗教論争や好みは置いておいて、現実的な問題として考えると
スペースでのインデントには、ぶっちゃけ、慣れてないか機能不十分な
エディタで、カーソルやスペースキーを連打しなきゃいけない、ってくらいの
デメリットしかないと思うんだが

373 名前:デフォルトの名無しさん mailto:sage [2010/05/25(火) 23:26:39 ]
ハードタブとソフトタブがごっちゃになってないか?

374 名前:デフォルトの名無しさん mailto:sage [2010/05/25(火) 23:33:40 ]
ごっちゃにはなってないんだろうが、書き方が悪いな
ソフトタブのデメリットだけ書いてるから、否定してるように見える
メリットは自明って前提なんだな

375 名前:デフォルトの名無しさん mailto:sage [2010/05/25(火) 23:35:35 ]
この人10年以上同じことばっかり言ってそう

376 名前:372 mailto:sage [2010/05/25(火) 23:38:00 ]
推敲したよ!

×
スペースでのインデントには、ぶっちゃけ、慣れてないか機能不十分な
エディタで、カーソルやスペースキーを連打しなきゃいけない、ってくらいの
デメリットしかないと思うんだが


スペースでのインデントのデメリットには、ぶっちゃけ、慣れてないか機能不十分な
エディタで、カーソルやスペースキーを連打しなきゃいけない、ってくらいしかないと
思うんだが

377 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 00:51:00 ]
スペースをタブに変えてもいいような文章だな

378 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 00:52:56 ]
ここの人らはエディタなにつかってるの?

379 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 01:00:12 ]
男は黙ってEmEditor
4200円也

380 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 01:39:43 ]
秀丸ちゃんは?
10万行だったら、EmEditorより秀ちゃんの方が早かったYO
ただPro版だったら逆転してるかも



381 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 01:55:05 ]
エディタとしてのクオリティで、秀丸がEmEditorに勝ってるところってどの辺?
その10万行云々の、Apacheログ見るときでもそうそうない状況以外で

さらにこのスレ的には、んなWindows有償エディタの話なんてどうでもいい空気がすごい気が

382 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 02:10:23 ]
何も考えずにgedit使ってるけど、なんかお勧めある?

383 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 02:14:26 ]
>>382
それは多分ほぼ唯一の選択肢じゃないかな
それでダメならeclipseしかない茨の道
転向するならEmacsとかvimとか素敵らしい世界が広がるかもしれないけど

384 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 02:20:38 ]
別に無理して雑談しなくていいんだよこのスレで

385 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 02:23:50 ]
この流れワロタw

386 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 06:23:28 ]
今日からお前はルビ夫だ。

387 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 08:33:05 ]
>>382
geany

388 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 09:00:42 ]
vim
いまくそはクソ

389 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 20:38:49 ]
>>388
そんなに苛めないでよ、好みでいいじゃない。

390 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 22:45:15 ]
matzがemacsだからみんなemacs使ってるのかと思ったらそうではないんだな。
デフォルトの ruby-mode って 2 スペだよな。



391 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 22:57:36 ]
TextMateとvim


392 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 23:05:43 ]
emacs で viper-mode だなあ
vim script は書く気にならない

393 名前:デフォルトの名無しさん mailto:sage [2010/05/26(水) 23:45:20 ]
>>390
DHHがMacだからRails開発者はみんなMac使っていることはない

394 名前:デフォルトの名無しさん mailto:sage [2010/05/27(木) 00:05:59 ]
普通Eclipseだろ

395 名前:デフォルトの名無しさん mailto:sage [2010/05/27(木) 00:14:13 ]
いや全然

396 名前:デフォルトの名無しさん mailto:sage [2010/05/27(木) 00:24:00 ]
RubyのIDEって補完がイマイチなの多くない?
Pythonはそこそこできたり、PyScripterみたいなお手軽なのもあるのに

397 名前:デフォルトの名無しさん mailto:sage [2010/05/27(木) 00:36:24 ]
returnの次はタブ、その次はテキストエディタの話かよ

398 名前:デフォルトの名無しさん mailto:sage [2010/05/27(木) 00:57:38 ]
言語自身はの話題は1.9系への移行に失敗して停滞中だから、あんまり話すこと無いと思う。
高速化もそれに引きずられて停滞中だし、YARVはまず1.8系で入れるべきだったよな。

遅いけど、1.8系を使わざるをえない現状は結構キツイ。

399 名前:デフォルトの名無しさん mailto:sage [2010/05/27(木) 00:58:30 ]
emacsからvimに転向した人をたくさん見てるんだけど
まだemacsって人気あったのか?

400 名前:デフォルトの名無しさん mailto:sage [2010/05/27(木) 01:04:39 ]
>>398
失敗ってまだこれからじゃんかよ
昔のHTMLソースの汚さを知ってるやつは、今のHTMLソースにびっくりすると思う
踏み出さないと始まらんと思うよ



401 名前:デフォルトの名無しさん mailto:sage [2010/05/27(木) 01:42:03 ]
>>400
それもこれも1.9.2次第だな。期待せざるを得ない。

402 名前:デフォルトの名無しさん mailto:sage [2010/05/27(木) 09:25:29 ]
移行に失敗って...
現状移行できてないものはほとんどが文字列まわりだろ。

1.9.2だからどうにかなるという性質のもんじゃないと思うが。

403 名前:デフォルトの名無しさん mailto:sage [2010/05/27(木) 18:24:34 ]
>>402
gem周りは最悪

404 名前:デフォルトの名無しさん [2010/05/27(木) 22:15:37 ]
Webアプリで名を馳せた言語なんだから、文字列周りに問題抱えるのはキツいよな。
Railsチームと連携とって一気に両方移行すれば、ある程度の切り捨てはあっても素早く移行できたと思う。

RailsとRuby本体の人たちってなんか溝あるよな。

405 名前:デフォルトの名無しさん mailto:sage [2010/05/28(金) 00:44:16 ]
Ruby作ってる人たちが一番興味あるのは汎用言語としてのrubyだから、じゃないかと思ってる

406 名前:デフォルトの名無しさん mailto:sage [2010/05/28(金) 06:45:39 ]
RailsはRubyからみたら寄生虫だからなぁ

407 名前:デフォルトの名無しさん mailto:sage [2010/05/29(土) 11:47:51 ]
rubyなんてRailsが無ければ存在自体知らんかったわ

408 名前:デフォルトの名無しさん mailto:sage [2010/05/29(土) 11:51:59 ]
それは威張って言うようなことじゃなかろう

409 名前:デフォルトの名無しさん mailto:sage [2010/05/29(土) 12:50:06 ]
純粋オブジェクト指向だっていうから勉強してみたけど失敗だったかな。。。

410 名前:デフォルトの名無しさん mailto:sage [2010/05/29(土) 13:28:36 ]
Twitterの中の人がRubyよりScala採用するとか言っているから、Rubyはわるい意味で再評価されてる



411 名前:デフォルトの名無しさん mailto:sage [2010/05/29(土) 14:26:42 ]
Ruby使いがお勧めする多言語ってなんだべ?

412 名前:デフォルトの名無しさん mailto:sage [2010/05/29(土) 14:27:25 ]
失礼
×多言語
○他言語

413 名前:デフォルトの名無しさん mailto:sage [2010/05/29(土) 14:29:02 ]
Perlについて知っておくとMRIにパッチを提案するときに有利、かもしれない

414 名前:デフォルトの名無しさん mailto:sage [2010/05/29(土) 14:33:52 ]
>>411
JRuby、IornRuby

415 名前:デフォルトの名無しさん mailto:sage [2010/05/29(土) 15:12:07 ]
>>411
Scalaでしょう

416 名前:デフォルトの名無しさん mailto:sage [2010/05/29(土) 16:43:05 ]
Smalltalk, Objective-C

417 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 00:29:07 ]
scalaって静的言語なんでしょ?
今更戻りたくないなぁ

418 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 01:29:51 ]
>>417
主な比較対象はJavaと考えると、相当よくなった言語
Rubyほどに手になじんで、気が効く型支援があるのが理想だが
ちょっとムチャだよなあw

419 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 01:33:29 ]
Scalaは結構いいバランス感覚じゃないなかなぁ
Rubyよりちょっと面倒な書き方になるだけで、コンパイルエラーを得られるようになるのが大きい


420 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 02:08:54 ]
Scalaは間違いなく一時的なブームで終わる。断言できる。
学識のある人は誰も評価してないよ。



421 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 02:14:07 ]
くまくまーの人が、最近Scalaに傾倒してるな

422 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 02:19:34 ]
>>420
あれ設計したのは学者だぜ(スイス連邦工科大学教授)
むしろ、アカデミックなセンスを持った人が
実用を意識して設計した感がある

じゃあ流行るか、というと別問題だけどさ
どうなるか分からんが、まずはJavaのスーパーセットって形で
浸透が始まる可能性はあると思う

423 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 02:22:24 ]
Javaのスーパーセットとか勘弁してくれ…
Javaって文字が入るだけでマイナスイメージだわ

424 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 14:45:33 ]
Scalaが一時的なブームとか言っている前にRubyのブームが終わりつつある罠

twitter.com/yukihiro_matz/status/14835234813

425 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 15:03:08 ]
Rubyのブームなんてあったのかよ

426 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 15:56:28 ]
>>424
matzェ・・・

427 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 16:28:04 ]
>>424
普及してきた言語が互換性に引っ張られるのはよくある話
Railsのブームは、ブームというよりバブルに近いものを感じていたので
これからは分相応に評価されるようになるんでないの
というより、Rubyが爆発的に普及して一番驚いたのはMatzじゃないのかとw

428 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 17:24:57 ]
Rubyが普及したというより普及したRailsの使用言語がRubyだったでござるの巻

429 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 17:55:03 ]
matzがついったしてたの今知ったわ。

430 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 19:26:51 ]
微妙な気分になるのなら、force_encodingの嵐を何とかしてくれやー!
何とかしてくれたら、いくらでもhotになってやるぞ



431 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 19:32:38 ]
DBまわりはいまのところpostgresqlとmysql(2.9系ドライバ)なら
問題ないはず。
WEBから来る文字列のエンコーディングをどうすればいいかは、俺もよく分からぬ。


432 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 20:11:36 ]
sqlite3はまだ駄目なの?

昨日あたりからEncodingErrorにはまってて、
ようやく問題の所在を理解してきたけど、1.9きついわ・・・

433 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 20:19:56 ]
うちの会社は全てのサービスにおいてRails2.3.5とruby1.8.7で固定してる。
よほどのことが無い限りバージョンアップしないと思う。

434 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 20:26:46 ]
>>432
sqlite3はひげの山男が修正してたはずだけど、
リリースされてはいない気がする。


435 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 20:28:48 ]
railsってtennyバージョンアップでも機能追加してくるから困る…
フレームワークとかライブラリの類は純粋なバグフィックスと機能追加・変更のリリースは分けて欲しいところ。

436 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 20:40:03 ]
1.9は本当にキツイ

437 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 20:55:35 ]
Ruby1.9に移行しない10の理由まだー?

438 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 22:11:45 ]
Rails3は1.9メインにするって話だけど、今の状況ヤバイのかもしかして・・・

439 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 22:53:57 ]
>>438
その時初めて1.9がメインになるんじゃないの?

440 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 23:15:59 ]
なるほどw 逆説的だな



441 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 23:28:27 ]
ブコフでたのしいRubyとRailsレシピブックとRuby逆引きハンドブック売ったら
いくらぐらいになるかな
RoRもういいわ

442 名前:デフォルトの名無しさん mailto:sage [2010/05/30(日) 23:39:40 ]
その3冊で何とかなると思ったなら甘すぎるだろ
Railsレシピビックなんて完全なリファレンスじゃんかよ
なんでリファレンスだけなんだよ

443 名前:デフォルトの名無しさん mailto:sage [2010/05/31(月) 00:07:21 ]
そういう話じゃないだろw

444 名前:デフォルトの名無しさん mailto:sage [2010/05/31(月) 00:27:17 ]
技術書とか受験参考書とか資格系の本とか
そこら辺の本は全く値が付かないと思った方がいいぞ

445 名前:デフォルトの名無しさん mailto:sage [2010/05/31(月) 00:43:51 ]
なら「Railsを学ぶための3冊」というお題ならどれを挙げる?
アジャイル本3版は確定かな?

446 名前:デフォルトの名無しさん [2010/05/31(月) 05:14:57 ]
>>433
正解

447 名前:デフォルトの名無しさん mailto:sage [2010/05/31(月) 07:27:10 ]
2.3.8入れたほうがいいだろ。3に向けて廃止予定な機能はワーニングでるらしいぞ。

448 名前:デフォルトの名無しさん mailto:sage [2010/05/31(月) 07:43:45 ]
>>424
元記事は1.9.xが信用されてないってのと1.8.6が信用されてるってだけの話に見える。
Rails界隈で訊けばそうなるよね。

449 名前:デフォルトの名無しさん mailto:sage [2010/05/31(月) 09:26:08 ]
業務では「最新バージョン」は求められないからなー

450 名前:デフォルトの名無しさん [2010/05/31(月) 13:55:32 ]
ワーニング



451 名前:デフォルトの名無しさん mailto:sage [2010/05/31(月) 17:12:15 ]
ワールドワーツー

452 名前:デフォルトの名無しさん mailto:sage [2010/05/31(月) 18:42:04 ]
ワーミングアップ


453 名前:デフォルトの名無しさん mailto:sage [2010/05/31(月) 20:01:38 ]
「ワーニング」ネタを見たのは fj だった
そういえば、NNTP って使ってねー
初めて 2ch を見たときは、NNTP あるからイラネーって思ったけど、この隆盛だしな
なんもかんも HTTP になってしまった
Web メールを使う人も多くなった

454 名前:デフォルトの名無しさん mailto:sage [2010/05/31(月) 20:22:05 ]
>>449
業務で求められなくても、おれの心が求めてるんだよ!

455 名前:デフォルトの名無しさん mailto:sage [2010/05/31(月) 21:03:43 ]
This way

456 名前:デフォルトの名無しさん mailto:sage [2010/05/31(月) 22:20:38 ]
>>453
なついな。
エロ画像一杯流れててニュースグループ合ったな。
art jpだっけ?

457 名前:デフォルトの名無しさん mailto:sage [2010/05/31(月) 23:36:20 ]
alt.binaries.pictures.erotica のことかな?



458 名前:デフォルトの名無しさん mailto:sage [2010/06/01(火) 00:13:37 ]
そうそう。昔は何故か炉画像が平気で流れてた気がする

459 名前:デフォルトの名無しさん mailto:sage [2010/06/01(火) 07:00:41 ]
さすがおまいら詳しいな。

460 名前:デフォルトの名無しさん mailto:sage [2010/06/01(火) 08:13:09 ]
ということにしたいのですね。



461 名前:デフォルトの名無しさん mailto:sage [2010/06/01(火) 08:21:50 ]
OSSモデルカリキュラム導入実証
www.ipa.go.jp/software/open/ossc/seika_1005_1.html

ここにRubyの教材とかあるけど、中身すかすかだな・・・
期日がせまって適当にページ数だけ増やした学生のレポートみたい

こんなのにも税金がじゃぶじゃぶ使われてるんだろうなあ

462 名前:デフォルトの名無しさん mailto:sage [2010/06/01(火) 12:04:40 ]
>>461
それちょっと前に公募してたような

ちょっと見たけど、Rubyプログラミング入門なのに
なんでPerlとかPHPとかPyhonの文法に章をさいてるんだよw

463 名前:デフォルトの名無しさん mailto:sage [2010/06/01(火) 13:06:41 ]
> ちょっと見たけど、Rubyプログラミング入門なのに
> なんでPerlとかPHPとかPyhonの文法に章をさいてるんだよw

見てみた。ひどいなこれ。
入門者混乱するだけだろ。
東大京大でやるなら意図も汲み取ってくれるかも知れんけどさ。

464 名前:デフォルトの名無しさん [2010/06/01(火) 13:30:30 ]
IPAよ、俺を雇え。

465 名前:デフォルトの名無しさん mailto:sage [2010/06/01(火) 14:01:35 ]
最後の方にちょこっとじゃなくて、Ruby始める前にいきなりPerlやPHP、Pythonから
はじまるからな・・

466 名前:デフォルトの名無しさん [2010/06/01(火) 14:34:13 ]
>>462
>Light Weight Languageの始まりは、1987年に開発がスタートしたPerlと
>されています。

色々とすごすぎるなwww

467 名前:デフォルトの名無しさん [2010/06/01(火) 14:47:18 ]
IPAが意味不明なプロジェクトに金使うのは今回が初めてじゃないからな。
AirWebとかLunascapeとかwww

468 名前:デフォルトの名無しさん [2010/06/01(火) 14:55:07 ]
>>462
ossipedia.ipa.go.jp/doc/198/

469 名前:デフォルトの名無しさん mailto:sage [2010/06/01(火) 14:59:48 ]
さすが岡ちゃんがおるIPAやで…

470 名前:デフォルトの名無しさん mailto:sage [2010/06/01(火) 16:44:05 ]
Rubyでは、private なメソッドでも Object#__send__(:name, *args) で実行できます。
しかし 1.9 ではこれができなくなると昔聞きました。
でも今試してみたところ、1.9.1でもできるようです。
Object#__send__(:name, *args) でprivateメソッドを呼ぶのは、1.9でも有効でしょうか。
詳しい方お願いします。



471 名前:デフォルトの名無しさん mailto:sage [2010/06/01(火) 20:29:07 ]
>>461
これならFourDaysOnRails2の日本語訳ドキュメント読んだ方が無料の分マシだね・・・

472 名前:デフォルトの名無しさん mailto:sage [2010/06/04(金) 06:49:55 ]
>>470
有効。
レシーバ付き形式での__send__ではprivateメソッドを呼べなくするというのは一時試されたが、
結局取り止めになった。

473 名前:デフォルトの名無しさん mailto:sage [2010/06/06(日) 07:53:50 ]
Rubyの更なる繁栄には萌えキャラが必要だな。
あと萌えリファレンスまににゅある
Stringたん
Arrayたん
Hashたん

474 名前:デフォルトの名無しさん mailto:sage [2010/06/06(日) 08:59:15 ]
Addressable兄貴にバックを狙われて気が気でないショタっ子URIきゅん

475 名前:デフォルトの名無しさん mailto:sage [2010/06/06(日) 09:13:22 ]
*演算子を再定義するのはやめろ

476 名前:デフォルトの名無しさん mailto:sage [2010/06/06(日) 11:45:04 ]
Ruby は自由というより、無政府な感じがするよね

477 名前:デフォルトの名無しさん mailto:sage [2010/06/06(日) 12:10:36 ]
ぜんぜん

478 名前:デフォルトの名無しさん mailto:sage [2010/06/06(日) 12:15:05 ]
早くUTF8統一政府ができないものか

479 名前:デフォルトの名無しさん mailto:sage [2010/06/06(日) 19:01:08 ]
しっかし猫も杓子もGitだな…

480 名前:デフォルトの名無しさん mailto:sage [2010/06/06(日) 20:08:46 ]
>> 473
> Stringたん
> Arrayたん
> Hashたん

標準クラス(モジュール)だけでもだいぶ大所帯だな



481 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 15:21:57 ]
いじめられっこのCGIたん

482 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 22:14:30 ]
おい、Ruby商標とられてるぞ。どうしてこうなった?

北畠徹也氏が「RUBY(ルビー)」と「Apache(アパッチ)」を商標登録している件
neta.ywcafe.net/001095.html
neta.ywcafe.net/images/201006-kitahata-patent-ruby.png
neta.ywcafe.net/images/201006-kitahata-patent-apache.png

このテラ・インターナショナル 代表 北畠徹也 怪しすぎワロタww
twitter.co.jpをスクワットしていた北畠徹也 氏、実はapacheコミュニティからも締め出されてましたの巻
neta.ywcafe.net/001074.html


483 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 22:19:11 ]
>>482
追加
北畠徹也氏が「OPENSOURCE(オープンソース)」を商標登録している件(続報あり)
neta.ywcafe.net/001094.html

なんかひどい

484 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 22:22:59 ]
北畠徹也
- iGoogle に追加 検索数チャート
第 45 位(急上昇ワード - 過去 1 時間)

大人気どすな

485 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 22:33:39 ]
この手の輩が結構いたから、いまは割とまともな対応がなされるけどな

486 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 23:01:14 ]
sqlite3-ruby

=== 1.3.0 / 2010-06-06

* Enhancements
<snip>
* Improved UTF, Unicode, M17N, all that handling and proper BLOB handling [tenderlove, nurse]

長かったな。


487 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 23:50:10 ]
なんかモチベーションが下がってきちゃったときはどうすればいいでつか?

488 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 00:10:33 ]
 <○_,〆  なんかもー急にヤル気がなくなって


 ヘ○ヘ
   |∧    荒ぶる鷹のポーズ!
  /


  ○     たそがれちゃって海とか見ながら
  (ヽ┐


 ヘ○ヘ
   |∧    荒ぶる鷹のポーズ!
  /

489 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 00:16:28 ]
すっげえやる気出た気がする不思議

490 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 03:52:54 ]
>>486
おー、早速1.9にあげるか



491 名前:デフォルトの名無しさん [2010/06/08(火) 04:56:23 ]
商標法

(先使用による商標の使用をする権利)
第32条 他人の商標登録出願前から日本国内において
不正競争の目的でなくその商標登録出願に係る指定商品若しくは指定役務又はこれらに類似する商品若しくは
役務についてその商標又はこれに類似する商標の使用をしていた結果、
その商標登録出願の際(第9条の4の規定により、
又は第17条の2第1項若しくは第55条の2第3項(第60条の2第2項において準用する場合を含む。)
において準用する意匠法第17条の3第1項の規定により、
その商標登録出願が手続補正書を提出した時にしたものとみなされたときは、
もとの商標登録出願の際又は手続補正書を提出した際)
現にその商標が自己の業務に係る商品又は役務を
表示するものとして需要者の間に広く認識されているときは、
その者は、継続してその商品又は役務についてその商標の使用をする場合は、
その商品又は役務についてその商標の使用をする権利を有する。
当該業務を承継した者についても、同様とする。

www.houko.com/00/01/S34/127.HTM#s4-2

492 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 07:31:22 ]
いつものことだが、日本語に見えない文章だな
これもコードなんだろうが、バグ多そう

493 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 08:28:05 ]
わからん
だれかS式で書き直してくれ。

494 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 09:16:00 ]
MLがちょっとカオスw

495 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 10:44:52 ]
急募
ruby.comをハックしてruby-lang.orgに誘導してくれる方

496 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 10:58:18 ]
いやいや、プログラマブルじゃないものをプログラマブルにするのがまた楽しいんですわ

497 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 13:01:09 ]
どっかの宝石屋が持ってるのか。
だったら問題ないじゃない。

498 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 13:44:12 ]
>>494
kwsk

499 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 17:41:40 ]
>>495
python.orgをハックしてruby-lang.orgに誘導する方が面白い

500 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 21:59:45 ]
世界中のperlerがruby-lang.orgにハッキング出来ないか試してるのかもなw



501 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 09:53:40 ]
脆弱性テストとか何か名目がいるだろ、さすがに
ruby-lang.orgのRadiant CMSとRailsがうんぬんかんんぬん

502 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 15:40:02 ]
新名称何にすっかね
無難なところでluby, Ruloy, perl++あたりか

503 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 17:44:00 ]
ルーピーとか。

504 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 19:34:58 ]
eclipseスレに書くべきか迷ったのですが、あちらでは「Rubyの話はRubyスレでしろ」と叩かれそうなので、こちらで質問させてください

eclipse 3.5 に PyDev や EPIC を入れて、Python や Perl は書けるようになったのですが、Ruby 用のプラグインがよくわかりません…
昔はRDTというのがあったらしいですが、Aptana? RadRails?とやらに作者が行ってしまって、今は Aptana とやらしか存在しない、という話を見かけました

ですので、Aptana Studio 3 Beta なるプラグインをインストールしたのですが、設定項目に Aptana も Ruby も出てこないので、どうも動いてないような気がします
バージョンが 3 Beta だからダメなのかと思って RadRails 2 とやらも入れてみたのですが、これも同じで設定項目にRubyがでてきません

eclipse 3.5 には何を入れれば、Ruby が書けるようになるんでしょう…?
特定のバージョンのプラグインを入れないとハマるのでしょうか…
それとも、Ruby 本体だけじゃ足りなくて、RoRも入れないと動かないのでしょうか…?>eclipseのプラグイン
RoRなんて使う予定はないのですが…

505 名前:デフォルトの名無しさん [2010/06/09(水) 19:39:14 ]
RadRails 入れてもそんなに幸せになれないんじゃね?
emacs とか vim 使っとけよ。

506 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 20:24:13 ]
>>505
普段xyzzy使ってるんで、本当はemacsあたりで書きたいんですけど
補完が強くないので…>emacs
そうなると仕方なくでeclipseかなと…

と思ったけど今ググったら

RSense - EmacsやVimなどに特化したRubyのための優れた開発援助ツール
cx4a.org/software/rsense/index.ja.html

こんな便利そうなものがあったんですね…
これを導入すべくジタバタしてみようかな…

507 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:34:46 ]
RadRailsで補完の仕方がわかっても、
これじゃ使いもにならないよ!って言うのに lamda { puts 1 }

508 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 13:14:37 ]
twitter.com/yukihiro_matz/status/15760265274

>登録商標について。Rubyはおそらく成立しないだろうけど、阻止すべくアクションを取ることに(有料)。
>いろいろ聞いたけど、結論としては、早急にアクションを取るべきはむしろPerlの方ではないかと。詳細はここには書かないけど。

Matzが動き出したぞー

509 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 20:11:32 ]
ML見てないから意味わかんね

510 名前:デフォルトの名無しさん [2010/06/10(木) 22:01:17 ]

DubyというのはCharles Nutter氏が作った、静的な型があるRuby
d.hatena.ne.jp/yokolet/20100609#1276123680



511 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 07:04:16 ]
>早急にアクションを取るべきはむしろPerlの方ではないかと
どういうこと?

512 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 07:20:51 ]
neta.ywcafe.net/001095.html
neta.ywcafe.net/001096.html
Perlはすでに商標登録が公開された状態だから。

513 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 07:28:09 ]
すぐに動けば無効審判よりは軽い手続の異議申立で潰せる可能性があるからってことでは。
相手が権利を控えめに使ってくれることはまったく期待できないわけだから、
そういう意味でも早く手を打つべき。

514 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 08:11:29 ]
てか、RubyはともかくPerlやApacheが未だに商標登録されてないのに驚いたわ

515 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 22:24:21 ]
testes

516 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 22:56:32 ]
テストするな
qb5.2ch.net/operate/

517 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 16:22:51 ]
海外ではeRubyに代わるものとして、Hamlが人気あるという噂を聞くけど
正直いってその理由がよくわからない

Hamlの良い所って何?
それとも一部の人がプッシュしてるだけで、実はそれほど人気なかったりする?

518 名前:デフォルトの名無しさん [2010/06/12(土) 17:26:33 ]
>>517
書きやすい。見やすい。

519 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 17:28:11 ]
1人で何でもやっていいプロジェクトならHamlいいよね

520 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 17:29:25 ]
とてもHamlがいいとは思えないのだが。
デザイナにHTMLをまず作ってもらって、
それをテンプレートへ置き換えるという流れを想定した場合、
ERBのほうが素直に置き換える事ができる。
Hamlだとかなり面倒になるのは目に見えている。

海外で人気があるとかどうでもいいので、
自分にとって使いやすいERBを俺は使うよ。




521 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 17:32:32 ]
hamlはあまり好印象ではないけど、sassは結構好き。


522 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 20:08:26 ]

Rails3でJavaScriptとcssもERB化の流れっぽいな。
sass用済み?

いや、でもhamlも一部で流行ってるけど
テンプレをデザイナから遠ざかる方向にするのはどうなんかな?とは思う
一部のプログラマはDRYするのにDSL覚えるのも苦にしないけど、
それをデザイナにもとめるものかよとw

プログラマ主体プロジェクトならhamlでもいいんだけどね。
HTMLやCSSのコーディングも全部プログラマがやるとか

523 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 20:52:34 ]
HTMLといえばあれなんだっけ
li * 4
とか書くと
<li></li>
<li></li>
<li></li>
<li></li>
とか変換されるやつ
思い出したいけど完全に失念した

524 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 21:01:10 ]
zen-coding

525 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 21:11:46 ]
>>522
そのくらいのことも覚えられないデザイナは首にした方がいい

526 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 21:18:07 ]
hamlって全く必要性を感じないのだが

527 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 21:22:39 ]
hamlのサンプルを見たときに、これは使えねーなと思うよね、やっぱり。




528 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 21:48:12 ]
Don't think you can Replicate Yourself

529 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 03:07:00 ]
rubyなんてもうrailsでしか価値を見出せないんだから早くrailsプロジェクトに引き渡せよ
いつまでrailsの恩恵に浸って開発者面してんだ無能なコミッタどもは
効率悪すぎ

530 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 07:00:36 ]
Railsの恩恵?
別にRuby使ってくれなんて俺は頼んでないけど。



531 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 08:27:18 ]
matz 光臨

532 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 08:40:31 ]
実際、今はRails以外にも、RamazeとかMerbとかSinatraとか
いろんなWebアプリフレームワークが出てきたけど
一般的なユーザーから見て、あの辺のフレームワークってどうなのかな

今でもRuby=Railsなのか
それともすでにRailsは選択肢の1つという認識なのか

533 名前:デフォルトの名無しさん [2010/06/13(日) 13:17:50 ]
Rails一択なんじゃね?うちでは遊び以外でRails以外のFW使ってるプロジェクト見たことねぇ。

534 名前:デフォルトの名無しさん [2010/06/13(日) 13:39:14 ]
Railsは仕様の端っこのほうつっつかれて苦労した感覚しかないなぁ

535 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 15:02:01 ]
Rubyって、普通はWindowsのバッチ書くために使うもんだろ

536 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 15:14:35 ]
そうだね

537 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 16:21:19 ]
>>532
個人的なイメージ

・Merb 吸収合併された
・Ramaze 誰も使ってない
・Sinatra twitterボット用
・Rails 上場企業の主力としても使われるフレームワーク。公的機関でも採用されている
・Ruby バッチ処理、ちょっとしたスクレイピング用

>>533
うちでは、ってお前どこ中よ



538 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 21:18:01 ]
東洋大学附属白山中学校です。

539 名前:デフォルトの名無しさん mailto:sage [2010/06/15(火) 01:00:44 ]
【プログラミング】Rubyってどうなの?
tsushima.2ch.net/test/read.cgi/news/1276503791/

ニュー速にクソスレたってる

540 名前:デフォルトの名無しさん mailto:sage [2010/06/15(火) 22:12:59 ]
Ruby会議のイベントでRubyのゲーム開発のセッションを募集中だそうです。

Rubyゲーム会議2010 - Ruby ゲーム開発のハブサイト
ruby-game-dev.org/wiki/index.php?Ruby%E3%82%B2%E3%83%BC%E3%83%A0%E4%BC%9A%E8%AD%B02010


質問スレに誤爆した・・・



541 名前:デフォルトの名無しさん mailto:sage [2010/06/16(水) 15:21:30 ]
ν即は物知らずな割には、何にでも首を突っ込みたがる面倒な奴らだ。

542 名前:デフォルトの名無しさん [2010/06/16(水) 21:42:35 ]
なんちゅうしょうもない選民意識…

543 名前:デフォルトの名無しさん mailto:sage [2010/06/17(木) 07:00:14 ]
Rubyのコミッタになるにわどしたらよいですか?

544 名前:デフォルトの名無しさん [2010/06/17(木) 07:14:12 ]
rubyのWatirでIEが起動しない。
okwave.jp/qa/q5971693.html

require 'rubygems'
require 'watir'
agent = Watir::IE.start "www.google.co.jp/"

545 名前:デフォルトの名無しさん mailto:sage [2010/06/17(木) 10:11:33 ]
>543
redmine.ruby-lang.org/wiki/ruby/CommitterHowtoJa の冒頭

546 名前:デフォルトの名無しさん mailto:sage [2010/06/17(木) 10:20:27 ]
Rubyの開発チームって、Ruby開発の若手教育したりしないの?
Linuxはいよいよ老人ホームみたいになってきてやばいらしいじゃん。

547 名前:デフォルトの名無しさん mailto:sage [2010/06/17(木) 12:52:08 ]
Ruby Summer of CodeとかRuby合宿とかじゃダメ?

548 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 04:19:27 ]
ANN: ActiveScriptRuby 1.8.7の更新(脆弱性修正)
blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/47170

RubyインストールするとIEをクラッシュできるってすごいな。
どういう仕組みなんだ

549 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 04:27:24 ]
COM

550 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 06:51:45 ]
>>546
【乞食速報】セキュリティ&プログラミングキャンプ2010 IPA「無料で4泊5日の楽しいキャンプです」
tsushima.2ch.net/test/read.cgi/news/1276871948/



551 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 07:39:01 ]
>>550
> 22歳以下の学生を対象としており
30歳の学生は参加できませんか、そうですか。グスン...

552 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 07:43:41 ]
      ,―ヽ_(((((_、―
   ,/  ノ       ヽ  ~\
  /   ノ   IPA    ヽ   ~\
/   ノ           ヽ、  `ヽ
|    ノ / ̄\   / ̄~ヽ ヽ    i
|   ノ              |  ノ
\  |  <●>  <●>  (  )
 \ |      | |       i /
    |      /  ヽ       レ
   i     (●_●)      /  
    i、    ,-――-、   ・ /
    i、  <(EEEEE)> ∵/    未来のIPA Rubyの開発者は君だ!
      i、  \   ./  /
       \   ーー   ,ノ       
  ,,.....イ.ヽヽ、ー-―一ノ゙-、.
  :   |  '; \_____ ノ.| ヽ i
      |  \/゙(__)\,|  i |

553 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 07:48:24 ]
>>546
GCCですらC++に移行するのに
今時、CでOS開発なんてしなくないよな

554 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 09:04:25 ]
>>553
GCCですらC++に移行するのに
たしかに今時、CでRuby開発なんてしなくないよな・・・


555 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 12:18:47 ]
しなくないのならいいじゃないか

556 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 19:55:29 ]
猫も杓子も名前付き引数だなぁ。
でも sin(x) とかは名前がむしろ邪魔だけどむりやり function(sin:x) はどうよ。
縮めて f(sin:x)はどうよ。
もっと省略して (sin:x) はどうよ。
あれ?コロンも要らない?
(sin x) うひょー。Lispやないか〜。
名前付き引数なんていらんかったんや〜。

(baz)
(baz 1)
(baz (a 1))
(baz (a 1) (b 2))
(baz 1 2 (b 2))
(baz (c 2))

うわー。

557 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 20:51:53 ]
S式恐怖症

558 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 22:56:10 ]
>>546
20代は少なそうだけど、おそらく30代前半くらいのコミッタ増えてるし
まだ10年は大丈夫でないかな。

559 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 23:59:17 ]
新機能とかもう必要ないしな

560 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 15:09:08 ]
30代で老人って言われる業界なのか



561 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 15:13:09 ]
rakeについて質問です。

multitaskの同時実行数を制限したいです(重たい処理であるため)

SizedQueueで制限して、だいたい動作しているのですが、
たまに処理が返ってこない場合があります。

---- Rakefile ----
require 'thread'

CC = "cc"
OBJS = %w(test1.o test2.o)
QUEUE = SizedQueue.new(2)

multitask :default => OBJS

rule '.o' => '.cpp' do |t|
 compile(t)
end

def compile(t)
 QUEUE.push(true)
 puts "#{CC} #{t.source}" # 動作確認用。
 QUEUE.pop
end
----

何かの弾みに、どこかでデッドロックしているんだと思いますが、
ロジック的におかしいところがわかりません。
デバグも難しいというか、どうやればいいのか…。
ご示唆、ご教唆お願いいたします。

562 名前:561 mailto:sage [2010/06/20(日) 15:18:03 ]
(゚д゚; 三 ;゚д゚)<もしかして、ここは質問スレッドじゃない?

Ruby 初心者スレッド Part 37
pc12.2ch.net/test/read.cgi/tech/1274121477/
↑こっちいってきます。失礼しました。

563 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 15:53:30 ]
ぱっと質問見た感じだと、内容のレベル的にはどっちかというと
こっち向きかも?
とりあえず1000回rake動かしたが止まることはなかった。

564 名前:561 mailto:sage [2010/06/20(日) 16:22:43 ]
向こうを閉じて、マルチポスト状態を解消してきました。

>563
どうもありがとうございます。
こちらでは、30%くらいの確率で止まるようです。

Windows XP
ActiveScriptRuby 1.8.7
taskの数(並列処理するファイルの数)は100個くらい。
一度に100個だとCPUがキツいので、一度に2個ずつ並列処理しています。


565 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 18:17:54 ]
図書館でたのしいRuby借りてきた。
今日で基本をマスターするぞ。

566 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 18:25:10 ]
おれの「たのしいRuby第2版」、だれか300円で買わない?
カバー捨てちゃったけど結構美本

567 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 18:36:54 ]
図書館に寄贈すべし

568 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 18:56:13 ]
そう思ったけどカバーないから
同じシリーズのRubyとRailsのレシピブックももう古いからいらないのだが
もったいなくて捨ててない

569 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 18:58:15 ]
うちの近くの図書館もPHP、Python、Perlの書籍は全然置いてないのに、Rubyはやたら置いてある

570 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 19:14:54 ]
だれかがリクエストしたんだろ



571 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 19:27:16 ]
>>569
出払っている

572 名前:デフォルトの名無しさん [2010/06/20(日) 21:20:06 ]
たのしいruby読み終えたとこなんだがお勧めの本ないか?

573 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 21:30:08 ]
どや顔のmatz氏が表紙のコードの世界

574 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 21:34:55 ]
>>572
>>568からレシピブックを300円で売ってもらうと吉

まあそれは無理だとしても逆引き本の類が一冊あると便利だよ

575 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 21:59:33 ]
>>572
本読むより、自分でオリジナルのアプリを作ってみる事をおすすめする


576 名前:デフォルトの名無しさん [2010/06/20(日) 21:59:39 ]
>>573
wwwww

>>574
テンクス

577 名前:デフォルトの名無しさん [2010/06/20(日) 22:01:19 ]
>>575
参考にします

578 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 22:28:45 ]
Webにあるるびまを読んでみるとか。
特に青木さんの添削を

579 名前:デフォルトの名無しさん [2010/06/21(月) 20:51:24 ]
恋するプログラム―Rubyでつくる人工無脳探してるんだが知らないか?・・・

580 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 21:35:59 ]
>>579
それもう絶版。マイコミだったっけ?あそこは絶版早いよな。



581 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 21:40:37 ]
マイコミはまともに商品管理しているとは思えない

582 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 21:47:10 ]
ネットなら買えることあるみたいだぞ
だれか買ったやつでめちゃくちゃ高いが

583 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 21:50:34 ]
マイコミは売れてる本でも平気で絶版にする
というか、自社の本がどれだけ売れてるか調べてもいないのだろう
出版不況とか言うけど、マイコミは自分で自分の首を絞めてるとしか思えない

584 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 21:55:36 ]
いや、恋するプログラムに関しては、
そこまで売れてたとは思えないのだが・・・
自分がRubyやってるからって自分基準で物を考えすぎ

585 名前:デフォルトの名無しさん [2010/06/21(月) 22:12:00 ]
>>582
kwsk


ほかにお勧めとかありますか?・・・・・・・・・


586 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 22:12:04 ]
筆者が死んじゃったからな・・

587 名前:デフォルトの名無しさん [2010/06/21(月) 22:13:08 ]
何それ怖い

588 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 22:28:35 ]
>>586 を補足しておくと、マジでお亡くなりになっている。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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