【RoR】Rubyについて Part 41【CPAN vs RubyGems】

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
オブジェクト指向スクリプト言語Rubyについて扱うスレッドです。
仲良く使ってね。

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

= 前スレ
Rubyについて Part 40
http://hibari.2ch.net/test/read.cgi/tech/1272248179/

過去スレ・関連スレは >>2-
2デフォルトの名無しさん:2010/08/11(水) 07:14:02
3デフォルトの名無しさん:2010/08/11(水) 07:14:50
4デフォルトの名無しさん:2010/08/11(水) 07:15:09
5デフォルトの名無しさん:2010/08/11(水) 07:17:45
>>1
       _,...=.-、
    ,.-:::::::::::::::;::'::::ヽ、
  r':::::::::::::::::_;:-‐'ヾ、::ヾ
 .イ:::::::::::::;r'´     ヽ::!
 i'::::::::::::::::i     .r,ニ_ヾ
. i:::::::::::::::::::l_,. -、  :'ィナ' l
. ヽ::::::::::::;ノ rィテ-'      .l
  Tー、!   ´   ,.   ; 、 l_
   .>(ヽ      .‐ ´ ,ィ l::`:::::::::‐--
 ,r::::::::::ヽヽr ー_- 、-‐ニ.' ./::::::::::::::::::::::
./:::::::::::::;ri'ヲ--、 `く _, '!:::::::::::::::::::::::
i::::::::::::::::!  ,r ‐、 ▽   .;l::::::::::::::::::::::::
l::::::::::::::::l    7´ト、. __〃!:::::::::::::::::::::::
.〉:::::::::::::;!    /:::::i `  ̄ l::::::::::::::::::::::::

 マツモト=ユキヒロ  [Matz Ruby]
   (〜 >>1 乙 日本
6デフォルトの名無しさん:2010/08/11(水) 10:03:51
>>1

 V V
(´・ω・`) うさちゃんピース
7デフォルトの名無しさん:2010/08/12(木) 00:03:10
スレタイ長すぎないか?
8デフォルトの名無しさん:2010/08/12(木) 00:19:55
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。

                  京都大学霊長類研究所
9デフォルトの名無しさん:2010/08/12(木) 17:14:54
副題いらねー。
RoRの話されても困るし、CPANだの煽りしてどうすんだよ。
アンチRubyの仕業としか思えない。
10デフォルトの名無しさん:2010/08/12(木) 17:18:29
少なくとも前スレのラスト50を見る限りは
twitter と モルモン を入れても良かったと思う
11デフォルトの名無しさん:2010/08/12(木) 17:21:54
.  /     /  /  l:     /  l           ∨i    、   |
  l│  /  イ  ,イ.    l  ト、ヽ     / | :l :|   |  l
  | |   l_メ、」_,;./l     L  l V   ∧ /  :|/   ハ.  ト、
  | ト.  |.____ ヽ    l´ヽ{ _⊥イ イ /   /    / l/⌒ヽ
  | | ヽ | 、i┘::::i  \  | r┬┬‐┬ァ V  ,∧.   ,'  ´
  レ   ヽ!  ゝ- '   \l  i,.┘:::::iノ / ,/〉│ :| { 
.      7/l/l/   、     `'ー‐ ' ∠≠r'ノ:jノ :| |
     λ            /l/l/l ∧‐'.:|:::|  ハ ',    なにこのスレ・・・
      `、      ヽ        ,/| ::| :|:::| ./ ヽ_> 
        ` = 、         ,.イ∧'|:l.:/l:::|´         見たことない単語だらけで意味が分からない
              `>-r  =ニi´、.,_`::: |:| { |:::l
          _,.イ´ヽ.7   /  /:\;八:V:ノ
       /7:::::!  ○O'´  /::::::::/ヽ
12デフォルトの名無しさん:2010/08/13(金) 15:59:11
スレっていうかスレタイがわけのわからないことになってんな
13デフォルトの名無しさん:2010/08/13(金) 17:33:30
/                     \
              、   ヽ\    ヽ
. /  , /    !    ∨丁ヽ い   |    /二フ”
/  ! |   ィ 「\   | ハ   l |   ,′    /
l   ! | / /j/   '.  ノ, =、!// /j/      ヽ/
l   い/ ,, =x j/ ′   〈j/       /ヽ
ト ._  \_〃         :.:.:.:.}           /二フ”
l l { 下 ̄ .:.:.:.:  -‐1   ∧          /
l l T ‐个 ._     ー'  イ l|         ニニ!
l/ /|  l l//下二千ヽ_l い          ─┘
' / .′ l,ノ\/// 小、|、\ヽ\          「〉
?Ul  /  / \/ U` \ヽl i      r_|
?Ul l    i      !   ト ヽ |
14デフォルトの名無しさん:2010/08/13(金) 17:51:07
夏だな…。
15デフォルトの名無しさん:2010/08/13(金) 17:52:26
これはひどい
16デフォルトの名無しさん:2010/08/13(金) 19:05:28
なつだしRubyたんとか萌えキャラ作ろうぜ。
17デフォルトの名無しさん:2010/08/13(金) 19:06:08
んで来年のコミケットに参加だ!
18デフォルトの名無しさん:2010/08/13(金) 22:03:47
売り子はyuguiさんで
19デフォルトの名無しさん:2010/08/13(金) 22:04:59
来年はMatzのコスプレでもするか

どんな格好ならMatzぽいのだろうか?
コードの世界の表紙みたいなのか
20デフォルトの名無しさん:2010/08/13(金) 22:06:59
あれはmatzがコスプレさせられているのでわなかろうか。
冬場は革ジャンとかよく着てる気がする。
21デフォルトの名無しさん:2010/08/13(金) 22:50:12
kakutaniの人(Rubykaigiでスピリチュアルなプレゼンしてる人)みたいにフォースがどうのと
精神面でコスプレしたい
22デフォルトの名無しさん:2010/08/15(日) 19:43:40
とまってね?
23デフォルトの名無しさん:2010/08/15(日) 21:49:54
寄生虫
24デフォルトの名無しさん:2010/08/15(日) 22:15:58
なんでこんなスレタイになったのか分からん
25デフォルトの名無しさん:2010/08/16(月) 01:15:54
夏だから
26デフォルトの名無しさん:2010/08/16(月) 02:24:01
平和ってすばらしい
27デフォルトの名無しさん:2010/08/16(月) 18:00:09
暑すぎてrubykaigi行くのしんどい。
冬にしてくれ。
28デフォルトの名無しさん:2010/08/19(木) 02:06:57
1.9.2が出たんだな。それなのにこの過疎りよう
29デフォルトの名無しさん:2010/08/19(木) 08:05:21
rubyで書かれたシステムの保守を引き継ぐことになり、
この8月に入ってから慌てて覚えたんだが…
もうrubyって終わりなのかな?
30デフォルトの名無しさん:2010/08/19(木) 08:57:36
Rails祭りは終わったしピークは過ぎたね
31デフォルトの名無しさん:2010/08/19(木) 09:03:09
おまいら
ビッグニュースだぜ

20万人都市松江誕生へ 2010/08/19
ttp://www.chugoku-np.co.jp/News/Tn201008190023.html
 松江市議会は18日、臨時会を開き、島根県東出雲町との合併を決める関連3議案を賛成多数で可決した。
町議会は17日の臨時会で同様の議案を可決しており、両市町は9月上旬にも県へ合併を申請する。
県議会の議決などを経て、来年8月1日に山陰最大の20万人都市が誕生する。

 臨時会では、市が町を編入する廃置分合議案など3議案を賛成30、反対2で可決。
電算システムの統合などの合併準備費を盛り込んだ本年度一般会計補正予算案も可決した。

 東出雲町は2002年に、松江市と旧八束郡8町村を枠組みとする合併協議から離脱。
07年に初当選した鞁嶋弘明町長の要請で昨春から協議を再開した。

 議決後、松浦正敬市長は「名実ともに山陰地方のリーダーとして力を発揮できる素地ができた」と述べた。

 両市町の人口は計20万8723人(7月1日現在)。合併後は鳥取市を抜いて島根、鳥取両県で最多となる。

ttp://www.chugoku-np.co.jp/News/Tn20100819002301.jpg
32デフォルトの名無しさん:2010/08/19(木) 09:10:17
> 山陰最大の20万人都市が誕生する。

この辺がビッグニュースだなw
日本って土地余ってるんだよな実際
33デフォルトの名無しさん:2010/08/19(木) 09:36:33
中国新聞・・・
34デフォルトの名無しさん:2010/08/19(木) 11:07:02

http://twitter.com/tom2hoso/statuses/21535105450
欧州メディアの報道によると、ゾンダHHを注文したのは、デンマーク出身のDavid Heinemeier Hansson氏(30歳)。

ゾンダHHは、メルセデスベンツの高性能車開発部門、AMG製の7.3リットルV12エンジンを搭載。最大出力678ps、最大トルク79.5kgmを発生する。
車両重量は1210kgに抑えられ、0‐100km/h加速は3.4秒と世界最高峰の実力だ。
http://response.jp/article/2010/08/18/144114.html

【話題】Webアプリ『Ruby on Rails』の作者(30歳)が1台限りの"スーパーカー"を発注 [08/19]
http://toki.2ch.net/test/read.cgi/bizplus/1282177696/
35デフォルトの名無しさん:2010/08/19(木) 11:09:44
>>31-33
Ruby 利用者を優遇してくれるなら松江に移住したい
36デフォルトの名無しさん:2010/08/19(木) 13:53:18
928 nobodyさん [] 2010/08/19(木) 11:06:05 ID:2FMe7F6L Be:
http://twitter.com/tom2hoso/statuses/21535105450
欧州メディアの報道によると、ゾンダHHを注文したのは、デンマーク出身のDavid Heinemeier Hansson氏(30歳)。
ゾンダHHは、メルセデスベンツの高性能車開発部門、AMG製の7.3リットルV12エンジンを搭載。最大出力678ps、最大トルク79.5kgmを発生する。
車両重量は1210kgに抑えられ、0‐100km/h加速は3.4秒と世界最高峰の実力だ。
http://response.jp/article/2010/08/18/144114.html
【話題】Webアプリ『Ruby on Rails』の作者(30歳)が1台限りの"スーパーカー"を発注 [08/19]
http://toki.2ch.net/test/read.cgi/bizplus/1282177696/
929 nobodyさん [] 2010/08/19(木) 12:56:16 ID:3Hl96SJY Be:
I'm the co-author of Getting Real (over 40,000 copies sold)
and Agile Web Development with Rails (over 100,000 copies sold).
http://www.loudthinking.com/about.html
Ruby on Railsはすでに60万件以上ダウンロードされました。
またRailsについての書籍「Agile Web Development with Rails」
(David Heinemeier Hansson氏とDave Thomas氏の共著,
邦訳は「RailsによるアジャイルWebアプリケーション開発」,オーム社刊)は4万部になりました。
Railsのメイン・メーリング・リストには1日約200メッセージが投稿され,活発に議論が交わされています。
http://itpro.nikkeibp.co.jp/article/NEWS/20060620/241346/
930 nobodyさん [] 2010/08/19(木) 13:16:51 ID:nINbIHZK Be:
ソーシャルアプリを Rails で作る
http://twitter.com/kazuho/status/21546485090
931 nobodyさん [] 2010/08/19(木) 13:20:07 ID:nINbIHZK Be:
Ruby on Railsによるソーシャルアプリ開発 〜twitter公式ハッシュタグ #railssemiソーシャルアプリセミナー
http://www.contents-one.co.jp/social/2010/05/ruby-on-railstwitterrailssemi.php
932 nobodyさん [] 2010/08/19(木) 13:23:21 ID:nINbIHZK Be:
Ruby on Railsによるソーシャルアプリ開発 #railssemi メモ - 130単位
http://d.hatena.ne.jp/deeeki/20100527/rails_socialappli_memo
37デフォルトの名無しさん:2010/08/20(金) 08:44:20
mixiアプリワロタ
http://watayan.net/misc/ruby.png
38デフォルトの名無しさん:2010/08/22(日) 22:42:40
WEB+DB PRESS vol.58 の Rails 3 / Ruby1.9.2 記事が素晴らしすぎる件
http://www.machu.jp/diary/20100821.html
39デフォルトの名無しさん:2010/08/23(月) 11:23:07
ruby会議のチケットを買ったので行くつもりなのですが、
初日の午前、「Ruby開発会議つくば」というプログラムは、
主にコミッター向けなのでしょうか?

自分はrubyを始めたばかりなのと遠方なので、
コミッター向けなのであれば、敷居が高いので12:30のOpeningから
行こうと思うのですが・・・
40デフォルトの名無しさん:2010/08/23(月) 11:29:52
yes
4139:2010/08/23(月) 13:12:58
>>40
どうもありがとうございます。
42デフォルトの名無しさん:2010/08/24(火) 02:55:47
RubyKaigi 当日のプログラム概要等が iphone アプリでわかる
けっこう便利!! web 印刷しなくて済みそう
http://rubykaigi.tdiary.net/20100819.html#p04
43デフォルトの名無しさん:2010/08/24(火) 07:55:07
Ruby拡張ライブラリと、RubyのMSVCRTバージョン違いまとめ
ttp://www.artonx.org/diary/20100814.html

結局、以前から言われてるように
「Ruby拡張ライブラリと、Ruby、それからRuby拡張ライブラリが依拠するDLL」の
msvcrtのバージョンは合わせとけ、でFAなのかな。
44デフォルトの名無しさん:2010/08/24(火) 14:58:41
>>42
ハードコーディングじゃなくて色んなカンファレンスに対応できるアプリになるとすごい需要ありそうだな(俺にはあるw)
設定ファイルはカンファレンスのWebに置いておいたり、見たい発表をブクマできたりとか。
4542:2010/08/24(火) 15:53:45
>>44
そうですね。

たいていのカンファレンスページは、タイムテーブルのページと、各プログラムの詳細ページの一覧に
分かれていますが、
こちらは時系列順に見たいのに、サイトではジャンル順になっていたりして、紙に印刷したときにすごく探しにくいです。
それにカンファレンスによっては、前日夜まで更新したりしているし。
だれか作ってくれ

余談:
iphone(クライアント側)ではないけど、カンファレンスサイトを構築するオープンソースソフトウェア

OpenConferenceWare
http://www.moongift.jp/2009/06/openconferenceware/
46デフォルトの名無しさん:2010/08/25(水) 19:47:39
RubyKaigiってボディコンのねーちゃんこえへんのかいな(´・ω・`)
47デフォルトの名無しさん:2010/08/26(木) 02:33:47
>>46
ボディコンはたぶんしないけど、とても若々しくてかわいい娘が来られないか調整中らしい。
あと、女性比率はどんどん上がってる感触がある。Railsで、デザイナーさんに近い仕事でRubyに興味持つ人が増えたからね。
48デフォルトの名無しさん:2010/08/26(木) 02:42:04
>>44
内部でjsonファイル一つを取ってきてるので、仮にすべてのカンファレンスが
同じ方式のjsonファイルを提供すると考えれば、汎用化は十分可能。

実際はすぐに同じ方式になんてならないだろうから、、Aconf,Bconf,...ごとに
内部形式に変換する処理を定義すれば、あとはその内部形式を画面に表示する
ロジックだけ作っておけばOK。

という近未来age。
49デフォルトの名無しさん:2010/08/26(木) 03:57:22
お前らRubyスレ落ちたので立ててお願い
50デフォルトの名無しさん:2010/08/26(木) 04:37:18
スレ立てたIPアドレス(というか同一セグメント全体)って
一定期間(別の複数のIPアドレスがある程度蓄積されるまで)
スレ立て出来なくなるんだけど(ただし●は除く)
最近はスレ立て自体が減ってるから
新スレ立てが非常にしにくくなって
悪循環負のスパイラルに陥っているのが今の2ch
51デフォルトの名無しさん:2010/08/26(木) 06:40:33
>>47
嫁探しにRubyKaigi
これだ!
52デフォルトの名無しさん:2010/08/26(木) 09:22:34
初心者スレたててみた。
テンプレ貼り誰かおねがい。
53デフォルトの名無しさん:2010/08/26(木) 10:47:46
Ruby 初心者スレッド Part 38
http://hibari.2ch.net/test/read.cgi/tech/1282781922/
54デフォルトの名無しさん:2010/08/26(木) 12:55:13
トンクス
55デフォルトの名無しさん:2010/08/26(木) 13:10:01
>>53
56デフォルトの名無しさん:2010/08/28(土) 01:37:04
rubykaigi だってのに、2日間レス無し

rubiest は、ム板来ないで twitter なのかな。
rubyに限らず技術系のイベントでのスライドを見ると、
2ch 用語を連発している人は多いので
潜在的な2ちゃんねらーは多いと思うけど、
技術系菜議論はここではしないってことかな。
57規制被害者:2010/08/28(土) 01:48:00
>>56
>rubykaigi だってのに、2日間レス無し
各種の ISP が丸ごと規制されて、書き込めないユーザーが
大量に出ているからじゃね? オレもそうだし。
2ch批判要望
http://yuzuru.2ch.net/accuse/

PS: この発言はレス代行人にお願いしました。
58デフォルトの名無しさん:2010/08/28(土) 01:53:17
5956:2010/08/28(土) 01:57:01
>>57
そういえば大規模規制中でしたね。
自分は●持っているけど。

twitter はまだ慣れないので、これからもこちらに書いていくことにします。

※rubykaigi に行ってきましたが
来れない人は、twitter の #rubykaigi がけっこうリアルタイムにレポートされているので
眺めていると、面白いと思います。
ニコ動にも、今日のセッションの動画がすべて上がっているよ(rubykaigi.org からもリンクが張られている)
6056:2010/08/28(土) 01:59:53
おっと >>58 で出ていた
61デフォルトの名無しさん:2010/08/28(土) 06:57:02
このスレってコミット屋の給湯室みたいなもんでそ。
疲れたらダラダラと避難してコーヒーでも淹れつつmatz萌えとか○さんは俺の嫁とかいう場所でそ。
62デフォルトの名無しさん:2010/08/28(土) 08:53:52
>>56
全部半角小文字だとrubykitiに見えるw
63デフォルトの名無しさん:2010/08/28(土) 09:33:30
http://rubykaigi.org/2010/live/1.html

おい yugui来てるぞ、抜くなら今のうちだぞ!!
64デフォルトの名無しさん:2010/08/28(土) 09:47:05
クリスマスにこだわってんのな
65デフォルトの名無しさん:2010/08/28(土) 11:50:10
みんなLISPを使えばいいじゃない。
66デフォルトの名無しさん:2010/08/28(土) 12:13:23
記帳後援おわた
6756:2010/08/28(土) 12:17:32
mixの話はよくわからんかった
普段は会社に遅刻しまくるおれが、9:30に間に合うために7:00起きしたため
昨日は4時間しかねてないので、基調講演中、少し眠ってしまった

チラ裏ごめんなさい
現地は、昨日より人も多く、天気も良くて気持ちいいです
68デフォルトの名無しさん:2010/08/28(土) 12:20:24
matzさん初めてみたけど話し方がきついね(´・ω・`)
初見さんからみたらの話だけどね(´・ω・`)
69デフォルトの名無しさん:2010/08/28(土) 12:22:09
俺も最初Rubyコミュニティの人たちに対してそう思った時期があったけど
今はもう慣れた
70デフォルトの名無しさん:2010/08/28(土) 12:22:35
大学生の質問に
それは受け入れられない(キリ
71デフォルトの名無しさん:2010/08/28(土) 12:24:27
is_kind_ofくそ食らえ!includeまだ使ってんの?

を煮詰めていくとインタフェースとコンポジションにたどり着いて、
結局Goが色々と先を進んでるなと思わざるを得ないよね(´・ω・`)
72デフォルトの名無しさん:2010/08/28(土) 12:26:01
時代は javascript だよね
73デフォルトの名無しさん:2010/08/28(土) 12:27:34
さて
早起きしたから二度寝するか
74デフォルトの名無しさん:2010/08/28(土) 12:27:46
>>69
まぁ慣れれば、悪くないし良い効果もある…気もしてきた(´・ω・`)
食うか食われるか、吉野家みたいなところと思えばね(´・ω・`)
75デフォルトの名無しさん:2010/08/28(土) 12:30:00
開発者の中に失踪した人が何人かいるんだな
76デフォルトの名無しさん:2010/08/28(土) 12:30:46
>>75
GCされたのでは(´・ω・`)
7756:2010/08/28(土) 12:38:50
昨日の基調講演(の代わり)でも wycats から出ていたけど、
ruby core の議論が外人に伝わらない、言語がコミュニケーションギャップになっているという話があった。

現地も、去年より外人が増えていると感じる。
こういうイベントも、通訳の人(日->英)の人を増やすとかしないと、
結局日本人同士、外人同士になってしまうのでは、と思った(もちろんスタッフの方々には感謝しています)

ただ文句を言うだけではよくないので、昨日は3組ぐらいの外人のヘルプをした
(道案内、フロア案内、彼が持っていたお菓子? の説明)

ruby 初心者なのでこれぐらいしかお手伝いできない
78デフォルトの名無しさん:2010/08/28(土) 14:22:56
明日RubyKaigi行くぜ。
早起きしないといけないのがつらい
79デフォルトの名無しさん:2010/08/28(土) 16:52:22
RubyKaigiチケットだけ買って結局行かない俺の今のところのおすすめは

Metraprogrammingのやつ( http://www.amazon.co.jp/gp/product/4048687158/ の人)
Classbox, http://www.nicovideo.jp/watch/sm11902513
後Matzの基調講演(mixの話)

ちょっとC++的なカオス言語になりそうな気がしてきた
80デフォルトの名無しさん:2010/08/28(土) 16:53:48
>>77
あんたも立派なコントリビュータ
81デフォルトの名無しさん:2010/08/28(土) 17:43:49
>>76
コミッタをゴミとかいうなよ、ひどいだろが(´・ω・`)

>>79
メタプログラミングのやつ、すごい面白かったよ

The Pragmatic Bookshelf | Metaprogramming Ruby
http://www.pragprog.com/titles/ppmetr/metaprogramming-ruby

こっちで英語版が少し覗ける
82デフォルトの名無しさん:2010/08/28(土) 18:48:13
今日のまとめ
・ドラ娘を現地調達
・るび充
・中二病をこじらせてLT
83デフォルトの名無しさん:2010/08/28(土) 19:03:37
休み取れたんで、今回はじめてがっちり見たんだけどこんなにRubyコミュニティはキチガイ多かったの?
もちろんいい意味でいってる
84デフォルトの名無しさん:2010/08/28(土) 23:49:48
JRubyKaigi で質問者がもらえてた、Engine Yard のTシャツが欲しかった・・・
85デフォルトの名無しさん:2010/08/29(日) 07:03:15
今日のお勧め教えてくんろ
86デフォルトの名無しさん:2010/08/29(日) 07:09:57
>>81

これか。日本語字幕欲しスw
http://www.nicovideo.jp/watch/sm11914130
87デフォルトの名無しさん:2010/08/29(日) 11:10:12
>>86
公式のliveページだと動画と一緒に翻訳してる方のIRCのログ流れてたけど、
確かに翻訳ほしくなるな
88デフォルトの名無しさん:2010/08/29(日) 17:04:14
Railas3っていつごろ来そう?
89デフォルトの名無しさん:2010/08/29(日) 17:26:58
なぜここで聞く

公式サイトでは今週のリリースを目指すって書いてあるから、
来週中くらいじゃないか?
90デフォルトの名無しさん:2010/08/29(日) 17:49:57
ぷっぷぷー♪
が脳内ループ再生して困る
91デフォルトの名無しさん:2010/08/29(日) 18:36:18
ぽまいら乙
92デフォルトの名無しさん:2010/08/29(日) 19:29:32
とぅっとぅるぅー
93デフォルトの名無しさん:2010/08/30(月) 09:00:34
94デフォルトの名無しさん:2010/08/30(月) 23:48:26
メタプログラミング、使ってないのに飽きたw 次のトレンド教えてw
95デフォルトの名無しさん:2010/08/31(火) 00:04:13
さあ、今すぐRailsを使うんだ!ちょうどRails 3もでたし。
Rails使えばメタプログラミング飽きたとか言ってられないぞ!!
96デフォルトの名無しさん:2010/08/31(火) 16:11:52
qtruby4の1.9バイナリマダー?
MinGWじゃ謎エラーでビルドできんのよボスケテ
97デフォルトの名無しさん:2010/08/31(火) 20:11:47
近所にCG-Guestって野良無線LANが3つもあるんだがw
iPadが勝手に接続しちゃって焦るw
98デフォルトの名無しさん:2010/08/31(火) 20:12:58
激しく誤爆
99デフォルトの名無しさん:2010/09/02(木) 07:16:06
Ruby World Conference 2010 の話題はでないの?(´・ω・`)
地方過ぎるのが原因か・・・。
100デフォルトの名無しさん:2010/09/02(木) 22:53:59
Worldなのに地方なのか
101デフォルトの名無しさん:2010/09/02(木) 23:19:22
Worldに地方とか都市の概念は関係ないと思うが
102デフォルトの名無しさん:2010/09/03(金) 00:18:10
"Hello World" と打とうとして思わず "Hello Work" と打ってしまうような無職の俺でもRubyを勉強していいですか?
103デフォルトの名無しさん:2010/09/03(金) 06:33:10
いいよ
104デフォルトの名無しさん:2010/09/04(土) 19:46:50
なんかもう継承って古い気がする。
仕様にせよ実装にせよ差分を積み重ねること自体が依存性を強める諸悪の根源。
105デフォルトの名無しさん:2010/09/04(土) 20:06:31
ActiveRecord::Baseを継承しないで
委譲を使ったAdapterパターンでラッパーメソッドを全部実装するんですね?
わかりません
106デフォルトの名無しさん:2010/09/04(土) 21:30:13
>>104
まあ作りっぱなし売りっぱなしで
メンテ不要のシステムなら同意
107デフォルトの名無しさん:2010/09/04(土) 21:34:20
DataMapperは継承ベースでなくmixin(include)で使うタイプだよな

Rails3はActiveRecordなしでvalidationだけ使いたいなんてときにでもActiveModelのモジュールだけ使うとか
大分バラせるようになってたな
108デフォルトの名無しさん:2010/09/06(月) 20:07:55
おまいら過疎ってるけどどうしたん?
燃え尽きたん?
109デフォルトの名無しさん:2010/09/06(月) 20:56:28
まあ普通に毎日Ruby使ってるけど
安定してるし特にネタが無い
110デフォルトの名無しさん:2010/09/06(月) 21:06:08
オライリーのSpidering hacksに載ってるようなことってRubyでも簡単に出来ますか?
簡単にってのはPerlのように用途ごとにモジュールがすぐに手に入りますかってことですが
111デフォルトの名無しさん:2010/09/06(月) 21:08:58
まあMechanizeとNokogiriで真似事くらいはできる
あまり細分化されてないのでRubyの知識は絶対に必要

言語覚えるのが面倒なら素直にPerl使えPerl
112デフォルトの名無しさん:2010/09/07(火) 03:51:21
> 言語覚えるのが面倒なら素直にPerl使えPerl
セッテイをするだけで使える部分が広いというのにはPerlに一日の長がありまくるな
RubyはユーザーにRubyスクリプト書かせる気マンマンだからこういうとき困る
113デフォルトの名無しさん:2010/09/07(火) 04:10:56
まぁ、PerlでできることはRubyでも当然できるわけだが、
すでに誰かがやっていてモジュールが提供されてるのとは違うからな。
Perlで誰かがやったことをRubyで書き直すのもまた車輪の再発明なのかしら
114デフォルトの名無しさん:2010/09/07(火) 07:05:22
In principle, of course, any Turing-equivalent programming language can do the same things as any other.(キリッ
115デフォルトの名無しさん:2010/09/07(火) 09:45:42
>>113
でもそれって結構楽しいよね
116デフォルトの名無しさん:2010/09/07(火) 10:15:02
うむ、単純にポーティングはたのし。
117デフォルトの名無しさん:2010/09/07(火) 10:17:37
テストの移植で死ぬ
自力でテストを埋めるのは楽しいこともあるが、テストの移植は果てしなく面倒だ
118デフォルトの名無しさん:2010/09/07(火) 13:42:46
テストといえばgemのライプラリを3行くらい変更するだけなのにテスト20KBくらい書いてる
そもそものライブラリのテストがまったく網羅してないんだよこれ
変更後も同じように動きますと言いたいだけだったのに
やだこれにコメントつけたくねえ
こことかこことか英語でなんていえばいいのかすらわからん
ていうかもうRSpec使おうよTest::Unitは意図の説明めんどくさいよ
119デフォルトの名無しさん:2010/09/07(火) 17:55:49
Addressable::URI は Ruby1.9 でまだ遅いんだな
構造的な問題なのか
120デフォルトの名無しさん:2010/09/07(火) 18:12:03
むちゃくちゃでっかい定数の読み込みに時間がかかってると聞いた
121デフォルトの名無しさん:2010/09/07(火) 18:19:23
まじかよ、遅延評価に汁。
122デフォルトの名無しさん:2010/09/07(火) 18:30:06
見つけた
ttp://github.com/sporkmonger/addressable/raw/master/lib/addressable/idna.rb
の中盤の UNICODE_DATA
0x0041 から 0xffee まで
123デフォルトの名無しさん:2010/09/07(火) 19:41:48
String#encodeとかじゃダメなのかこれは
124デフォルトの名無しさん:2010/09/07(火) 19:50:30
1.9でだけ重いんだっけか
125デフォルトの名無しさん:2010/09/07(火) 20:01:20
ナニが引っかかってるんだ…?
126デフォルトの名無しさん:2010/09/08(水) 07:24:33
Addressable::URI だけが超重いせろりん400環境の俺様が来ましたよ

UNICODE_DATA だけコピペした idna.rb で
$ time ruby idna.rb
real 0m0.300s
$ time ruby1.9 -rubygems -e ";"
real 0m0.285s
$ time ruby1.9 idna.rb
real 0m4.903s

いろいろ試したのだけど、{数字1 => [配列1], 数字2 => [配列2], ...} という構造を捨てて
[数字1, [配列1]]
[数字2, [配列2]]
のように単に意味なくネストせずに各行並べた
$ time ruby1.9 idna_a.rb
real 0m0.485s
だけが速かった
ペア4000個のHashというのはRuby1.9にとってはちょっと大き過ぎるらしい

ちなみに16進数をString#hexで整数に直しただけのHashの結果
$ time ruby1.9 idna_int.rb
real 0m4.899s
変わんね
16進数が多いわけでも文字列が多いわけでもnilが多いわけでも配列が多いわけでもなかった模様
127デフォルトの名無しさん:2010/09/08(水) 13:27:09
>>119-126
% time ~/local/ruby_1_9_1/bin/ruby idna.rb
~/local/ruby_1_9_1/bin/ruby -v idna.rb 0.62s user 0.00s system 100% cpu 0.617 total
% time ~/local/ruby_1_9_2/bin/ruby idna.rb
~/local/ruby_1_9_2/bin/ruby -v idna.rb 0.03s user 0.01s system 2% cpu 1.341 total
というわけで、1.9.1 はさっさと捨てて、1.9.2 を使ってください
128デフォルトの名無しさん:2010/09/08(水) 13:33:36
>>127
それはそれでなんかキモいな
原因はなんなんだ
1.9.1向けのデータ作る際になんか気をつけなきゃならんところがあるのか
129デフォルトの名無しさん:2010/09/08(水) 14:08:30
>>128
単にハッシュのバグです
130デフォルトの名無しさん:2010/09/08(水) 14:28:54
1.9.1は1.8.6なんかと比べて後腐れないバージョンなので、
1.9.2がフツーだという評価さえ広まればとっとと消えると思う
131デフォルトの名無しさん:2010/09/08(水) 16:32:36
2.0が出るまでは1.8でいくよ
132デフォルトの名無しさん:2010/09/08(水) 17:16:20
2.0が出るまで後5年くらいはかかるだろうから、
その前に高確率でRailsに1.8系が切られる気がする
133デフォルトの名無しさん:2010/09/08(水) 17:17:37
そろそろ1.8.6の存在がめんどくさいでござる
134デフォルトの名無しさん:2010/09/08(水) 17:27:34
ねー、rvm って対話型シェル以外で使うときどうするの
どっかの cron で使ってる ruby とか自前の CGI で呼んでる ruby とか
135デフォルトの名無しさん:2010/09/08(水) 20:40:34
rails3はみんな1.9.2使うの?それとも1.8.7?
136126:2010/09/08(水) 20:49:23
:$ rvm use 1.9.2
info: Using ruby 1.9.2 p0
:$ ruby -v
ruby 1.9.2p0 (2010-08-18 revision 29036) [i686-linux]
:$ time ruby idna.rb
real 0m0.543s

うひょー
137デフォルトの名無しさん:2010/09/09(木) 11:51:36
rvm って言えば、rvm gem install rake とかすると 1.9.1 のディレクトリに rake がインストールされるのはなんで?
rvm gemdir は $HOME/.rvm/gems/ruby-1.8.7-p302 なのに…
138デフォルトの名無しさん:2010/09/09(木) 12:12:23
>>137
1.8.7にrubygemをインストールしてないんだろ
139デフォルトの名無しさん:2010/09/09(木) 12:20:29
>>138
…おお

って一瞬納得しかけたじゃないかばかー!
$ ls $HOME/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/site_ruby/1.8/
gauntlet_rubygems.rb i686-linux rbconfig rubygems rubygems.rb ubygems.rb
140デフォルトの名無しさん:2010/09/09(木) 12:28:31
>>137
1.9なら、そのrakeは標準ライブラリのものでは?
rake, rdoc, rubygems, minitestが最初からバンドルされている。

141デフォルトの名無しさん:2010/09/09(木) 12:47:53
>>140
ああ、 rake は紛らわしかったねごめん

$ rvm use 1.8.7
info: Using ruby 1.8.7 p302
$ rvm 1.8.7 gem install rspec

Successfully installed rspec-1.3.0
1 gem installed
$ ls -R .rvm/gems/ruby-1.8.7-p302/
.rvm/gems/ruby-1.8.7-p302/:
cache

.rvm/gems/ruby-1.8.7-p302/cache:
rspec-1.3.0.gem
$ rvm --version
rvm 1.0.5 by Wayne E. Seguin ([email protected]) [http://rvm.beginrescueend.com/]
142デフォルトの名無しさん:2010/09/09(木) 15:14:27
テスト書くのめんどくさい
テストなしでライブラリ公開していいよね
RFC1738とか使ってる人もういないよね
Shift_JISにEUC-JPが混ざった文字を$KCODE="u"の環境でinstance_variable_setで直接入れられたときの挙動とか
そういうのまだテストしてないけどいいよね
143デフォルトの名無しさん:2010/09/09(木) 15:21:24
web関連はめんどくさいからな
144デフォルトの名無しさん:2010/09/09(木) 15:22:36
>>142
テストしてないです、って書いとくならOK。
145デフォルトの名無しさん:2010/09/09(木) 17:21:48
>>143
RFCがなければもっとめんどくさいんだろうが、
RFCがあると「最低限やらなければいけないこと」の量がわりと明確で困るな
146デフォルトの名無しさん:2010/09/09(木) 18:12:47
>>142
ぶっちゃけそんなの全く気にしていない
147デフォルトの名無しさん:2010/09/10(金) 02:17:30
>>142
テストしてる範囲さえ明確にしてるなら
そこから先は使う側に責任が移るからいいんじゃね
148デフォルトの名無しさん:2010/09/10(金) 03:01:58
>>142
githubにうp→おお、こら便利→いっちょテストでも書いてやるか→pull request → pull, merge→ >>141 幸せ みんなも幸せ
149デフォルトの名無しさん:2010/09/10(金) 18:14:44
githubに載ってるライブラリを直したいんだけど、
手元に git clone して自分用のブランチ作って適当に改変して自分とこの github スペースに push しておけばいいの?
150デフォルトの名無しさん:2010/09/10(金) 19:09:54
>>149
自分だけで使うならpushする必要もない。
オリジナルリポジトリを直接ローカルでcloneして修正をローカルでコミットするだけでいい。

自分の修正を公開したいならgithubで相手のプロジェクトをforkして、
そこにローカルリポジトリからpushする。
(最初から公開予定があるなら、forkを先にやって、それをローカルにcloneしてもよい)

さらに原作者にも取り込んで欲しいなら、githubでpull requestを送る。
151デフォルトの名無しさん:2010/09/11(土) 03:09:57
あれ、libname gem のテストの helper.rb で全く何の気なしに require 'libname' されてる
… $LOAD_PATH の設定とかないの
っていうかこれ作成中の lib 読んでないよね gem でインストールされたほうのディレクトリ読んでるよね

あー、rake test だとこれでも作成中の lib のほう読んでくれるのか
ファイルごと testrb してるんじゃなくて毎回 rake test してるのか
豪華なテスト実行環境してるな畜生
152デフォルトの名無しさん:2010/09/11(土) 03:34:56
先生!せっかく URI.escape したのに URI.parse できない文字列があって困ってます!
先生からもなんか言ってやってください!

irb> s = URI.escape("http://example.com/[abc]")
"http://example.com/[abc]"
irb> URI.parse(s)
URI::InvalidURIError: bad URI(is not URI?): http://example.com/[abc]

RFC3986 さんは
「でもまあ authority に入ってさえなけりゃブラケットはパーセントエンコードしなくても実質問題ないんじゃね」
みたいなことをオフレコで言ってました

第2引数に正規表現書けば動作しますがめどいです

ちなみに Addressable::URI くんはパーセントエンコードしますが normalize で authority 内のが消えます
irb> s = Addressable::URI.escape("http://exam[]ple.com/[abc]")
"http://exam%5B%5Dple.com/%5Babc%5D"
irb> p Addressable::URI.parse(s).normalize
#<Addressable::URI:0xfdb9da28c URI:http://exam[]ple.com/%5Babc%5D>
惜しい
153デフォルトの名無しさん:2010/09/11(土) 09:15:51
>>152
escape は parse 可能を保証しないんじゃなかったっけ
154デフォルトの名無しさん:2010/09/11(土) 19:01:25
>>152
URI.escapeはURIとして使えない文字をescapeするだけで、
その結果が正しいURIになるとは限らない。
議論の結果、使い物にならないって事で廃止予定です。
155デフォルトの名無しさん:2010/09/11(土) 19:44:37
なんでそんなに独特な言い回しなんだw
156デフォルトの名無しさん:2010/09/11(土) 19:47:43
URI 構成要素ごとにパーセントエンコーディングすべき文字というのが決まっているので
URI 全体を特定の正規表現でチェックして一気に置換とか本当はありえないんだよね
Addressable::URI の方向性は正しい
157デフォルトの名無しさん:2010/09/12(日) 16:05:26
>>135
Rails3系ではrubyは1.9系を使おうと思ってるよ。
158デフォルトの名無しさん:2010/09/12(日) 18:05:12
犬かうんだがRuby関係の名前にしようかと思ってる。
159デフォルトの名無しさん:2010/09/12(日) 18:14:41
松江ラーメン
160デフォルトの名無しさん:2010/09/12(日) 18:24:21
instance_eval とか犬の名前にすんのか?
161デフォルトの名無しさん:2010/09/12(日) 18:28:41
飼い猫の名前に、nilって名前つけたら早死にしたわ。
あんなに可愛かったのに、GCの対象になったらしい。
162デフォルトの名無しさん:2010/09/12(日) 18:38:54
Ruby on わんこ
163デフォルトの名無しさん:2010/09/12(日) 18:41:14
そういや飼っていた兎にπと名づけていたOS研究者がいたな。
本の献辞に memory of Bram and Sweetie π とあって(兎の名前だと知られるまで)
読者はなんだそりゃと思ったという。
164デフォルトの名無しさん:2010/09/12(日) 22:09:22
>>161
どんなわかりやすい嘘だよw
165デフォルトの名無しさん:2010/09/13(月) 08:46:48
>>161
おまいがしっかりと参照してやってれば…
166デフォルトの名無しさん:2010/09/13(月) 09:13:33
nil は普通に実装したら即値にするだろうから、
GC は関係ないんじゃないかなぁ
167デフォルトの名無しさん:2010/09/13(月) 09:27:24
飼い猫を nil にしたら飼い猫として参照できなくなって飼い猫がいなくなった、が正しいと思う
168デフォルトの名無しさん:2010/09/13(月) 09:35:05
>>158
ゆきひろ でいいんじゃね?
169デフォルトの名無しさん:2010/09/13(月) 09:40:10
>>168
フイタw
170デフォルトの名無しさん:2010/09/13(月) 10:29:09
そういえば、まつもとっていう名前のウサギかなんかを飼ってる人がいたような。
171デフォルトの名無しさん:2010/09/13(月) 15:09:32
>>158
モルモン
172デフォルトの名無しさん:2010/09/13(月) 16:29:35
force_encoding("utf-8") は今すぐ絶滅して欲しい今すぐ
force_encoding("binary") とかのほうが数万倍マシだ

っていうか外人産ライブラリからこれを取り除いて欲しいんだけど外人さんをどう説得すればいいですか
173デフォルトの名無しさん:2010/09/13(月) 16:34:40
>>172
String#valid_encoding? が false になる例を1ダースくらい持っていく
全てに対して force_encoding(Encoding::ASCII_8BIT) して、全てが true になることを示す

valid_encoding? という字面は強力なのでたいていあちらさんが折れるぞ
ほんとは encoding が valid かどうかを示してるわけじゃないんだけど、
そんな知識があるならそもそも force_encoding('UTF-8') なんてしないから大丈夫バレない
174デフォルトの名無しさん:2010/09/13(月) 18:35:07
なんでデフォルトをUTF8にしなかったんだ?
もちろんいろいろ検討した結果なんだろうけど
175デフォルトの名無しさん:2010/09/13(月) 18:41:08
>>174
UTF-8に変換しないといけなくなるじゃないか
176デフォルトの名無しさん:2010/09/13(月) 19:05:48
>>174
当時は EUC がベストと思われてたから
177デフォルトの名無しさん:2010/09/13(月) 20:12:52
当時っていつ頃なんすか?w
ゆとり世代の自分からしたらUTF-8しかありえないんですけど^^;
178デフォルトの名無しさん:2010/09/13(月) 20:30:39
>>176
EUCがベストって1.9のデフォルトはUS-ASCIIじゃんかよ
179デフォルトの名無しさん:2010/09/13(月) 20:37:46
>>178
>>176>>174がRuby1.8の話をしてると思ってる
180デフォルトの名無しさん:2010/09/13(月) 20:50:02
なんで嘘吐くかな
RubyはLatin-1だろ
181デフォルトの名無しさん:2010/09/13(月) 23:07:24
>>174
それやるとWindowsとの親和性が上がっちゃうから
182デフォルトの名無しさん:2010/09/14(火) 04:01:09
WindowsならShift-JIS(CP932)だろJK、気持ちはわかるがUTF-8もWindowsにとってはかなりアレなんだぜ
183デフォルトの名無しさん:2010/09/14(火) 08:01:26
184デフォルトの名無しさん:2010/09/14(火) 08:44:50
 このPerrotta氏の著書『メタプログラミングRuby』の序文に寄せて、Rubyの設計者である、
まつもとゆきひろ氏は、こう書いている。

 「Rubyは君を信頼する。Rubyは君を分別のあるプログラマとして扱う。
Rubyはメタプログラミングのような強力な力を与える。
ただし、大いなる力には、大いなる責任が伴うことを忘れてはいけない」

 コアクラスも書き換え可能である「オープンクラス」というのが典型だが、Rubyではプログラマ自身が自覚している限り、
破れないルールは少ない。例えば、クラス定義の中にある「private」以降に定義があるメソッドはレシーバを省略した形
でなければ呼び出せないため、事実上クラスメソッドのように振る舞う。しかし、動的ディスパッチと呼ばれる引数に
メソッド名を指定する方法だと、当該クラスと関係のないコンテクストからですら呼び出せてしまう。これは一見危険な
ことだが、このことによってクラスを動的に拡張して、一群のメソッドを追加するような“魔法”が、Rubyでは1行で実現
できてしまう。Perrotta氏は、「Rubyの世界では、private()は命令ではなく提案だと考えられている。これはRubyの
哲学に不可欠なものだ」と書籍の中で説明している。

 結局、メタプログラミングとは強力で危険な、特殊なプログラミング技法なのか? どこで使い、どこで使うべきでないのか?

 同書のエピローグには、禅問答のような短いやりとりが掲載されている。山の頂で瞑想している師匠に向かって、
「メタプログラミングの真髄とは何ですか」と、ひと通り学び終わった弟子が問うシーンがある。Perrotta氏は、
師匠にこう言わせている。

 「メタプログラミングというものなど存在しない。すべてはただのプログラミングじゃ。去るがいい。静かに瞑想させておくれ」



どう見ても宗教です本当にあり(ry
185デフォルトの名無しさん:2010/09/14(火) 08:59:26
言いたいだけの奴は勝手に言ってろ
186デフォルトの名無しさん:2010/09/14(火) 09:02:41
>Rubyは君を信頼する。Rubyは君を分別のあるプログラマとして扱う。

別にRubyに限った話ではない
例えばこの辺りの思想は、おそらくC譲りのもの
それを宗教と呼ぶのは自由だが
187デフォルトの名無しさん:2010/09/14(火) 09:11:52
自分の足を撃つにはどうプログラムするか、というやつだなぁ
C→自分の足を撃て
Pascal→コンパイラはあなたに自分の足を撃たせない
みたいな。
188デフォルトの名無しさん:2010/09/14(火) 09:12:57
 同書のエピローグには、禅問答のような短いやりとりが掲載されている。山の頂で瞑想している師匠に向かって、
「メタプログラミングの真髄とは何ですか」と、ひと通り学び終わった弟子が問うシーンがある。Perrotta氏は、
師匠にこう言わせている。

 「メタプログラミングというものなど存在しない。すべてはただのプログラミングじゃ。去るがいい。静かに瞑想させておくれ」



の部分だろ問題あるのは
189デフォルトの名無しさん:2010/09/14(火) 09:14:36
ずいぶん長い夏休みだな
190デフォルトの名無しさん:2010/09/14(火) 09:21:48
もうすぐ3年目
191デフォルトの名無しさん:2010/09/14(火) 10:11:55
rubykaigi2010 でも Perrotta 氏が来ていて
セッションを聞いていたけど、Perrotta 氏の話は
面白くてとても謙虚な方だったよ。

Perrotta 氏は Java の Hibernate のコミッタでもあるそうだが、
本人も「元はJavaプログラマだったけど ruby をやりはじめて、
はじめは(railsなどの、rubyに見られる)黒魔術がなにがなんだか
わからなかった」と言っていた。

冒頭はそのときの体験談なんかもあったよ。

英語もすごい聞きやすかったな
# というかセッション後の質疑応答時間で、聴衆の外人から
# 「あなた(Perrotta)は アメリカ人ではないのに、
# どうしてそんなに英語が上手いの?」と聞かれていて
# 会場が沸いていた
192デフォルトの名無しさん:2010/09/14(火) 11:01:52
>>188
外人ハッカーのZenへの憧れを知らないと見える。
193デフォルトの名無しさん:2010/09/14(火) 11:08:30
Ruby2.0ではirbからrequire selfするとMatzのポエムが読めます
194デフォルトの名無しさん:2010/09/14(火) 11:08:52
どう問題があるのか言えないくらいだからたいしたことない
195デフォルトの名無しさん:2010/09/14(火) 11:15:00
It's the ZEN of Ruby
196デフォルトの名無しさん:2010/09/14(火) 11:39:25
哲学が理解できないのは知性が低い証拠
197デフォルトの名無しさん:2010/09/14(火) 12:32:22
Paolo PerrottaのMetaprogramming Ruby のAppendices Spell Bookの部分は公開されてるんだが、
公式のドキュメントかリファレンスマニュアルにいれとけよっていうくらいのまとめだな

http://media.pragprog.com/titles/ppmetr/spells.pdf
Google Doc経由 http://docs.google.com/viewer?url=http://media.pragprog.com/titles/ppmetr/spells.pdf

198デフォルトの名無しさん:2010/09/16(木) 15:06:06
rvm 使ってる人に質問
システムが使ってる Ruby はどうしてる?
まさか自分の .rvm ディレクトリにシンボリックリンク張ってるわけじゃないよね?
199デフォルトの名無しさん:2010/09/17(金) 05:25:15
システムが使う Ruby と自分だけが使う Ruby は別
システム用の Ruby は別途固定のものをインストールする
システム用に rvm をインストールしてもいい
人数分プラス 1 の Ruby がインストールされる状態
ディスクの無駄遣いだな
200デフォルトの名無しさん:2010/09/17(金) 08:25:47
ファイルが存在しないときだけ、新規にファイルを作成する方法を探しています。
unless File.exist?
 File.open('filename', 'w') {|f| f.write(data) }
end
だと、File.exists? と File.open とがアトミックに行われるわけではないので、
File.exist? と Filee.open とのあいだで別プロセスによりファイルが作成される
可能性があります。
これを避けるにはどうしたらいいでしょうか。
201デフォルトの名無しさん:2010/09/17(金) 08:39:57
ファイル作成のアクセスをロックさせることのできるファイルシステムを使う
202デフォルトの名無しさん:2010/09/17(金) 08:44:42
ディレクトリの書き込み権限を自分だけにしてからファイルの存在チェックを行う
ファイルの存在チェックからファイル作成までの間に誰かが割り込む可能性はない
ただし管理者自身のアクセスまたは管理者の許したプロセスやユーザを除く
203デフォルトの名無しさん:2010/09/17(金) 08:49:32
Unix ならこの例みたいに、
ttp://doc.okkez.net/187/view/library/fcntl
Fcntl::O_EXCL | Fcntl::O_CREAT を指定して IO.sysopen すればできるんじゃないかな?
204デフォルトの名無しさん:2010/09/17(金) 08:56:56
>>203
| を処理する間に割り込んで欲しくないのだろ
205デフォルトの名無しさん:2010/09/17(金) 09:08:52
えっ?
206デフォルトの名無しさん:2010/09/17(金) 09:43:55
>>204
節子それメソッドやない、open に渡すフラグや
207デフォルトの名無しさん:2010/09/18(土) 11:21:33
'wn'とか指定できるようにしようぜ
208デフォルトの名無しさん:2010/09/18(土) 21:59:37
ML盛り上がってるなと思ったら<=>のせいか
209デフォルトの名無しさん:2010/09/18(土) 22:11:18
spaceship operator を UFO演算子というのは訳しすぎな気がする。
210デフォルトの名無しさん:2010/09/18(土) 23:27:00
ruby 1.9.2からpsychが付くって宣伝されてるけど
実際、psychって(従来のsyckと比べて)どの辺が素晴らしいんだ?
日本語の情報が少なくてよくわからない
211デフォルトの名無しさん:2010/09/18(土) 23:57:30
>>210
* (今のところ)メンテナ(ひげの山男)にアクセスが取れる。
(syckの_whyは失踪した)
* 対応しているYAMLの仕様が新しいらしい。
* BOM付きUTF8が読めた。(自分で作ることは決してないんだけど)

パフォーマンスの差は知らぬ。
212デフォルトの名無しさん:2010/09/20(月) 01:12:16
psyche?
213デフォルトの名無しさん:2010/09/22(水) 11:31:23
ライブラリ本体をLGPLとかでリリースしたとき、ライブラリをテストするために添付したデータもLGPLとかになる?

…なるか
…なるよな
迂闊に既存のデータをテストデータとして添付するのはまずいか
困ったー
214デフォルトの名無しさん:2010/09/22(水) 20:26:03
ファイルの更新日時なんていつでも変更できると思うんだ…
215デフォルトの名無しさん:2010/09/22(水) 23:58:49
>>186
Javaとかが君を信頼してないから、そう書いたんじゃないか?
確かにK&Rにも同じようなこと書いてあった気がするけどな。
216デフォルトの名無しさん:2010/09/23(木) 11:06:45
拡張ライブラリを書いてるんだが、Ruby1.8と1.9とでコードを分けたい。
そのための方法を教えてください。たぶんマクロかなんかあるんだとおもうけど。
217デフォルトの名無しさん:2010/09/23(木) 11:12:13
Rubyにマクロはありませんが、とりあえず定数 RUBY_VERSION を使ってやりたいことは
できませんか?
218デフォルトの名無しさん:2010/09/23(木) 11:20:14
>>216
バージョン自体は
RUBY_VERSION "1.9.2"
RUBY_VERSION_MAJOR 1
RUBY_VERSION_MINOR 9
RUBY_VERSION_TEENY 1
あたり。
1.9.1と1.9.2はABI互換性があるので、TEENY は 1 のまま。

俺の場合はエンコーディング処理の有無の違いだったので、HAVE_RUBY_ENCODING_H
を使った。
219217:2010/09/23(木) 11:21:56
あごめん、「拡張」を読み損ねてた
220デフォルトの名無しさん:2010/09/23(木) 12:06:18
>>217
RUBY_VERSIONという定数はなさそうだけど。
include/ruby-1.9.1/ruby/version.h あたりに載ってるかと思ったけどなかった。

>>218
えーとこれはRubyスクリプトでの話?
今は拡張モジュールの話なので、Cレベルでのやり方を教えて下さい。

#if RUBY_MINOR_VERSION == 9
#endif

とかできないっすかね
221デフォルトの名無しさん:2010/09/23(木) 12:19:41
>>218
>HAVE_RUBY_ENCODING_Hを使った。

よく読んでなかったけど、そんな方法があるのか。
調べたら HAVE_RUBY_VM というのがあったから、これを使うことにした。
ありがとう。

ところでruby1.9のvmに、拡張ライブラリからアクセスしたいんだけど、
vm_core.h とかを読み込んだり、そこに載っている関数を呼び出したりするには
どうしたらいいんでしょうか。
もちろん未公開関数だとか仕様が変更される可能性があるといったリスクは
承知の上でのはなしです。
222218:2010/09/23(木) 12:28:32
>>220
version.h 見てこい。
223218:2010/09/23(木) 12:32:44
スマン。
version.h は include の外にあるので、公開APIではなかった。

224デフォルトの名無しさん:2010/09/23(木) 23:18:06
あれ、Ruby1.9.2 で require 'spec/my/dir/../../spec_helper' が動かない
File.expand_path 必須?
225デフォルトの名無しさん:2010/09/23(木) 23:19:13
CPUがどんどん速くなってるのにRubyってなんか重くあり続けてるよな
すごく不思議
226デフォルトの名無しさん:2010/09/23(木) 23:31:25
>>225
640KBあればじゅうぶんですよ
227デフォルトの名無しさん:2010/09/24(金) 06:56:34
逆に考えるんだ。CPUがRubyの進化の速度に追いつけていないと、そう考えるんだ。
228デフォルトの名無しさん:2010/09/24(金) 11:03:36
>>224
Ruby 1.9.2から、requireでカレントディレクトリを見に行かなくなってるけど
それと関係ある?
229デフォルトの名無しさん:2010/09/24(金) 12:24:02
>>221
>ところでruby1.9のvmに、拡張ライブラリからアクセスしたいんだけど、
>vm_core.h とかを読み込んだり、そこに載っている関数を呼び出したりするには
>どうしたらいいんでしょうか。

まさに自分も同じことで悩んでいるんだけど、どうしようもなさそう。
そもそもruby/vm.hってほとんど空でなにも定義されてないから、
外部から触るのは無理っぽい。
230デフォルトの名無しさん:2010/09/24(金) 13:20:23
インターフェイスを公開しちゃうと内部を自由に変えられなくなるから
公開したくないのかなぁ。

RubyVMとかRubyVM::InstructionSequenceとかのC実装は公開APIだと
思っていいんだろうか。
231デフォルトの名無しさん:2010/09/27(月) 09:06:39
>>230
将来の実装変更の自由を奪っちゃうからというのもあるだろうし、
まだ拡張ライブラリでどんなAPIが要求されるかの知見が十分に得られてないからってのもあるだろうね
ユースケースを添えてこんなC APIが欲しいってのを出せば、
既存のは将来の互換性、ないものは追加を考えてくれるかもなので、ruby-devに投げるといいよ
232デフォルトの名無しさん:2010/09/27(月) 16:56:08
1.9.2 でだいぶ速くなったのは確認できた
後は AOT コンパイラさえ揃えば不満はないっす
233デフォルトの名無しさん:2010/09/28(火) 03:39:41
>>231
VMにどんなAPIが必要かなんて、VM作ったことのない人にはわかるかよ。
とりあえずVM内部のデータにアクセスできればそれでいい。

それよりRubyのバグ登録って、どこでどういう手順でやればいいの?
当然どっかに説明が書いてあるんだろうけど、どこを見ればいいんだ?
234デフォルトの名無しさん:2010/09/28(火) 08:20:24
http://www.ruby-lang.org/ja/dev/
Redmineに行ったらあとは見りゃわかるだろう……
235デフォルトの名無しさん:2010/09/28(火) 10:00:10
>>234
いやわからんだろ
236デフォルトの名無しさん:2010/09/28(火) 14:00:58
Redmineはゲストだとチケット切れないのかな、アカウント登録してチケット登録するか、
メーリングリストに投げたら登録してくれるんじゃないの

ただし、脆弱性がらみのバグ見つけちゃった!!ってときははpublicなところに登録したらいかんけど
Ruby - SecurityFixProcess - Ruby Issue Tracking System
http://redmine.ruby-lang.org/wiki/ruby/SecurityFixProcess


237デフォルトの名無しさん:2010/09/28(火) 14:27:14
英語圏のgemで中途半端にヤバいかなあというのが一番困る
238デフォルトの名無しさん:2010/09/29(水) 00:04:44
>>234
なるほど、まったくわからん
239デフォルトの名無しさん:2010/09/29(水) 00:10:10
バグなんて2chに投げときゃいいんだよ。
修正コードも合わせて貼るとなおよし。

そうすればもっと報告しやすい環境を整えてくれるよw
240デフォルトの名無しさん:2010/09/29(水) 00:16:39
>>239
> 修正コードも合わせて貼るとなおよし
2chに書かれたコードは取り込めません
241デフォルトの名無しさん:2010/09/29(水) 01:19:05
基本的に、たまたま居合わせたコミッタ(というかyugui氏)が
対応してくれることもあるぐらいの話
242デフォルトの名無しさん:2010/09/29(水) 01:40:33
去年の rubykaigi で、yugui さん含めコミッタは 2ch の ruby スレは見ないけど、
「たまに有益なレスが着いているのを聞いている」ので、
駄レスはいらないけど有益なレスが着いていたら ML に転送してほしい、と言っていたぞ。
243デフォルトの名無しさん:2010/09/29(水) 01:57:22
おおむね平均すると10スレ消費するごとに1レスくらいだがな
244デフォルトの名無しさん:2010/09/29(水) 02:11:16
2chにはられたコードは著作権が不明確なのでうかつに取りこめない。
のかな。
245デフォルトの名無しさん:2010/09/29(水) 02:29:39
>>243
いやもっと低いって
1000に1つもあればいいほう
246デフォルトの名無しさん:2010/09/29(水) 02:30:08
2chの投稿規約のことを考えると
なおのことややこしくなる
そんなコードを取り込むわけには、さすがにいかないのだろう
247デフォルトの名無しさん:2010/09/29(水) 05:48:42
>>245
レスじゃなくてスレだから万に一つって事な
248デフォルトの名無しさん:2010/09/29(水) 06:31:14
>>246
2ch自体がライセンスだからな
メジャーなソフトウェアライセンスと一見競合しそうな以上、スレにコードを貼るのはそもそも危険
249デフォルトの名無しさん:2010/09/29(水) 07:10:28
>>247
ああ
素で読み間違えてた
あなたのおっしゃるとおりです
250デフォルトの名無しさん:2010/09/29(水) 10:38:10
そのうち、ソフトウェアにも「2ch ライセンス」というのがあっていいかも

・当然無保証
・著作権者はなし(誰でも流用してよい)
・バグもあるので、嘘を嘘と見抜けないと・・・・

これじゃあ PDS と同じかな
251デフォルトの名無しさん:2010/09/29(水) 12:38:08
出所がわからんから
うっかり他人の著作権侵害してるかもしれんぞ
252デフォルトの名無しさん:2010/09/29(水) 13:18:24
どこかwebに貼ってから、その引用という形をとればいいんじゃないか?
引用元の著作権まで譲渡するわけにはいかんだろ
253デフォルトの名無しさん:2010/09/29(水) 13:39:07
pastebinとかgistに張ればいいでしょ
もちろんライセンスは名器で

2chに貼るときもライセンス名器しておけばいいと思うけどね
254デフォルトの名無しさん:2010/09/29(水) 13:46:18
2chの書き込みは「規約と称するもの」を「承諾」してなされたことになってるからまずいの
255デフォルトの名無しさん:2010/09/29(水) 13:56:41
256デフォルトの名無しさん:2010/09/29(水) 14:24:27
>>255
おい、こんなの許されるのかよ

この一方で、(ニコゲーの規約じゃないが)webサービスの著作権譲渡項目に怒ってスレが立ってたりするわけかw
257デフォルトの名無しさん:2010/09/29(水) 14:26:04
お前ら同じ話を一体何度繰り返しているのかと
258デフォルトの名無しさん:2010/09/29(水) 15:00:31
>>257
2chのスレにプログラムコード書き込む際のライセンスの問題、みたいなサイトやらwikiやらが存在しない限りずっと
259デフォルトの名無しさん:2010/09/29(水) 16:24:33
260デフォルトの名無しさん:2010/09/30(木) 01:37:57
お兄ちゃんコントローラーの一覧ってどうやって取得するん?
コントローラーフォルダからファイル一覧を取得とかは嫌ズラ。
261デフォルトの名無しさん:2010/09/30(木) 02:10:37
>>260
Railsの話?

定義がロード済みなら
ActionController.subclasses
で拾えると思うけど、
未ロードだが定義した存在するクラスまでは無理だと思う。

ルーティング定義があるものならそっち方面から攻められそう。


262デフォルトの名無しさん:2010/09/30(木) 02:39:17
Railsは遅延読み込みあったよな
script/consoleでも、未設定だとロードしてないファイルのクラスが補完できないよね

productionの設定だと全部読み込んでた気もするけど
263デフォルトの名無しさん:2010/09/30(木) 11:10:44
ありがとうお兄ちゃん

ActionController::Routing::Routes.routes.each do |route|
p route
end

これで節子頑張れる
264デフォルトの名無しさん:2010/09/30(木) 20:25:55
あん、Rubyのライセンス実際に変わったの? まだ?
265デフォルトの名無しさん:2010/09/30(木) 21:40:00
変わったない
266デフォルトの名無しさん:2010/10/01(金) 03:54:44
>>255 みて思ったんだけど、GPLライセンスのソースやパッチを2chに貼ったら2chはどうなるの?
矛盾するよね。
投稿削除されるのかなw

一方はソースやソフトウェアのライセンスだから適用されるのかはしらんけど

それはそうと、RubyやRailsに脆弱性見つけて(他のプロジェクトでもいい)、
2chに張ってから時間差で公式にパッチと共に報告したらどうなるんだろう?
Rubyのappleのパッチのときみたいに偶然コミュニティを見てない人にパッチを書いてもらうのだろうか?
267デフォルトの名無しさん:2010/10/01(金) 05:43:56
>>263
南無
268デフォルトの名無しさん:2010/10/01(金) 06:32:49
>>266
じゃあGPLのソースを載せた雑誌は無料頒布ですね
269デフォルトの名無しさん:2010/10/01(金) 10:23:17
>>268
普通の雑誌は記事に掲載されたものの著作権譲渡は求めないからな
270デフォルトの名無しさん:2010/10/01(金) 23:49:08
ディスプレイ2つ欲しい
エディタとテスト実行画面
screenで切り替えるの疲れたお

いや文字小さくすれば何とかなるんだけどさ、見辛い
271デフォルトの名無しさん:2010/10/02(土) 01:07:11
Ruby1.9 の Net::HTTPResponse が返す body のエンコーディングで質問だよおっかさん

require 'net/http'
html = Net::HTTP.start('www.2ch.net', '80'){|http| http.get('/')}.body
p html.encoding
p html.valid_encoding?

が default external encoding か何かに引っ張られて #<Encoding:UTF-8> とか適当な値返すのは仕様?
Net::HTTPResponse の時点でとりあえず ASCII_8BIT とかにしてもらえてるとなんか超ありがたいんだけど

あとこのへんの扱いで揉めた記録の記憶があるんだけどどこだっけ
272デフォルトの名無しさん:2010/10/02(土) 01:27:43
>>271
仕様

というか試してもらうとわかるが

$ cat ch2get.rb
require 'net/http'
html = Net::HTTP.start('www.2ch.net', '80'){|http| http.get('/')}.body
p html.encoding
p html.valid_encoding?

$ ruby1.9 -Esjis ch2get.rb
#<Encoding:Shift_JIS>
true

という芸当ができるようにわざわざこうなってる
force_encoding(::Encoding::ASCII_8BIT) の入る余地はないわけだ
利用者側で事前(external encoding)または事後(force_ecnding)にお好きにやってくださいというスタンス
ちなみにsjisの部分をスクリプト実行前にどうやって知るかについてはこの文書では規定しない
273デフォルトの名無しさん:2010/10/02(土) 02:40:48
>>268
wikipediaにGFDLの記事にGPLのコード載ってる場合どうなるの?(双方は相容れないライセンス)という質問に対し
1つライセンスではなく、別々のライセンスで配布されるというような答えがあったが、どこのページがしっている人いな

GPLが絡むのにそんなのでいいのかと当時思ったが
274デフォルトの名無しさん:2010/10/02(土) 16:04:52
ねーねー、自作ライブラリで自作ディレクトリ内のファイルをrequireしたいんだけどどう書けばいいかな?
$LOAD_PATHの先頭にファイルの存在するパスを File.dirname(File.expand_path(__FILE__)) でガンガン追加してったら
動作遅くなるよね?
275デフォルトの名無しさん:2010/10/02(土) 16:15:08
既存のLOAD_PATHからの相対パスでいいじゃん
たまたま同じディレクトリ構成の他のディレクトリがLOAD_PATHにあったら読まれてしまう気もするけど

hoge/lib
hoge/lib/hoge.rb
hoge/lib/net/
hoge/lib/net/http.rb

という gem で hoge.rb 内で単に require 'net/http' しても自作の http.rb はたぶん読め…読める?
276デフォルトの名無しさん:2010/10/03(日) 12:12:22
require 'rubygems' したあと gem の require 'hoge' すると LOAD_PATH の先頭に gems/hoge/lib が延々追加される
ので

>>275
require 'rubygems' して require 'hoge' した直後ならほぼ確実に読める
他のライブラリを読んだ後、スクリプト実行中に必要に応じて require、とかだと
他の gem パッケージのパスが LOAD_PATH に追加されてるから読めない可能性がなくもないと思う
277デフォルトの名無しさん:2010/10/05(火) 00:37:38
間違ってアンチスレに貼ってたけど、
ようやく結論らしきものを得たので自己レス

123 名前:デフォルトの名無しさん[sage] 投稿日:2010/09/06(月) 21:42:14
メタプログラミングRubyの前書きに、
Joe Armstrongって名前があった
Erlangの人かなあ? それとも同姓同名?


『言語設計者たちが考えること』によると、
アームストロングさんもRubyを利用しているらしい
ということは、本当にErlangの人かも
278デフォルトの名無しさん:2010/10/05(火) 05:21:25
Programming Erlang って本でも Erlang の例外処理を Ruby のそれと比較してたよ
279デフォルトの名無しさん:2010/10/08(金) 18:39:49
初学者ですけど
Rubyのバージョンアップはいつになったら終わるんでしょうか。
学んでいる最中にどんどん仕様が変わっていくので
いつまで経っても覚えきれません。
買った本も無駄になるし。
280デフォルトの名無しさん:2010/10/08(金) 19:06:32
>>279
今はたまたま 1.8 から 1.9 への移行期という
大きな変革期なだけであって、普通はそれほど大きな変更はないよ。

1.8から1.9にしても、初学者がプログラミングするくらいだったら、
それほど大きな差はないと思うけど。
少なくとも本が無駄になるというのはあまりなさそう。
281デフォルトの名無しさん:2010/10/08(金) 20:21:28
安定版という意味では1.8.7はまだ数年使えるんじゃないの?
オレオレスクリプトを動かす分には、それでもいいだろうし

Railsは1.8.6切り捨てたし、今は1.9.2デフォ対応が目標なんだっけ?
Rails周辺はめまぐるしく変わるし大変そうだな
282デフォルトの名無しさん:2010/10/08(金) 20:34:14
漏れはプロじゃないけど、
Java が Ver1 になったときの方がひどい感じを受けた

ただし、過去、Ruby の CGI 本がいくつか出たけど、
もう一切うごかないでしょ
あれはひどいよ
283デフォルトの名無しさん:2010/10/08(金) 21:54:16
>>279
いまJIS規格案の最終草案のレビュー中。(1.8ベースだが)
284デフォルトの名無しさん:2010/10/08(金) 22:06:53
というか「FIXされたプログラム言語」って稀だと思う
285デフォルトの名無しさん:2010/10/08(金) 22:09:49
フラフラしてるのはgemライブラリ部分だよね
ここの責任はRubyとしては持ち難い
286デフォルトの名無しさん:2010/10/08(金) 22:20:00
>>283
そうですか。
JISになるならば、1.8系列が簡単に切り捨てられることはなさそうですね。
2.0という、バージョン番号としては非常にキリの良い数字が
目前に近づいているので、開発陣がそれに向けて
大規模な改編を企図していなければ良いのですが…
Rubyは業務システムにも使われ始めているので、どこかで
仕様固定をして、その後はバグ・セキュリティ対策のみにして
欲しいと願う者です。
287デフォルトの名無しさん:2010/10/08(金) 22:27:18
>>286
Ruby におけるバージョン2.0ってのは、単なる次のバージョンではなく
遠い未来のいつか出るだろう夢のバージョンという意味。
288デフォルトの名無しさん:2010/10/08(金) 22:28:22
結局、1.8はRubySpec通してるの?

289デフォルトの名無しさん:2010/10/08(金) 22:44:31
>>288

結局って?
MRI 1.8ではrubyspecを通すことは目標にはなかったはずよ?
290デフォルトの名無しさん:2010/10/08(金) 22:50:35
>>286
Microsoftの各言語やJavaだってどんどんバージョンアップはしてるわけで、
それを止めたら言語として死んでしまうよ。
システムで使うバージョンを固定すればいいだけの話では。
291デフォルトの名無しさん:2010/10/09(土) 00:56:28
早めに入れておきたかった(特に破壊的な)変更は1.9で入れられているから、
あとは2.0に向けて仕様を拡張する一方
互換性の問題は1.8→1.9ほどにならないはず
292デフォルトの名無しさん:2010/10/09(土) 03:40:25
JISになるのとrubyspecは関係ないんだね
いやわかってていってるけど
293デフォルトの名無しさん:2010/10/09(土) 03:42:26
>>290
サポート切れてるバージョンだってあるよね

といいかけたが、linuxのディストリビューションでも
公式サポート切れのバージョンにセキュリティパッチ当ててメンテしてパッケージリリースしてたりするよな

CentOSとかCentOSとかCentOSとか
294デフォルトの名無しさん:2010/10/09(土) 07:15:19
.NETじゃないVisual Basicとか、サポート切れて久しいけど
世間で動いてるプログラム多そうだな
295デフォルトの名無しさん:2010/10/09(土) 09:52:54
そういえば、もうGoldの資格試験始まったのかな?
Sliverもだけど、1.8ベースじゃなかったっけ?
yuguiさんがWorld Conferenceで1.9使おうって言ってたけど、
資格試験が1.8ベースならGold取るまではなかなか1.9に手を出せないなぁ。
こんがらがりそうじゃん。
まぁ、Rubyの資格試験なんかどうでもいい人がほとんどだろうけど・・・。
Silverも試験公式ガイドがなければとても受かるとは思えなかったので、
Goldもそれ待ちだなぁ。
296デフォルトの名無しさん:2010/10/09(土) 10:01:05
なるほど、Ruby1.8とRuby1.9を併用してプログラム書いてる人は頭こんがらがってる基地外なわけですね
297デフォルトの名無しさん:2010/10/09(土) 10:52:14
仕事は1.8で、趣味は1.9だな。
298デフォルトの名無しさん:2010/10/09(土) 11:08:50
仕事でつかえていいなぁ
趣味はRuby (1.8.7)だけど
仕事ではJavaやらC#やらしか使えないorz
299デフォルトの名無しさん:2010/10/09(土) 11:35:54
>>296
そゆこったな
1.8と1.9をごっちゃにしてしまうというのはよっぽどだぞ

というか初心者は1.8で学習しろというお達しが着てるはずなのだが
1.8で学んでから1.9を追加として理解すると早い
どうせ1.8を捨てるわけにはいかんのだし
300デフォルトの名無しさん:2010/10/09(土) 11:56:46
Ruby1.8系の railsプロジェクトを1.9系にするのって絶望的にめんどくさそうなんだけど、実は結構簡単?
301デフォルトの名無しさん:2010/10/09(土) 13:12:53
どうしても、netbeans のjrubyに

warblerのgemをインストールできない。

jruby 1.5.3 を単独でインストールしてwarblerもインストールできたけど
netbeansではrakeが一切できない。
どうしようもない。

方法ありますか?
ちなみにruby 6.91
gem 2.38
jruby 1 .5,1
302デフォルトの名無しさん:2010/10/09(土) 15:03:07
なにそのめちゃくちゃなバージョン
303デフォルトの名無しさん:2010/10/09(土) 17:25:47
修正
どうしても、netbeans のjrubyに

warblerのgemをインストールできない。

jruby 1.5.3 を単独でインストールしてwarblerもインストールできたけど
netbeansではrakeが一切できない。
どうしようもない。

方法ありますか?
ちなみに netbeans 6.91
gem 2.38
jruby 1 .5,1
304デフォルトの名無しさん:2010/10/09(土) 22:17:26
日本語でお願いします。結局知りたいことがなんなのか分からない。
warblerをインストールしたいのかrackを実行したいのか…。
JRubyのバージョンが混乱してるしgem 2.38て何を表してるのかもうイミフ
305デフォルトの名無しさん:2010/10/09(土) 22:35:21
JRubyでNetBeansでgemでrakeというのは役満だと思う
わざわざ一番難しい組み合わせ選んでるだけだろ
306デフォルトの名無しさん:2010/10/09(土) 23:25:26
もうnetbeansで プログラムはくめるようになったので
tomcat 上でrubyはしらせたいのです。
307デフォルトの名無しさん:2010/10/10(日) 02:06:35
>>305
だなw
これでターゲット環境がGoogle App Engineだったらw


さて、JRuby詳しくないからよくはわからのんだが、
プロジェクトの構成だったかRubyプラットフォームの設定だったかで、
インストールしたRubyを認識させておいて、
プロジェクトのプロパティでその構成を選んでおく必要あるけど、そういう最低限の設定は大丈夫かな?

どこがおかしいのか順番に行こうぜ

・バージョンを正しく把握する(--versionとか)
・コマンドラインでは目当てのJRuby、gem、warbler、Rakeは起動できてる?
・NetBeansでは動かしたいJRubyを認識できて、適当なputs "hello world"実行できてる?馬鹿にするなとか言わない
・NetBeans上で動かしたいJRubyのgem管理用のGUIを起動できてる?
・〃   
308デフォルトの名無しさん:2010/10/10(日) 02:08:32
途中で送信してしまって気づいたけど、もうできてるんじゃないのかそれ

デプロイの話か
Java詳しい人よろしく

309デフォルトの名無しさん:2010/10/11(月) 18:08:51
>>266
> >>255 みて思ったんだけど、GPLライセンスのソースやパッチを2chに貼ったら2chはどうなるの?
ソースコードの頒布にあたりかつ、COPYINGをつけるなどの要件を満たしていないので、
その投稿はライセンス違反でしょう。
また、2chは投稿時に著作権を譲渡できないものの投稿を禁止しているので、2ch的にも規約違反です。
というわけで、原則として、投稿削除が正解でしょうな

> 2chに張ってから時間差で公式にパッチと共に報告したらどうなるんだろう?
2chに張った時点で著作権が2chに移っているので、パッチの報告は形式にもよりますが、
たぶん著作権侵害になるでしょう。
なので、まぁ色々めんどくさくなりますね。
310デフォルトの名無しさん:2010/10/11(月) 18:16:39
>>283 >>286
JIS Rubyは1.8と1.9の公約数を取って規定されるので、安心かというとあんまり。
率直に言って、JIS RubyはRubyの開発には何の影響もありません。

>>279 >>286
Rubyは永遠に変わり続けます。
仕様固定された物が欲しかったら、どこかのタイミングでforkして自分でメンテしてください。
もっとも、直近ではあまり派手な非互換変更のネタはないので当分は安心して大丈夫。
Matzの言う100%互換はありえないにしても、1.9のスクリプトは原則2.0で動くといいな、って感じ。
311デフォルトの名無しさん:2010/10/11(月) 19:11:14
合計1万行程度の自作スクリプトを 1.8 -> 1.9 に移行した経験からすると、
Rubyコードレベルの移行の手間は、全然大したことなかった。
問題だったのは、M17Nに対応できていないライブラリがあることだった。
312デフォルトの名無しさん:2010/10/11(月) 20:53:19
ライブラリの問題はあるねえ。
gemでバージョン非互換のライブラリが
入っちゃったりすると、動的言語だけに
面倒なことになる。
正直、作り捨てられている古いライブラリが非常に多い。
313デフォルトの名無しさん:2010/10/11(月) 23:02:16
>>310
「公の規格がないと政府とかでは採用しにくいけど、
規格化のせいでRubyの開発に制約が生まれたら本末転倒だよね」

ってことで、最小限のサブセットのみ定義したんだっけか
314デフォルトの名無しさん:2010/10/12(火) 09:38:53
政府主導で何かすると急速に廃れていくのが怖い。
315デフォルトの名無しさん:2010/10/12(火) 10:09:24
>>314 池田信夫乙w
316デフォルトの名無しさん:2010/10/12(火) 15:59:37
フクオカRuby大賞ってのが今募集中らしい。
https://www.f-ruby.com/award/

誰か応募してみろ。


317デフォルトの名無しさん:2010/10/12(火) 21:12:20
>>314
IT政策は特にアホだよなこの国。
318デフォルトの名無しさん:2010/10/12(火) 22:23:02
年金大腸の電子化で大失敗してるからな
319デフォルトの名無しさん:2010/10/12(火) 23:04:12
>>318
>年金大腸の電子化で大失敗してるからな
あれは同音異義語、結婚&離婚後の苗字の変化、旧字体・新字体、
パソコンで扱えない文字などがからまって複雑化した。
もともと、国民総背番号制を採用していたら、まったく問題なかったのにな。
データベースを作るときは、一意のキーを作る。
それを、国民のプライバシーがなくなる、国民を監視するな!
とか言って反対していたヤツが悪い

日常生活だって「荻原さん」「萩原さん」を間違えたり
「阿部、安部、安倍」「北澤と北沢」の違いがあり、
「かおる、かをる、かほる、カヲル」という表音文字もある。
320デフォルトの名無しさん:2010/10/12(火) 23:11:37
>>318
失敗はだれにでもあるが失敗を反省して次に生かす謙虚な姿勢が年金機構には無いよな
まともに機能していない名寄せ作業だけでどれだけ損害出してるんだか
ren4に無駄を削ってもらうべき
321デフォルトの名無しさん:2010/10/12(火) 23:25:14
ITに限らないが本来職人を大切にする日本で実装者では無くホラ吹く奴が
力を持ってしまったことが間違いの根源だろ
322デフォルトの名無しさん:2010/10/12(火) 23:42:14
自称職人の土方も多いけど…
323デフォルトの名無しさん:2010/10/12(火) 23:49:01
年金台帳って、すでに間違ったデータしか存在しないのに、
舛添さんが、「がんばって直す」とか言ってるのがなんとも可笑しくて和やかな気持ちになった。
324デフォルトの名無しさん:2010/10/13(水) 00:31:15
>>323
エンジニアなら「すでに間違ったデータしか存在しない」とか
いい加減なこと口にするなよ。
莫大な年金データのすべてが間違ってみたいじゃないか。
325デフォルトの名無しさん:2010/10/13(水) 00:41:21
全件照合するらしいじゃん。
つまり、間違ってるところと正しいところの区別もつきませんぽwってことだん?
それって全部間違ってると言えるよね。
326デフォルトの名無しさん:2010/10/13(水) 00:47:26
え、おまえの担当してるシステムって、
全部のデータが正しいって言えるの?どういう根拠で?
327デフォルトの名無しさん:2010/10/13(水) 00:57:07
>>326
324や325じゃないけど、たしかにその通りなんだよなあ。
データじゃなくてプログラムでもそうだけどさ、いくらテストしたところで
それはテストした範囲ではうまく動くというだけで、間違いがないことを
証明したわけじゃないんだよね。
なんというか、いくらテストしてもきりがない感じがしてもういや。
328デフォルトの名無しさん:2010/10/13(水) 01:04:28
>>326
うちのシステムは知らんが、
年金台帳に関しては、年金納めてる本人に定期的に確認したり、入力をジャーナリングすればいいんじゃね?

>>327
テストした範囲が要求仕様を満足すればきりが無いわけじゃぁない。
そういう考えは甘え。ソフトウェア開発が馬鹿にされる要因の一つ。
329デフォルトの名無しさん:2010/10/13(水) 01:19:40
ごめん、今日はすごく心が荒んでる。
330デフォルトの名無しさん:2010/10/13(水) 01:41:39
>>328
定期的に確認できるってことはそのデータは正しいってことだよね
間違ってるデータなら本人に確認できない可能性もあるよね
元々は正しくても引っ越しとかして届けが出されなければ、そのデータは間違ったものになるよね
331デフォルトの名無しさん:2010/10/13(水) 02:19:11
>>325
えーまだやってなかったの?
今まで何年かやってた作業はなに?
作業してたフリだけしてたん?
332デフォルトの名無しさん:2010/10/13(水) 02:24:24
>>327
特に ruby なんかはそうだね
総てのコードの条件分岐なんか末端まで到達するテストプログラムを書かないといけない
つまり異常系のテストなんて予測付かないのに予測しないといけない
333デフォルトの名無しさん:2010/10/13(水) 08:08:26
> 特に ruby なんかはそうだね

> 総てのコードの条件分岐なんか末端まで到達するテストプログラムを書かないといけない
> つまり異常系のテストなんて予測付かないのに予測しないといけない

全く繋がらない件
334デフォルトの名無しさん:2010/10/13(水) 10:15:36
Rubyのというより動的言語の特徴だな
335デフォルトの名無しさん:2010/10/13(水) 10:39:40
異常系の処理を言語がサポートしてたら、動的静的関係ないだろ。
ていうか言語がサポートしてなくても、ビジネスロジックとして異常系のチェックは必要なんだから、
異常系のロジックは作り込まざるをえないわけで、言語と関係ないな。
336デフォルトの名無しさん:2010/10/13(水) 10:53:09
異常系の取り回しで、例外処理や戻り値チェックのほかにもっと違う方法ってないのかな?
うまくいえないけど、異常系って割とパターン化してる部分があるし、DRYじゃないなぁ、と。
337デフォルトの名無しさん:2010/10/13(水) 12:52:28
> 特に ruby なんかはそうだね

> 総てのコードの条件分岐なんか末端まで到達するテストプログラムを書かないといけない

> つまり異常系のテストなんて予測付かないのに予測しないといけない

全く繋がらない件
338デフォルトの名無しさん:2010/10/13(水) 12:55:26
>>336
WDTなんかはリセット掛けるからなw
339デフォルトの名無しさん:2010/10/13(水) 15:07:26
元の話題は異常系うんぬんじゃなくて、

入力された住所の番地が違うからって
コンピュータが間違いだと判断できるわけないだろ

という単純な話なんだけどな。
340デフォルトの名無しさん:2010/10/13(水) 16:04:30
>>333
たぶん静的な言語なら末端まで到達するテストプログラムを書かなくて済むと
勘違いしている残念な人

>>334
ここにも残念な人が。。。

>>336
AOPとか?
341デフォルトの名無しさん:2010/10/13(水) 16:47:25
>>336
ソフトウェアアーキテクチャの問題になるけど、レイヤを分けることかな。
342デフォルトの名無しさん:2010/10/13(水) 21:59:44
Ruby 1.9.2の不具合見つけた
a = lambda{ a.call }
a.call
procの無限再帰すると無言で落ちる
1.8.7だと stack level too deep (SystemStackError) がでる
343デフォルトの名無しさん:2010/10/13(水) 22:53:05
>>336
DbCするとか。
344デフォルトの名無しさん:2010/10/14(木) 06:32:41
>>342
それはたしか現状やむをえない、という話をruby-devで読んだ記憶がある。
345デフォルトの名無しさん:2010/10/15(金) 18:09:20
Twitter「Rubyプログラマは負債」
ttp://twitter.com/yukihiro_matz/status/27419901887
346デフォルトの名無しさん:2010/10/15(金) 19:36:18
つんまりRailsで立ち上げて流行ったらJavaに置き換えてつつ運用が最強なんかえ?
347デフォルトの名無しさん:2010/10/15(金) 19:39:48
というかエンタープライズ用途では使えないって散々言われてたのに
今更かよって感じでしょ
もともとBasicみたいな教育言語だしVBみたいに進化すれば
商用でも使い物になるかもしれないけど
348デフォルトの名無しさん:2010/10/15(金) 19:42:14
>>345
「Ruby前提で採用されたエンジニアが山ほどいるんで」
これ嘘だろー。
Rubyエンジニアの募集なんて聞いたことないぜ。
349デフォルトの名無しさん:2010/10/15(金) 19:43:27
>>348
ちょっと前は結構求人出てたぜ・・・
350デフォルトの名無しさん:2010/10/15(金) 19:46:10
>>347

【Ruby】Ruby on Rails Part10
http://hibari.2ch.net/test/read.cgi/php/1282991262/248

248 名前:nobodyさん[sage] 投稿日:2010/09/28(火) 20:12:04 ID:???
このスレ、たぶん一人かなと思うけど、
全然わかってないのに無理していろいろ言ってるやつがいるから・・・

351デフォルトの名無しさん:2010/10/15(金) 21:03:30
>>347
Pascalの話?
352デフォルトの名無しさん:2010/10/15(金) 21:40:43
>>348
それはTwitterのことなのでは
http://twitter.com/Naka2ndG/status/27106137785
「ただTwitterは開発者の採用前提条件がRubyなのでRubyが必須なのはわかった。フロントはRuby&Javascript バックはJavaとスカラ」
353デフォルトの名無しさん:2010/10/15(金) 22:37:42
似たようなスクリプト言語が多くなってきたが
みんな混乱はないかい?
俺はRuby、シェルスクリプト、vimスクリプトを
前後して書いていたら、脳味噌が爆発しそうになったよ。
354デフォルトの名無しさん:2010/10/15(金) 23:11:58
まだアンチスレですら挙がってなかったので
ttp://shyouhei.tumblr.com/post/1113566815/ruby-10

RoRがイケイケの頃「Rubyの開発はMatzら日本人を排除してDHH中心でやらせろ」とか
のたまってた奴がいたのを思い出した
355デフォルトの名無しさん:2010/10/16(土) 02:17:21
そもそもまずmatzはRubyを長生きさせたいと思っているのだろうか

「Rubyが長く続いて欲しい」と真剣に思ってるのは、周りの人間であって
matz本人は、Rubyという言語処理系の開発を楽しく続けられれば
それでおおむね満足なんじゃないか?


356デフォルトの名無しさん:2010/10/16(土) 06:21:07
スラッシュドットにも上がってるね

Rubyコアの開発は一度終わってみるべき - スラッシュドット・ジャパン
http://slashdot.jp/developers/article.pl?sid=10/10/15/1233201
357デフォルトの名無しさん:2010/10/16(土) 08:28:40
変わらないとやっていけないのかもしれないけど
「言語オタクが開発を楽しく続けている言語」
なことも魅力のひとつなきがする
358デフォルトの名無しさん:2010/10/16(土) 09:14:03
ひところのgccみたいに勝手にforkして魔改造して本家をドびっくりさせてみればいいんじゃね
359デフォルトの名無しさん:2010/10/16(土) 10:54:22
言語界の大きな変革(構造化・オブジェクト指向など)が
起きた時だけ仕様追加・変更をし、
それ以外はバグ取り・高速化・安定化に注力してくれれば
企業としても採用しやすいのだがなあ。
供給体制が一つで、そこがフルスロットルで走り続けるヲタ
集団である限り、恐くて採用できん。

JRubyなど他の実装が、どこかで本家と決別してくれるのを
祈るしかないな。
360デフォルトの名無しさん:2010/10/16(土) 11:07:10
仕様追加しないなんてあり得ない。
企業採用が多いMSの言語だってどんどんバージョンアップしているし
C#の既存資産を.NET 1系から2,3系や4系に対応するのは
Rubyの1.8系資産を1.9系に移行するのと同じくらい大変だぞ。
361デフォルトの名無しさん:2010/10/16(土) 11:10:28
すこし確認だけど、
* べっ、別に使ってもらいたいわけじゃないんだからねっ、あんたが好きだっていうから使わせてやってるのよっ。
* うるさい、うるさい、うるさい!私は好きでやってるの。あんたが指図するなんて10年早いわよ!

ということでRuby=ルイズ・フランソワーズ・ル・ブラン・ド・ラ・ヴァリエールということでよろしいか?
362デフォルトの名無しさん:2010/10/16(土) 12:01:15
なに言ってるのか全くわからない
363デフォルトの名無しさん:2010/10/16(土) 13:04:02
ツンデレっていうか、マジで無関心なんじゃない。
364デフォルトの名無しさん:2010/10/16(土) 16:03:22
>>360
そうなんだ

.NET 1系で作ったら.NET 1系でずっとメンテしていけばいいと思うけど
365デフォルトの名無しさん:2010/10/16(土) 16:43:29
IphoneアプリもRubyで作成できると聞いてネットでいろいろ調べております。

実際のところ、まだまだIphoneアプリ開発には使い物にはならない状況なのでしょうか?
将来的には結構未来があるようだったら嬉しいのですが。

366デフォルトの名無しさん:2010/10/16(土) 16:47:15
誰だそんなめんどくさいこと広めてるの

iPhoneアプリの作成経験とバックエンドサーバの構築の経験が豊富だったら可能
367デフォルトの名無しさん:2010/10/16(土) 16:50:11
「Rubyでもアレができます」系の言説は
「アレ」に熟練してることが最低限の前提条件だったりするな
根性入れたい人向け
368デフォルトの名無しさん:2010/10/16(土) 17:21:10
ギャグでやってることを本気されるのってどういう気分なのかなぁ。
RubyCocoaとか組み込みRubyとか…w
369デフォルトの名無しさん:2010/10/16(土) 17:29:52
>>359
こういう意見を最近よく見かけるけど、
本気で言っているとしたらかなり頭が悪い。
370デフォルトの名無しさん:2010/10/16(土) 17:48:34
>>368
ギャグではない
テックプレビュー的側面が強いが真面目だ
基幹業務に利用できないものを全部ギャグだというならプログラミング止めたほうがいい
371デフォルトの名無しさん:2010/10/16(土) 18:46:05
秋だな…
372デフォルトの名無しさん:2010/10/16(土) 18:59:48
373デフォルトの名無しさん:2010/10/16(土) 19:10:32
なんでこの試験、新しいGoldとかいうのまで1.8系のみなんだよ
374デフォルトの名無しさん:2010/10/16(土) 19:35:58
どうせなら向こうに書いてくれんか
375デフォルトの名無しさん:2010/10/16(土) 19:43:35
JIS/ISO Rubyが1.8系ベースだからじゃないの。
376デフォルトの名無しさん:2010/10/16(土) 19:51:05
>>364
そのとおり。
だから>>359にRubyでも1.8ならずっと1.8でずっとメンテしていけばいいだけ
と言いたかった。
377デフォルトの名無しさん:2010/10/16(土) 20:19:01
10年前の古いRubyで動くCGIメンテしたいやつ挙手!!!
378デフォルトの名無しさん:2010/10/16(土) 23:34:56
保守だけってのは言語に限らずあんまり人気ないだろ。
379デフォルトの名無しさん:2010/10/18(月) 07:49:37
380デフォルトの名無しさん:2010/10/18(月) 08:40:52
オプション引数・名前付き引数 (C# によるプログラミング入門)
http://ufcpp.net/study/csharp/sp4_optional.html


これか。C#にデフォルト引数がついてなかったとは知らなかったな。
呼び出し側で評価されるゆえの実装の都合なのかこれ
名前付き引数がVBにあったというのは衝撃的

しかし何故C#4?
381デフォルトの名無しさん:2010/10/18(月) 09:08:17
C#ってあほだな
382デフォルトの名無しさん:2010/10/18(月) 20:14:53
>>380
> 名前付き引数がVBにあったというのは衝撃的

これって、ぶっちゃけ引数が馬鹿みたいに多かったから、という気がしないでもない
なんつーか、GUIのプロパティ的な引数が
383デフォルトの名無しさん:2010/10/18(月) 20:47:49
昔VB使ってたけど、あってもあんまり使わなかったな
関数とかメソッドの引数はIDEがスムーズに表示してくれたから。
わざわざタイプ量を増やすことはなかった
384デフォルトの名無しさん:2010/10/19(火) 22:11:01
>>380
どうせ比較するならPowerShellの方が面白いと思う
あれの引数処理は変態
385デフォルトの名無しさん:2010/10/20(水) 07:02:16
PowerShellのスレってないな
話題にならないほど簡単なのか、単にはやってないのか
386デフォルトの名無しさん:2010/10/20(水) 07:06:41
>>385
Windows板にあるよ

Windows PowerShell 2.0 Part2
http://hibari.2ch.net/test/read.cgi/win/1261106064/
387デフォルトの名無しさん:2010/10/20(水) 10:56:26
Passenger3って何が変わったの?
388デフォルトの名無しさん:2010/10/20(水) 15:29:41
>>387
webprog 板のrails スレ行ってこい

417 名前:nobodyさん 投稿日:2010/10/19(火) 14:51:36 ID:???
Passenger 3.0 リリース
http://sourceforge.jp/magazine/10/10/19/0435206
389デフォルトの名無しさん:2010/10/24(日) 11:57:10
「終わってみるべき」の話なんだけど別にRubyが廃れたら廃れたでそれでいいんじゃね?と思うぞ。
廃れそうなもんを残すことは悪やん。
科学技術は廃れはするが絶滅はしないんだからさ。さ、終わろうか。
390デフォルトの名無しさん:2010/10/24(日) 17:08:06
まずお前から終われよ
391デフォルトの名無しさん:2010/10/25(月) 02:21:25
Rubyは理想を追いすぎたかも
既存のスクリプト資産に対して冷たい

Perlの配列(リスト)の仕様がひどいからといって、
仕様変更したら、大変なことになる。
392デフォルトの名無しさん:2010/10/25(月) 03:29:20
【Perl,PHP】LLバトルロワイヤル13【Ruby,Python】
http://hibari.2ch.net/test/read.cgi/tech/1287944631/

新スレ
393デフォルトの名無しさん:2010/10/25(月) 09:36:08
rubyは過去を振り返らない。
394デフォルトの名無しさん:2010/10/25(月) 09:44:27
>>391
1.8.6使い続ければいいでしょ
395デフォルトの名無しさん:2010/10/26(火) 11:19:36
米Microsoft、IronRubyおよびIronPythonをコミュニティに移管
http://sourceforge.jp/magazine/10/10/25/0552209

自分は Java 経験者なので JRuby には関心があるし、
JRuby の CRuby に対する互換性には満足しているけど、
IrunRuby はどうなんだろう?

Windows 版 Ruby が遅いと言われているけど、
IrrunRuby の互換性が上がり、速度も速くなったら、
Windows での Ruby 開発は IrunRuby で! みたいな日が来るかな?
(来ないか・・・・)
396デフォルトの名無しさん:2010/10/26(火) 20:15:42
MSが「好きな奴らがやってよ.もうカネ出さないけど」と
投げ出しただけ.
397デフォルトの名無しさん:2010/10/26(火) 20:39:17
複数ある最大値のインデックスを返せ
irb(main):001:0> x=([*"A".."D"]*2).shuffle
=> ["C", "A", "B", "B", "A", "D", "C", "D"]
irb(main):002:0> x.each_with_index
=> #<Enumerator: ["C", "A", "B", "B", "A", "D", "C", "D"]:each_with_index>
irb(main):003:0> x.each_with_index.to_a
=> [["C", 0], ["A", 1], ["B", 2], ["B", 3], ["A", 4], ["D", 5], ["C", 6], ["D", 7]]
irb(main):004:0> x.each_with_index.max
=> ["D", 7]
irb(main):005:0> x.each_with_index.max[1]
=> 7
irb(main):006:0> x.each_with_index.with_object(x.max).select{|(v,i),max| v >= max}.map{|(v,i),max| i}
=> [5, 7]
irb(main):007:0> RUBY_DESCRIPTION
=> "ruby 1.9.2p0 (2010-08-18 revision 29036) [i386-mswin32]"
irb(main):009:0> x.each.with_index(1).with_object(x.max).select{|(v,i),max| v >= max}.map{|(v,i),max| i}
=> [6, 8]
二回走査してしまうけどな
398デフォルトの名無しさん:2010/10/27(水) 01:04:01
>>395
おまいら用済み涙目ぷぎゃーm9
399デフォルトの名無しさん:2010/11/01(月) 14:40:52
http://twitter.com/yukihiro_matz/statuses/29317109670

yukihiro_matz: 英語圏でRubyとPythonを比較する記事を見ることが少なくなってきた
のは、RubyとPythonでクラスタが分離してきたからか。逆に日本語でRubyとPythonを
比較 する記事を見かけるのは国内でのPythonの地位が向上したからか。

               ∩_
              〈〈〈 ヽ
      ____   〈⊃  }
     /⌒  ⌒\   |   |
   /( ●)  (●)\  !   !
  / :::::⌒(__人__)⌒:::::\|   l
  |     |r┬-|       |  / <こいつ最高にアホだお
  \     ` ー'´     //
  / __        /
  (___)      /
400デフォルトの名無しさん:2010/11/01(月) 14:48:56
>>399
そんなに間違ってないと思うけど
英語圏ではRubyはweb関係のライブラリは豊富だよね
Pythonは幅広いジャンルで使われてる。
日本でもGAEが出てきてからPythonの日本語の情報がかなり増えた
401デフォルトの名無しさん:2010/11/01(月) 15:06:31
RubyっていうかRailsなんだよな

http://www.aoky.net/articles/james_iry/brief-incomplete-and-mostly-wrong.htm

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

これがほんとうまく言ってる
402デフォルトの名無しさん:2010/11/01(月) 15:21:47

               ∩_
              〈〈〈 ヽ
      ____   〈⊃  }
     /⌒  ⌒\   |   |
   /( ●)  (●)\  !   !
  / :::::⌒(__人__)⌒:::::\|   l
  |     |r┬-|       |  / <こいつ最高にアホだお
  \     ` ー'´     //
  / __        /
  (___)      /
403デフォルトの名無しさん:2010/11/01(月) 15:33:33
嫉妬すんなよmatz
404デフォルトの名無しさん:2010/11/01(月) 15:46:44
涙目でAA貼るmatzワロス
405デフォルトの名無しさん:2010/11/02(火) 13:30:15
こんな奴を名誉市民にする島根とか馬鹿スw
406デフォルトの名無しさん:2010/11/02(火) 15:10:56
>>405
マジか?
ソースは?
407デフォルトの名無しさん:2010/11/02(火) 15:48:10
「るびーのまち、よなご」
408デフォルトの名無しさん:2010/11/02(火) 17:01:01
2009-10-07

松江市は6日、プログラミング言語「Ruby(ルビー)」を開発した
まつもとゆきひろ(本名・松本行弘)氏を名誉市民に選んだ。ルビーが
国内外のIT(情報技術)業界から注目を集め、市内にソフトウエア会社が
進出するなどまちづくりに貢献している点を評価した。同市が名誉市民に
現役の人を選ぶのは異例で「ルビーのまち」として市をPRする狙いもありそうだ。

まつもと氏は大阪府出身。97年に松江市内のソフト会社に転職して市民になった。現在44歳で最年少での選定。
市では「企業進出につながるなど既に大きな功績があるほか、今後も全世界に
松江から情報発信してほしいとの期待を込めた」(総務部)と話している。

今回、名誉市民に選んだのはまつもと氏と人間国宝の紙すき職人、
安部栄四郎氏と前市長の宮岡寿雄氏。選定は05年の市町村合併後では初めて。
合併前には小説家の小泉八雲(ラフカディオ・ハーン)ら21人を選んでいる。
409デフォルトの名無しさん:2010/11/06(土) 07:50:11
Object.superclass
=> Matz
410デフォルトの名無しさん:2010/11/07(日) 00:14:55
http://hibari.2ch.net/test/read.cgi/tech/1287623173/404

読みやすさが上回ると書いたのは間違いだった。
でもPythonを読みやすいと思っている人と同じくらいの感覚を
Rubyのソースコードを読むときにも得ることはできる、とは思ってる。
保守性に関しては誰が保守するかによるんじゃないかな。
個人もしくは自分と同等以上の腕を持った人たちとで保守をするのであれば問題ない。
411デフォルトの名無しさん:2010/11/07(日) 01:33:03
通常、Rubyを使うことそのものが目的でない限り、
Rubyで書いたプログラムは短命であるほうが望ましい。
by じっちゃん
412デフォルトの名無しさん:2010/11/07(日) 05:01:05
Ruby は読みやすいけど
Rails の読みにくさは半端ない
413デフォルトの名無しさん:2010/11/07(日) 10:47:14
Rails-coreの人たちってすごいよな。
414デフォルトの名無しさん:2010/11/07(日) 10:59:35
△ Rails-coreの人たちってすごいよな
○ Rails-coreの人たちって変態
415デフォルトの名無しさん:2010/11/07(日) 11:19:18
◎ Rails-coreの人たちってすごい変態だよな
416デフォルトの名無しさん:2010/11/07(日) 12:03:18
おそらく褒め言葉として受け取ってしまうであろう

417デフォルトの名無しさん:2010/11/07(日) 12:06:57
基本褒めてると思うぞ
モノを見れば一目瞭然だ
馬鹿にしてると思ってる人はただの馬鹿なのでほっとけ
418デフォルトの名無しさん:2010/11/07(日) 17:42:13
馬鹿にする気持ちは無いけど、付いていけないな...というのが本音。
リフレクションの限界は既に20年前からLisperにとっては公知だった訳で、
趣味でRailsと遊ぶのなら全然かまわないけど、もしも業務で
Railsアプリの保守をヤレ!!なんて言われた日には涙目になると思う。
419デフォルトの名無しさん:2010/11/07(日) 17:56:11
どちらかというと人間の限界なんだよなw
書いたものを読めない奴が馬鹿なのか
読めないようなものを書く奴が馬鹿なのか・・・
420デフォルトの名無しさん:2010/11/07(日) 19:45:11
>>418
その理屈でRailsの保守は涙目というならわかるが、
なんでRails上で作られたアプリの保守で涙目なんだよ
Railsでアプリ作るのにリフレクションなんてほとんど関係ねーよ
421デフォルトの名無しさん:2010/11/07(日) 19:47:25
リフレクション志向言語が必要だな。
422デフォルトの名無しさん:2010/11/07(日) 20:27:11
>>420
システムが正常に動いている間はいいけど、もし何かトラブルが発生したとするよ。
そうした時、問題の切り分けを進める為には、Rails内部のコードまで掘り下げて調査して、
その結果「自分達の業務ロジックに誤りはありません」あるいは「バグでした」という
表明をする(=障害対応報告書を書く)必要があるよね。

自分も、過去に一度だけ(興味本意で)ActiveRecordのコードを読もうとしたけど、途中で降参した。
すぐそばにRails熟練者がいてすぐQ&Aできる環境にいればいいけど大半の人はそうじゃない訳で、
そんな環境下での保守業務って、おそらく過酷な精神状態になるんじゃないかと想像する。
(自分はUNIX Cのバッチ系アプリが主体でWeb開発を体験してないから、あくまで想像にすぎないけどね)
423デフォルトの名無しさん:2010/11/07(日) 22:59:48
railsの中の人に聞いちゃいけねーの?
424デフォルトの名無しさん:2010/11/07(日) 23:11:14
>>422
Rails本体の不具合であれば、ググれば大抵は他の人が同じ問題にぶち当たってるよ。
425デフォルトの名無しさん:2010/11/07(日) 23:16:37
>>421
だから、Lispとかは「S式 = プログラム = データ」だから、メタプログラミングも
リフレクションも(原理的に)Rubyとは比較にならないほど、柔軟性があるわけ。
ただ、これが非常に難解な代物だということが経験的に認知されて(それが20年前)、
今ではマクロのような「デザインパターン化(=定石化)した」もの以外は、否定的に見られる。

以下は「続ソフトウエア千夜一夜物語」という本(1991年, p202, 共立出版)からの引用。

 .... だいたい、リフレクションなんて、生物の類推からいえば宇宙怪獣みたいなものだ。
 一瞬にして変態してしまうかもしれないし、そもそも、拡散とタンパク質でできていることさえ
 期待できない。こんな奴、現代科学では対抗できそうにない。敵に回せば恐ろしいことになるが、
 反面、うまく手なずけることができれば、世界征服だってできるかもしれない(ちょっと、
 おおげさか)。こういう化物を手なずける方法があったら、いつかまた報告したいと思う。

さて20年後の現在、この化物をうまく手なずけることは可能なのでせうか?(そんな言語を実現できる?)
426デフォルトの名無しさん:2010/11/08(月) 06:11:12
>>422
じゃあ君はJavaや.NETで開発してトラブルに遭遇したら逆コンパイルするのかい?
この世のすべてのプログラムがソース公開されてるわけじゃないのだが。
DBが怪しかったらベンダーにお願いしてソースをもらうの?
想像でもいいけど、もうちょい想像力を使った方がいいと思うよ。
427デフォルトの名無しさん:2010/11/08(月) 06:46:20
オープンソース的には、解からんなら使うな、直せんなら使うな、でそ。
オープンソースのライブラリを仕事で使う際の予算には、そのライブラリ自体の開発・保守費用も入れておくべきだわ。
428デフォルトの名無しさん:2010/11/08(月) 07:37:50
それじゃみんな商用使うだろw
429デフォルトの名無しさん:2010/11/08(月) 16:35:44
>>422
Rails がダメなら、何を使えば良いのでしょうか?
Rails に影響を受けた、動的型付け言語のWebアプリケーションフレームワークは
軒並みダメということでしょうか?
430デフォルトの名無しさん:2010/11/08(月) 16:58:50
cake使っとけ
431デフォルトの名無しさん:2010/11/08(月) 17:29:30
>Rails に影響を受けた、動的型付け言語のWebアプリケーションフレームワークは

なんで動的型付けだけ?
432デフォルトの名無しさん:2010/11/08(月) 18:18:15
「オープンソースはいざというとき自分たちで直せるから安心」
とか雑誌あたりに載ってる内容を真に受けちゃったんだな。
433デフォルトの名無しさん:2010/11/08(月) 18:41:56
それ自体は間違ってはいないし強力な利点だけどな

ただ、サービスやプロダクトとして売るときにどうなるかについての予測が弱かったというか
434デフォルトの名無しさん:2010/11/08(月) 19:29:43
直せるスキルがあるかも考えずに手を出した
435デフォルトの名無しさん:2010/11/08(月) 20:03:02
gem のライブラリとか、個人が書いたものが殆どで、ドキュメントも申し訳程度でも
あればまだましなぐらいなレベルだったりするから、嫌でもソース読む羽目になると思うけどな。
ruby で書かれているから、まあ読み易いほうだし。オープンソースって、自分出直せる側面よりも、
貧弱なドキュメントの言い訳に提供されてるんじゃないかとさえ思う。
「一番確実なドキュメントはソースだ」っていうやつだ。
.NETは知らんが、Java もライブラリのソースは大概あるし、ソース入れておくと色々便利だよ。
VCLやQt とかソースがあるとデバッガーでそのまま追えてかなり重宝する。
436デフォルトの名無しさん:2010/11/08(月) 20:30:20
>>426
ベンダーのせいにできるだろ
それも価格のうちだ
検証はどこかで打ち切れないと人間もたないよ
437デフォルトの名無しさん:2010/11/08(月) 21:04:16
>>422
アプリでのActiveRecordの挙動の不具合が直せなくて、小一ヶ月近く悩んだことあったわ
テスト書きまくって、コアのソースも読みまくって結論がプラグイン同士の競合だった
プラグインに手を入れて直そうとしたが、プラグイン単体のテストはエラーでないし、
新規プロジェクトでも再現しなくてまたハマり

今でこそすぐに再現用のテストを書けたり、
Railsコアの挙動を前提に書かれているプラグインが競合しやすいというのはわかるようになったが

何か合ったら不具合の当たりをつけて、Railsコアのissue、プラグインのissue、Rubyのissueはまずチェック
最新版やパッチが提供されていることは多々ある。
解決していないとかパッチはなくても同じ不具合出している人はいることもある

楽なのは明確にエラーが出る時だね。大概は(海外で)先に引っかかっている人がいる。


Rubyをちょっと知っていても、Webアプリ(とWebフレームワーク)のデバッグ、
Railsのデバッグにも慣れないと大変だよ。

とはいえだよ、こういうのはRailsに限った話なのか?とは思うよ
Webアプリを長年やっていたり、Railを1.0前からやっている人が周りに入れば
簡単に解決したんじゃないかな?と思う問題がけっこうある
438デフォルトの名無しさん:2010/11/08(月) 21:18:36
>>426
大きめの開発の会社の知り合いが同じこと言っていたよ・・・

彼が言うには、OSやライブラリのベンダーに金払ってサポート契約してバグあると投げられると便利だと
プロジェクトがバグで大ハマリして頓挫するまでいって、
ベンダーに投げたら原因がわかりなんとOSのバグだったなんてことが
(ここであえて言わない方がいいのかもしれないがWindowsのバグw)

仕事だとどうしても先に進まなければいけない、一ヶ月なんてはまると損失がでかくなる
そんなときに、ベンダーでサポートしてもらえると、既知のエラーかもしれないし、
少なくとも自分達が原因かどうかくらいはわかる、そしてそれが自分たちの作業とは並行してできる。

そこに金が出せる(くらいの規模の)会社だと、いざというときにいいって言ってた

言うことはわかるし、問題の切り分けもしやすいだろう
ただしそんな金があるならね・・・


ただ、書いて思ったがこれはRailsやオープンソースだから駄目って話では全然ないな。
439デフォルトの名無しさん:2010/11/08(月) 21:23:18
>>434
いや、実際そうだよ、、、

・英語アレルギーあるならRailsはやめとけ
・いざというときにRubyやRailsのコアのソース読むための時間(=金)とれないならやめとけ
・本しか読めない開発者が多いならやめとけ

馬鹿にされるかも知れないが、>>434のレスが結論として非常によくまとまってる
440デフォルトの名無しさん:2010/11/08(月) 21:25:16
>>435
いやでも、ドキュメントが少ないのは
「一番確実なドキュメントはソースだ」という文化というより
開発者のリソースが少ないだけではw
441デフォルトの名無しさん:2010/11/08(月) 21:38:09
ソース見せる側も「どーせお前らに読めるわけねえだろw」って感じで公開してるんだろうし
実際それはコピペで再利用できるような次元の代物じゃない
ドキュメントない都合いい言い訳に利用されてる気はするよ
442デフォルトの名無しさん:2010/11/08(月) 21:51:42
「一番確実なドキュメントはソースだ」とか仕事で本気で言っている奴がいたら
しめ出すわ

世の中いわゆるハッカーばかりじゃねーんだよ。
443デフォルトの名無しさん:2010/11/08(月) 22:27:35
444デフォルトの名無しさん:2010/11/08(月) 23:17:12
>>443
matzしめ出すしか無いわ
445デフォルトの名無しさん:2010/11/08(月) 23:18:36
>>443
> 彼は普段から「ソースがドキュメントだ。バグも完全に記述されている」と主張しているが、誰も受け入れない。当り前だ。

誰も受け入れないwww
446デフォルトの名無しさん:2010/11/08(月) 23:26:23
でもまあ長ったらしいドキュメントとソース読む手間とあんま変わらん気はするんだよなw
関数リファレンス程度で十分だ
447デフォルトの名無しさん:2010/11/09(火) 00:34:45
コードがドキュメントだ
http://capsctrl.que.jp/kdmsnr/wiki/bliki/?CodeAsDocumentation
こんなこと言っている人もいるし。

>>441
>ソース見せる側も「どーせお前らに読めるわけねえだろw」って感じで公開してるんだろうし
そんな人いるのかなあ。汚いコードだから、恥ずかしくてソース出さない人はいるし、
どうせ公開しても誰も読まないだろうとは、思うけど。
綺麗な、わかり易いコードを書く重要性が認識されている現在、他人が読めないようなコードを
わざわざ書くようなプログラマーは、いないでしょ。
448デフォルトの名無しさん:2010/11/09(火) 01:01:21
テストがドキュメント替わりだ!テストを見れば挙動がわかる!!

ごめん、rspecって何?きゅうり???
449デフォルトの名無しさん:2010/11/09(火) 05:15:51
>>448
ステーキ
450デフォルトの名無しさん:2010/11/09(火) 05:32:17
>>447
>コードがドキュメントなら、プログラマがコードをクリアで読みやすくするよう努力することが重要となる。
>「コードがドキュメントだ」ということは、「特定のコードが良いドキュメントだ」ということじゃない。
>どんなドキュメントでもそうだけど、コードだってクリアにもなれば、ごちゃごちゃになることもある。
>コードだから他のドキュメントよりもクリアになる、ということもない。

中略

>コードが読みにくいのは、コードのことを真剣にドキュメントとして扱ってないからじゃないだろうか。
>コードをクリアにしようという気がなければ、勝手にクリアになるわけがない。
>コードをクリアにするための第一のステップは、「コードはドキュメントである」と受け入れることだ。
>それから、コードをクリアにしようと努めること。
>諸悪の根源は、プログラムを始めた頃に教えられたことにまで遡るのかもしれない。
>私の先生達はコードをクリアにすることをあまり強調していなかった。重要視してなかったようだし、
>その方法についても話してくれなかったしね。業界全体としては、もっとコードがクリアなことの価値を強調すべきだと思うよ。

いいこと言ってるじゃん
451デフォルトの名無しさん:2010/11/09(火) 17:39:19
ソースに
int x
int p
if( OK )
とか無造作に変数置いてあるようなのを見てそれをドキュメントとみなすのは無理がある
ドキュメントになるくらい詳しいソースでなければならない
452デフォルトの名無しさん:2010/11/09(火) 18:07:52
シグニチャ周辺を一見したときに、そのメソッドがどんな例外を上げるのかすぐに解らんのがつらい。
例外処理はプログラムのロジックに大きく関わるのに、それがぱっと見えないのはつらい。
453デフォルトの名無しさん:2010/11/09(火) 20:12:56
>>452
それはたしかにRubyに限らずスクリプト言語の弱点といえるね。
Javaのようにいちいち例外クラス名を列挙しなくて済むことと、ひきかえ。
解決策はとくに思いつかない。
454デフォルトの名無しさん:2010/11/09(火) 23:46:00
どんな例外だすかくらいソースにコメント書いとけよ
そうでなければソースがドキュメントなんて言うな
455デフォルトの名無しさん:2010/11/10(水) 00:45:37
コメント書くくらいならドキュメントを書いてよw
コメントは読まれることやメンテされることを期待しちゃだめなメモ書きじゃぜ。
コメントとは「腹減ったよぅ…」とか「ゲイツのバカ」とか書かれてる、そんな殺伐とした領域。
456デフォルトの名無しさん:2010/11/10(水) 01:15:33
rdocコメントの話じゃねーの?
457デフォルトの名無しさん:2010/11/10(水) 05:55:28
artonさんって日本人なのな。
458デフォルトの名無しさん:2010/11/10(水) 05:58:13
まあ紛らわしいハンドルが多いことは否定しない
日本語ある程度理解する外国の人とかも多いし
459デフォルトの名無しさん:2010/11/10(水) 07:13:53
Yuguiさんって女性なのな。
460デフォルトの名無しさん:2010/11/10(水) 07:16:14
そんなことより鳳たんの話をしようぜ!
461デフォルトの名無しさん:2010/11/10(水) 09:24:02
MLとか読み始めたとき、artonとaaronはごっちゃになってたわ
462デフォルトの名無しさん:2010/11/10(水) 16:12:21
>>452
>例外処理はプログラムのロジックに大きく関わるのに、それがぱっと見えないのはつらい。
これ、もうちょっと詳しく語ってほしいな。Javaかなんかを使ってる人なんだろうけど、
他の言語からみた改善してほしいポイントはもっと知りたい。叩きはなしで。
463デフォルトの名無しさん:2010/11/10(水) 16:48:13
うーんでも、トレードオフな問題に対して「改善」なんて出来るのかなぁとも思ふ。
Ruby的には、どんな例外が上がるなんて事はドキュメントで補ってよってスタンスなのであって、
「でも書くのめんどいし…」に対しては高機能なドキュメント自動生成ツールでも使ってよってのが現実的な解だとおもうべ?
464デフォルトの名無しさん:2010/11/10(水) 18:28:10
>>462
>>452 じゃないけど
Java には throws があるって意味かと
465デフォルトの名無しさん:2010/11/10(水) 18:29:12
>>462
Javaという言語は例外クラスを大まかに
「捕捉しなければならないもの」と
「捕捉のしようがないもの/捕捉することが必ずしも推奨されないもの」
の2つに分けてあって(親クラス見ればどっちか判る)

「捕捉しなければならない例外」は
素直に例外処理を書くか
メソッドの宣言に明記して呼び出し元に捕捉を強いるかの
どちらかを選択しなければならない
どちらもしていないコードはコンパイラに文句言われる

例えばIO処理なんかは大半が捕捉必須になってる
まあ、そのせいで初心者向けの説明コードとかに
なんにもしない例外処理が書かれたりして
微妙な評価も受けているがw
466デフォルトの名無しさん:2010/11/10(水) 20:31:20
補足を強制させられる例外ってのは
割と新しい概念じゃなかったかなあ
この点で、当時のJavaは妙に最先端な仕様だったはず

ただ、それが良いのかは微妙
後発言語でも、C#のようにチェック済み例外を導入しなかった言語もある
そもそも例外自体を削ってしまった言語もある
467デフォルトの名無しさん:2010/11/10(水) 20:37:58
>>466
>後発言語でも、C#のようにチェック済み例外を導入しなかった言語もある
これって理由あるんだっけ?もし知ってたら教えて!
468デフォルトの名無しさん:2010/11/10(水) 21:00:48
Googleのコーディング規約で例外つかわないとあったが、
Goもないんだな

> Why does Go not have exceptions?
>
> We believe that coupling exceptions to a control structure,
> as in the try-catch-finally idiom, results in convoluted code.
> It also tends to encourage programmers to label too many ordinary errors,
> such as failing to open a file, as exceptional.

> Go takes a different approach. Instead of exceptions,
> it has a couple of built-in functions to signal and recover from truly exceptional conditions.
> The recovery mechanism is executed only as part of a function's state being torn
> down after an error, which is sufficient to handle catastrophe but requires
> no extra control structures and, when used well, can result in clean error-handling code.

> See the Defer, Panic, and Recover article for details.


FAQ - The Go Programming Language
http://golang.org/doc/go_faq.html
469デフォルトの名無しさん:2010/11/10(水) 21:28:48
>>467
というより大勢から見れば”変”なのはJavaのほうなので、
問題なのはむしろ「なぜJavaはチェック済み例外を導入したのか」
って事だと思う

まあ意図としては分からんでもない
大域脱出を含めた、メソッドから戻ってきた場合すべてについて
振舞いを静的にチェックして文書化させたかったのだろう

それが完全にうまくいけば、C#も当然導入したんだろうけどね

>最近、多くの人の尊敬を集めているBruce EckelやRod Johnsonといった何人かのエキスパートが
>次のように公式に述べています。つまり、自分たちも当初はチェック例外に関する正統的な立場を
>完全に支持したのですが、結論として分かったのは、チェック例外のみを使うのは当初思われていた
>程には良い考えではないこと、またチェック例外が、多くの大プロジェクトで重大な問題の元になる、
>ということなのです。
Javaの理論と実践: 例外をめぐる議論
http://www.ibm.com/developerworks/jp/java/library/j-jtp05254/
470デフォルトの名無しさん:2010/11/10(水) 21:38:01
め、めんどくへえ…
471デフォルトの名無しさん:2010/11/10(水) 22:36:05
頭いい人らが真剣に考えても上手く行くとは限らないんだねえ
当たり前のことだけど
472デフォルトの名無しさん:2010/11/10(水) 22:51:55
例外処理はメモリーのGCによる自動処理で簡潔になるはずだった記述の利点を全て相殺して余る
例外も自動処理できたらいいのにな
473デフォルトの名無しさん:2010/11/10(水) 23:48:14
「チェック例外を使わない」ことと、「例外自体使わない」ことって、似ているようだけど別のことだよね。
前者はわからなくもないけど、後者は信じ難いなあ。
Googleに入ったら例外は使えないのか。余計な心配だけど。
474デフォルトの名無しさん:2010/11/11(木) 01:52:04
入力、出力、エラー出力の3系統があれば十分なんじゃないかな。
例外は解決するまで呼び出し階層をどこまでもゴルァするシロモノなんで、異常系のpathが増えてスパゲッティになり得るし、
呼び出し階層の深ーいところで発生した例外を、呼び出し階層の浅ーいところまで持ってこられたところでどうしようも無いわけで、
どうしようもない問題をたらいまわしにすること自体が邪悪で無駄な処理なわけで、
そいじゃ、影響範囲が直近ですむエラー出力で良いじゃんと。
475デフォルトの名無しさん:2010/11/12(金) 11:22:19
チェック済み例外は正義じゃなかったとはね。
若い頃一所懸命理想を語ってたのが恥ずかしくて身もだえしそうw
476デフォルトの名無しさん:2010/11/12(金) 12:24:02
自分の頭で考えたことならいいじゃないか
単にどこかの情報をオウムのように繰り返して得意になってたのなら恥ずかしいが
477デフォルトの名無しさん:2010/11/12(金) 15:11:50
頭のいい人が、頭の悪い人の行動パターンを予測するのはなかなか難しいからねえ。
馬鹿でモリ買い出来る様に作るくらいなら自分で作ったほうが早いに成りがち。
478デフォルトの名無しさん:2010/11/12(金) 16:03:19
InfoQ: JavaとRubyのブレンド− 新言語 Mirah
http://www.infoq.com/jp/articles/mirah-interview
479デフォルトの名無しさん:2010/11/15(月) 01:07:56
480デフォルトの名無しさん:2010/11/16(火) 01:20:01
mixがよくわからん。
簡単かつ良さが解るサンプルを見せてほしいな(///)
481デフォルトの名無しさん:2010/11/16(火) 01:49:25
RubyConf 2010 Keynote by Matz
http://www.slideshare.net/yukihiro_matz/rubyconf-2010-keynote-by-matz

Real Private Methodはやり過ぎだと思うけどなあ
instance_evalすら通らないなんて、原理的には正しいのかもしれないが、
柔軟性を損なってる

大多数のケースで最適なデフォルトと同時に、
プログラマが望めば大抵の原則を破壊できる柔軟さも
Rubyには兼ね備えていてほしい
482デフォルトの名無しさん:2010/11/16(火) 01:55:30
今後は動的型付けお仕事言語へとまっしぐらなのかそうなのか
483デフォルトの名無しさん:2010/11/16(火) 02:06:08
動的に型付けるだけの簡単なお仕事
484デフォルトの名無しさん:2010/11/16(火) 04:11:25
例外が便利なのは、エラーチェックをし忘れてても、実際にエラーが発生したときにそれがわかることだよな。
C言語だと
fp = fopen("file.txt", "r");
if (! fp) ...
みたいなことをいちいち書かなきゃいけなかったけど、例外がある言語ならそれがない。
だから、Goに例外がないというのが信じられない。
Goではいちいちエラーチェックしなきゃいけないの?
485デフォルトの名無しさん:2010/11/16(火) 05:54:13
例外はそのうち付くんじゃない?
486デフォルトの名無しさん:2010/11/16(火) 07:39:55
google のコード規約では C++ でも例外禁止だし付かないだろ
487デフォルトの名無しさん:2010/11/16(火) 07:59:37
Googleは関係ないだろ
とりあえず例外よりも構造体にメソッド生やせるようにしてくれ
488デフォルトの名無しさん:2010/11/16(火) 09:18:06
>>484
>>468に思いっきり書いてあるわけだが。。
489デフォルトの名無しさん:2010/11/16(火) 09:22:13
例外を正しく使えないプログラマ多いね。 その2
http://hibari.2ch.net/test/read.cgi/prog/1289342444/
490デフォルトの名無しさん:2010/11/16(火) 15:08:03
ロクにぐぐらずに質問するけど、yardocってこの1年でなんかすっごい進展とかあった?
メソッド引数をとりあえずマニュアルに列記してくれるとか
491デフォルトの名無しさん:2010/11/16(火) 22:22:03
>>488
>>468に書いてあるのは、Goでは例外処理とは違う機能を用意しているという説明であって、
いちいちエラーチェックをしなきゃいけないかどうかは、これだけではわからない。
492デフォルトの名無しさん:2010/11/16(火) 22:24:27
>>468を訳してみたけど、わけわかんない。だれかたすけて。

> Why does Go not have exceptions?
なぜGo言語には例外処理機能がないのか?

> We believe that coupling exceptions to a control structure,
> as in the try-catch-finally idiom, results in convoluted code.
> It also tends to encourage programmers to label too many ordinary errors,
> such as failing to open a file, as exceptional.
try-catch-finally イディオムのような例外処理機能を制御構造に加えると、結局はこんがらがったコードになると、私たちは確信しています。
また例外処理機能は、たとえばファイルをオープンするのに失敗したなど、非常にたくさんのよくあるエラーを、例外というラベルをつけてしまうのを助長します(意味不明)。

> Go takes a different approach. Instead of exceptions,
> it has a couple of built-in functions to signal and recover from truly exceptional conditions.
> The recovery mechanism is executed only as part of a function's state being torn
> down after an error, which is sufficient to handle catastrophe but requires
> no extra control structures and, when used well, can result in clean error-handling code.
Go言語は違うアプローチをとります。例外処理機能のかわりに、本当に例外的な条件のときにそれを知らせる(signal)のと復帰する(recovery)ための、2つの組み込み関数を用意しています。
復帰するメカニズムは、関数の、エラー後にトーンダウンする状態の単なる一部として実行されます(これも意味不明)。
災害を処理するにはこれで十分ですが、他に余計な制御構造を必要としません(なぜ反意の接続詞butが出てくるのかわからない。andでいいように思う)。
またうまく使われた場合は、エラー処理のコードがクリーンになります。

> See the Defer, Panic, and Recover article for details.
詳細は、Defer, Panic, and Recover という記事を見てください。
493デフォルトの名無しさん:2010/11/16(火) 22:27:06
エラー処理がイベントハンドラみたいになってるんだろうか
494デフォルトの名無しさん:2010/11/16(火) 22:31:22
いやふつうにGoのガイドなりマニュアルなり読めばいいんじゃねえの
495デフォルトの名無しさん:2010/11/16(火) 22:45:03
>>491
いやわかるだろ。アホか
496デフォルトの名無しさん:2010/11/16(火) 23:32:35
try-cacheを使うと混乱する。ファイルエラーだって複数あるのに、例外という
1つのラベルで扱う傾向にしてしまう。
try-cache例外処理の代わりに、呼び出すシグナル(割り込みとかコールバックだろ?)と
リカバリのメカニズムだけを実装した。復帰は関数のリカバリ処理の一部として実行される。
例外処理はこれで十分で、他の制御構造は必要ない。上手く使えばきれいなコードになる、
----------------
と言っているんだろ?
497デフォルトの名無しさん:2010/11/17(水) 00:35:05
>例外というラベルをつけてしまうのを助長します
これは、エラーにも色々あるけど例外があると全部ひっくるめて「例外」にしがちだから不味いよねってことじゃね?
極端に言えば「エラーは全部 throw new Exception(); みたいにやっちゃう。クソだ」みたいな。

エラー処理まわりはリトライ可能か否かで分けられるのがいいなーとか
try {
} catch {
if () retry; // 条件整えて try の頭から再実行
else fatal; // お手上げ
}
みたいな
498デフォルトの名無しさん:2010/11/17(水) 01:12:24
なんで肝心の原文無視で勝手に解釈するんだよw
どこにもそんなこと書いてないだろ
499デフォルトの名無しさん:2010/11/17(水) 01:36:35
だって原文見てないもの(キリッ
500デフォルトの名無しさん:2010/11/17(水) 06:16:32
>>497
よくわからないけど同意
501デフォルトの名無しさん:2010/11/17(水) 09:32:58
begin
 # あ
rescue FooException
 # め
rescue BarException
 # ま
end

そう言えばこれは型チェックとは言わないのけ?
502デフォルトの名無しさん:2010/11/17(水) 15:01:35
↑これGoldの問題に出ます
503デフォルトの名無しさん:2010/11/18(木) 15:11:16
504デフォルトの名無しさん:2010/11/18(木) 15:16:36
ネトヲチはネットWatch板へ
505デフォルトの名無しさん:2010/11/18(木) 22:23:07
>>501はどうなの?
506デフォルトの名無しさん:2010/11/18(木) 22:48:54
環境はwindowsです

argv[0]で1a:3333,111,999a\ のような文字列を受け取って、
rubyプログラム内で扱いたいのですが、うまくできません。

原因を確認するためにirbを起動してargv[0]を仮想的に当てはめて、
a=1a:3333,111,999a\\ なんてやると当然怒られるわけで。
最初からa="1a:3333,111,999a\\" で扱うのはアリですか?
507デフォルトの名無しさん:2010/11/18(木) 23:39:49
>>506
ARGV.unshift "1a:3333,111,999a\\"

コマンドラインオプションが上手く取れないのはcmd.exe上での
エスケープを間違えてるからじゃない?
508デフォルトの名無しさん:2010/11/18(木) 23:43:25
個人的にシェルのエスケープは泣きそうになることがたまにある
なんでbashとかあんなにエスケープさせるんだ
高機能なのも善し悪しな
509デフォルトの名無しさん:2010/11/19(金) 00:18:49
>>507
今手元に動作環境がないので大変申し訳ないのですが、

zzz.rb 1a:3333,111,999a\\

を実行したときに、zzz.rb内で
z=argv.unshift[0]

を記述していれば良い、という解釈でOKですか?
510デフォルトの名無しさん:2010/11/19(金) 00:37:04
cmd.exe は \ をエスケープしない、っていうかしてないだろ普段から

どの文字をエスケープ文字にするかは処理系が決める
「この文字はどこでもエスケープ文字」などということはない

ちなみに cmd.exe のエスケープ文字は ^ で、これを引数から入力するには2つ重ねる必要がある
C:\>ECHO ^
More? 123
123
C:\>ECHO ^^
^
511デフォルトの名無しさん:2010/11/19(金) 08:08:23
エスケープする仕様だったら、パス名書くたんびにしなきゃいけなくなるものな。
512デフォルトの名無しさん:2010/11/19(金) 09:54:05
というかcmd.exeは自身ではあんまり引数に構ってない
C言語とかのコンパイラ(この場合、リンカ?)が気を利かせて
エスケープを解釈するコードを埋めてたりするけど
513デフォルトの名無しさん:2010/11/19(金) 10:38:39
bash使った後、cmd.exe使うとシェル使いにくさに壁殴りそうになるし
cmd使った後、bash使うとエスケープ戸惑って壁殴りそうなので
bash.exeください
514デフォルトの名無しさん:2010/11/19(金) 10:39:54
powershell使えよ
515デフォルトの名無しさん:2010/11/19(金) 10:43:50
ruby使えよ
516デフォルトの名無しさん:2010/11/19(金) 19:17:40
csh遣いの漏れは価値組のようだな。
517デフォルトの名無しさん:2010/11/19(金) 19:26:06
ログインシェルをdashにして「多窓screenしても「dash+emacs」や「dash+irb」になるからメモリが安心!」とか言ってたが
screen上から screen irb とかやるとログインシェルなしでirbだけ別窓起動することを知って呆然とした俺が真の勝ち組
518デフォルトの名無しさん:2010/11/19(金) 19:35:01
…、おお…
519デフォルトの名無しさん:2010/11/19(金) 22:35:17
えっ
520デフォルトの名無しさん:2010/11/21(日) 14:15:16
最近プログラミングすると頭が疲れて10時間くらい眠り込んでしまうんだけどこれは一体なにかの病気なんだらうか…
521デフォルトの名無しさん:2010/11/21(日) 14:39:55
ただの加齢
522デフォルトの名無しさん:2010/11/21(日) 14:49:42
25歳までにプログラミング用体力を養っておかないと30過ぎてから何もできなくなる
若いうちにトレーニングして基礎体力作っておけば30過ぎてもマラソンできるとかいうのと完全に同じ理屈

筋肉が疲れるか脳が疲れるかの違いでしかない
523デフォルトの名無しさん:2010/11/21(日) 14:51:48
30過ぎてからプログラミング始めたけど別になんともないな
524デフォルトの名無しさん:2010/11/21(日) 15:17:29
物は壊れる。人は物であり、ゆえに壊れる。
鍛えるということは、壊し、修復力を消費する。
修復力が尽きたら終わり。
適切に、動かないようにしている人の方が長く生きる。
525デフォルトの名無しさん:2010/11/21(日) 15:53:31
ところが身体ってのは面白いもので、動かさないと
あ、この機能いらないんだって、退化させるんだよ
退化した機能で長生きはやっぱりできないわけだ
526デフォルトの名無しさん:2010/11/21(日) 17:03:23
脳も使わないと退化するからね
527デフォルトの名無しさん:2010/11/21(日) 20:16:45
進化・退化というよりも、老化による性能低下を補うために、ある種の最適化が働いている気がする。
528デフォルトの名無しさん:2010/11/21(日) 20:57:57
オハヨー
   oノハヽo
  ∩*・ 。.・)
  ヽヽ /(___
/ ̄i、_(____ノ
 ̄ ̄ ̄ ̄ ̄ ̄~
529デフォルトの名無しさん:2010/11/22(月) 06:59:52
最適化レベルを最大にした場合、それはニートと言えるだろうか。
530デフォルトの名無しさん:2010/11/22(月) 17:32:18
matz氏が使う引用符「|」がiPhoneのメールアプリでちゃんと引用と認識してくれないんだなこれが。
(#゚Д゚) プンスコ!
531デフォルトの名無しさん:2010/11/23(火) 00:18:45
着拒すれば?
532デフォルトの名無しさん:2010/11/23(火) 12:41:48
http://twitter.com/yukihiro_matz/statuses/6862021614112769

yukihiro_matz: 昨日の「遅刻する夢」に引き続いて、今日は「迷子になる夢」を見
た。なんか不安があるんじゃないだろうか、オレ
               ∩_
              〈〈〈 ヽ
      ____   〈⊃  }
     /⌒  ⌒\   |   |
   /( ●)  (●)\  !   !
  / :::::⌒(__人__)⌒:::::\|   l
  |     |r┬-|       |  / <こいつ最高に良い勘してるお
  \     ` ー'´     //
  / __        /
  (___)      /
533デフォルトの名無しさん:2010/11/23(火) 12:49:05
c
534デフォルトの名無しさん:2010/11/23(火) 12:55:32
マルチうざい
535デフォルトの名無しさん:2010/11/23(火) 14:27:31
RSpec 1 -> 2 の互換性がひどい……
メソッド名もクラス名もまとめて変わってて
Rspec 1対応のRakefileが、RSpec 2では普通に読み込めない
(NameErrorやNoMethodErrorで落ちる)

cgi.rbの互換性にも悩まされたけど、この極悪さはあのcgi.rbを超えてる
536デフォルトの名無しさん:2010/11/23(火) 14:33:50
バージョン1使えば
537デフォルトの名無しさん:2010/11/23(火) 16:08:07
d
538デフォルトの名無しさん:2010/11/23(火) 16:46:19
>>536
公開して、他の人がそのRakefileを使う可能性があるときにはどうするんだ
539デフォルトの名無しさん:2010/11/23(火) 16:55:24
>>538
バージョン1使えば
540デフォルトの名無しさん:2010/11/23(火) 16:59:16
e
541デフォルトの名無しさん:2010/11/23(火) 18:08:03
なんとなく思ったんだけど、テスト作るのめんどいときに、
ライブラリの利用者が書いたプログラムをテストコードとして利用する仕組みってないのかな?
542デフォルトの名無しさん:2010/11/23(火) 18:25:40
その利用者のコードはどこにあるんだ?
543デフォルトの名無しさん:2010/11/23(火) 19:03:14
ていうか「普通」はエラーも障害もなくプログラムは実行されるわけで
それをして通常系のテストコードとみなして最低限のテストとするのではなんかいかんのかいのう
544デフォルトの名無しさん:2010/11/25(木) 02:17:04
http://journal.mycom.co.jp/column/ide/095/
http://j.mycom.jp/column/ide/095/images/002l.jpg
RedcarはRubyで開発された拡張可能なテキストエディタだ。
Rubyといっても実際にはJRubyで動作し、ユーザインタフェースについてはSWT
(Eclipseで使用されているGUIツールキット)を使用している。そのため、
動作にはJava実行環境も必要になる点には注意してほしい。
Redcarはタブ型のエディタだが、任意のディレクトリをツリー表示することができる。
エディタの表示部は分割することもでき、エディタを並べて表示することも可能だ。
-----

プラグインで拡張できるみたいで、一瞬JavaのOSGiかと思ったけどなんか違う。
独自のプラグイン方式なのかな?
ところでRubyにもOSGiに相当するモジュール化フレームワークってあるんかいな?
結構、需要ありそうなんだがのー。tdiaryとかhikiとかも独自だよねい?
545デフォルトの名無しさん:2010/11/25(木) 04:03:05
>>544
>ところでRubyにもOSGiに相当するモジュール化フレームワークってあるんかいな?

OSGiとやらについて、思う存分語ってくれ。許してつかわす。
546デフォルトの名無しさん:2010/11/25(木) 10:30:39
さらっと調べたけどアプリにプラグインを組み込むためのフレームワークみたいなものかの

ダイナミックなモジュールシステム、OSGiを始めよう
http://kompiro.org/osgi/

Rubyのレベルで言えばRubyGemsがそうかな。アプリのプラグイン用途にも使える。

Webアプリなら最近はRackベース作られているのもある。Rackに準拠すればRailsやSinatraでも動かせるとか。
547デフォルトの名無しさん:2010/11/25(木) 23:44:43
ruby -r debug hoge.rb としたときの、ブレークポイントの設定方法がわからん。
b ファイル名:行番号
でやっているんだけど、ちっともうまくいかない。
なにかヒントください
548デフォルトの名無しさん:2010/11/26(金) 01:08:34
b hoge.rb:4 で普通に設定できたけど?

余計なことを言うとgemのruby-debugの方がソース中に
breakpoint と書いときゃいいだけなので楽
549デフォルトの名無しさん:2010/11/26(金) 02:02:57
自己レス
>>547
b file.rb:123
ではなく
b ./file.rb:123
だったorz
なるほどね、わかってみれば納得だけど、こりゃ気づかんわ。
550デフォルトの名無しさん:2010/11/26(金) 08:44:40
もしかして1.9で$:から.が抜けたのと関係してる?
551デフォルトの名無しさん:2010/11/27(土) 16:21:33
Redmine終了のお知らせ
Stepping down from Redmine - theAdmin.org - Redmine Development by the Redmine Guy, Eric Davis
http://theadmin.org/articles/2010/11/26/stepping-down-from-redmine/
552デフォルトの名無しさん:2010/11/27(土) 17:09:25
事情はわからんがコメント欄を見るとなんかの争いがあったのか?
mongrelのときもそうだったが、
重要ソフトの開発者がその手のことでおりてしまうのは非常に残念だ
553デフォルトの名無しさん:2010/11/28(日) 03:23:27
プログラマってそんな傾向だぞ。
ゲリラ的に公開して、いざ採用されて議論や調整が必要に成るとモチベーション低下でぶん投げ。
554デフォルトの名無しさん:2010/11/28(日) 09:00:51
人間関係はプログラミングできないからなぁ
555デフォルトの名無しさん:2010/11/28(日) 10:21:33
>>553
それはプログラマ無関係だ
もしそれがプログラマ固有のものだと考えるなら、パソコン捨てて街へ出ろ
556デフォルトの名無しさん:2010/11/28(日) 11:57:52
お前は仕事でモチベーションさがったからってぶん投げるのかよw
557デフォルトの名無しさん:2010/11/28(日) 12:08:52
投げる前に首吊る奴の方が多いだろうな
558デフォルトの名無しさん:2010/11/28(日) 13:48:56
 ∧||∧
(  ⌒ ヽ
 ∪  ノ
  ∪∪
559デフォルトの名無しさん:2010/11/28(日) 14:21:49
Version 0.0.1βみたいなのをRAAにあげて放ったらかしにしてる人はごめんなさいしなきゃね(´・ω・`)
560デフォルトの名無しさん:2010/11/28(日) 14:38:45
       ∧∧   
       /⌒ヽ)  もはようちゃん
      i三 U   
     〜三 |   
      (/~∪
    三三
  三三
三三
561デフォルトの名無しさん:2010/11/28(日) 14:44:49
>>559
 〈 ドモッ、スミマセン....。 〈 スミマセンスミマセン...。 〈 コノトオリデス!
  ∨ ̄ ̄ ̄ ̄ ̄ ̄  ∨ ̄ ̄ ̄ ̄ ̄ ̄  ∨ ̄ ̄ ̄ ̄ ̄
 (´Д`;)ヾ      (;´Д`)
   ∨)        (  八)         (´Д`;)、
   ((          〉 〉           ノノZ乙
562デフォルトの名無しさん:2010/11/28(日) 14:46:49

        _,,、 ─‐'''''''''''''‐.、.っ      / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\
     ,、‐'`::::::::::::::::::::::::::::::::::`、 っ    |                   |
    ,r.'::://:::::i:::::::::::::::::::::::::::::::ヽ っ  |   あるgem作者の母です。  |
   ,/::::::/:::;':i::::::!:::::::::::::::::::::::::::::::::゙、    |                   |
  /::i:::::!i:::::::i:::::::i:::::::::::::::::::::::::::::::::::i    |  ・・・ごめんなさい、      |
  l:i:i::::l_,|l::!:::i、:::::ヽ:::::::::::::::::::::::::::::::l   .|  軽い気持ちで.         |
  !l::!:::|=、゙!`、!`ニ 、::`:::、:::::::::::::::::::::!     |  gemを登録させた       |
  ヽ:!:l|      ̄`u`、:::::::::::::::::::::::ノ    |  私が馬鹿でした。       |
    |{l 〈    u  l:l`irr、:::::::::<  _ノ  こんな糞gemを         |
.     |ハ 、,,,__     リ ,ヒノ:::::::::::::', . ̄ ̄|   こっそりあげていたなんて !!|
    /7'i、`='" u   ' !;::::::::::::::ノ    |  私が今日              |
.   iY/,/,ヘ:、_,、‐'`   `'---'"     .|  こんなことを言ったこと、  |
   !', , , ノ l ヽ    u  / |       |  作者には          |
.  〈 ' ' ' / :l  `i、   ,/  l       .|  黙っておいてくださいね。   |
   i   'i  |   !,  ,/   l.      \___________/
    i u ヽ. l  ,−'、 /へ   l
    i,   }ノイ. ~ Y ゚  ヽ l
563デフォルトの名無しさん:2010/11/28(日) 14:57:31
コード書くのとプロジェクトを組み上げるのは別の能力なんだな。
両方こなせる人もいるが。
564デフォルトの名無しさん:2010/11/28(日) 15:04:12
懺悔室はこちらですか?
565デフォルトの名無しさん:2010/11/28(日) 15:09:58
自分は何もしてないくせに「おまえはこうしなければならない」
みたいなこと言うやつとかいるんだろうな。
おれはとてもじゃないけど我慢できんと思うよ。
566デフォルトの名無しさん:2010/11/28(日) 16:33:24
× おまえはこうしなければならない
○ このプログラムはこういう動作でなければならない
567デフォルトの名無しさん:2010/11/28(日) 17:16:28
>>566

> × おまえはこうしなければならない
> ○ このプログラムはこういう動作でなければならない
→ だからお前はそう書くべきだったしすぐ書き直せ

・・・同じじゃね?
568デフォルトの名無しさん:2010/11/28(日) 17:19:58
569デフォルトの名無しさん:2010/11/29(月) 00:33:28
Rubyは簡単なようで難しい。
まず環境構築が難しい。
GUIが難しい。
言語仕様はシンプルだけどね。
C#は言語仕様はRubyより複雑だけど
開発環境の構築が簡単。
RADもあるしね。
570デフォルトの名無しさん:2010/11/29(月) 00:43:09
viさえあればプログラムが書けるのがRubyist
VisualStudioがないとHelloWorldさえ書けないのがC#使い
571デフォルトの名無しさん:2010/11/29(月) 00:52:31
C#のコンパイルオプションとかマニフェストとかわかんないお
ついでにJavaのクラスパスとかもわけわからない
でもRubyはまあ多分それなりに使える

ぶっちゃけこんな人も多いと思うんだ
これは、Rubyが使える人っていうのが正しいのか、
コンパイル言語が使えない人って言うのが正しいのか
572デフォルトの名無しさん:2010/11/29(月) 01:22:31
馬鹿っていうのが正しい
573デフォルトの名無しさん:2010/11/29(月) 01:40:06
多くの人にとって良さげだろうなデフォルト動作をするように作ってあるわけで、
それがよさげに動いたからといって「それなりに使える」と勘違いしている人ってのが正しい。
574デフォルトの名無しさん:2010/11/29(月) 01:49:08
面倒なのが問題なのか
面倒なのを理解できないのが問題なのか
その面倒さは本当に必要なものなのか
これらは議論の余地がある
575デフォルトの名無しさん:2010/11/29(月) 03:19:50
>面倒なのが問題なのか
鬱です。病院へ逝きましょう。

>面倒なのを理解できないのが問題なのか
馬鹿です。プログラミングから足を洗いましょう。

>その面倒さは本当に必要なものなのか
精神障害です。病院へ逝きましょう。
576デフォルトの名無しさん:2010/11/29(月) 07:56:06
面白いと思って書いてるんだろうな
577デフォルトの名無しさん:2010/11/29(月) 08:26:00
年末ですので察してあげてください
578デフォルトの名無しさん:2010/11/29(月) 14:03:50
たこ焼き仮面が何をしたいのか分からなくなってきた。
579デフォルトの名無しさん:2010/11/29(月) 14:56:22
_whyといい、なんかとんがった人が結構いる(た)なw
580デフォルトの名無しさん:2010/11/30(火) 02:46:00
マキーノ氏が、

>東大情報H研では100倍速くなる Ruby コンパイラ開発中だそうです。

と日誌に書いてるが、これはどんなもの?
581デフォルトの名無しさん:2010/11/30(火) 02:49:18
>>580
YARV→戦車
新型→ガンダム
582デフォルトの名無しさん:2010/11/30(火) 03:22:25
>581
え、俺はニュータイプじゃないから、それは困るよ。
583デフォルトの名無しさん:2010/11/30(火) 09:16:59
と、見せかけてガンタンクだったりボールだったりするかもよ
584デフォルトの名無しさん:2010/11/30(火) 12:56:39
>>582
そもそもRubyをまともに扱うにはニュータイプでないと無理そうだが・・・
585デフォルトの名無しさん:2010/11/30(火) 12:58:07
遠まわしに、Rubyがガンダムだといいたいのだろうが
RubyやRailsでWebやネットをひっくり返すようなことなんて不可能だから
586デフォルトの名無しさん:2010/11/30(火) 12:59:14
しまった。よく考えたらうちの会社Railsでリニューアルしたwebサービスで上場したんだった・・・。
587デフォルトの名無しさん:2010/11/30(火) 15:02:40
Rubyのopen-uriで「|」が使えない。InvalidURIErrorになる。対処。
http://d.hatena.ne.jp/shunsuk/20101129/1291026634

たしかにRFC3986みるとReservedに|はないんだよな。unreservedにもない。
RFCちゃんと読んでないからわからないけど、こいつはどう扱うのが正解なんだろう。
588デフォルトの名無しさん:2010/11/30(火) 15:46:07
>>587
パーセントエンコード「しなければならない」

http://host/?q=a|b
というURLは
http://www.amazon.co.jp/たのしいRuby―Rubyではじめる気軽なプログラミング-高 橋-征義/dp/4797314087
というURLがたまたまURLとして解釈される環境があるのと完全に同じレベルで、
いろんなシステムでたまたまURLとして動作するに過ぎない

仕様上は | はマルチバイト文字なんかと同じように %7C にパーセントエンコードされて
http://host/?q=a%7Cb
と記述されなければならない
「マルチバイト文字ってReservedにもUnreservedにも書かれてないけどどーすんだ」と悩んだりしないだろ?
589デフォルトの名無しさん:2010/11/30(火) 17:54:06
後学のために教えて頂きたいのですが
パーセントエンコードってなんですか?
590デフォルトの名無しさん:2010/11/30(火) 18:02:03
ここで聞いてるよりぐぐったほうが早いんじゃない
591デフォルトの名無しさん:2010/11/30(火) 18:02:34
「パーセント」文字をなんかどうにか利用して「エンコード」した何かだろう
日本語って外国語の動詞とか名詞とかぐっちゃにしてもそれなりに通じて便利でいいなw
592デフォルトの名無しさん:2010/11/30(火) 18:04:26
URIにおけるパーセントキャラクタ使用エンコーディング法、とでも言えばいいのかね

○○エンコーディングというべきところを「○○エンコード」で止めてる例は非常に多い
レジスターとレジストに次ぐ誤用だと思う

URIエンコーディングでもいいんだけどさ
593デフォルトの名無しさん:2010/11/30(火) 18:38:49
どんまい
594デフォルトの名無しさん:2010/11/30(火) 18:39:00
>>592
> URIエンコーディングでもいいんだけどさ

“でもいい”じゃなくて
“正しくはURIエンコーディング”
だろ
595デフォルトの名無しさん:2010/11/30(火) 18:42:24
Google翻訳がそのまま|使っててうぜえ
http://translate.google.co.jp/#ja|en|Matz

コピペしたときに自動リンクして表示するようなブラウザ、なんらかのクライアント、エディタ等で大概考慮されずにブツ切れになる
596デフォルトの名無しさん:2010/11/30(火) 18:55:43
encodeとencodingで困ったことはないが
referとrefernceの違いを意識してない奴が死ねることはある
597デフォルトの名無しさん:2010/11/30(火) 19:50:24
パーセントエンコーディングは一応RFCにある正式な…正式な…どこだったかな
598デフォルトの名無しさん:2010/11/30(火) 19:59:04
599デフォルトの名無しさん:2010/11/30(火) 20:45:36
ここは英語の勉強になるインターネットですね。
600594:2010/11/30(火) 21:02:57
>>592
>>597
>>598
正式な名称だったのか すまん
601デフォルトの名無しさん:2010/11/30(火) 21:03:05
いつまで経っても進歩のない人たちですね。
英語の話なら最初からカタカナなど使わずに記述してれば無問題なのだし、
カタカナを使った瞬間から、それは外来語という「日本語」になってるのにね。
外来語が本来の原語と相違したからといって、そんなに目くじら立てなくても。
602デフォルトの名無しさん:2010/11/30(火) 21:07:10
正しい名称を使おうとすることは悪いことではない
603デフォルトの名無しさん:2010/11/30(火) 21:15:24
本当は URI.escape も URI.encode も誤りで、URI.percent_encode と書かなければならない
encode と escape をごっちゃにするのは日本の悪い癖
604デフォルトの名無しさん:2010/11/30(火) 21:22:02
えすかぺ
605デフォルトの名無しさん:2010/11/30(火) 21:26:20
てかRFC3986より前のURIエンコーディングとかURIエスケープとか
そういうわかった気になるが曖昧模糊な語をまとめた概念としてRFC3986で正式登場したのが
「パーセントエンコーディング」だったはず
606デフォルトの名無しさん:2010/11/30(火) 23:29:57
Javaだと「わーっはっはは!名前なんて後からなんぼでも変えたらええねん!うりゃー!」
って豪快にかけるけどRubyだと初めから異様に気を使うわ…
607デフォルトの名無しさん:2010/11/30(火) 23:38:01
名前変更はしづらいよなぁ
Emacs/VimではIDEと比べてそこが弱い
608デフォルトの名無しさん:2010/12/01(水) 17:03:15
いやIDE使っているが動的にごにょごにょすることが多いRailsだとどちらにせよテスト(BDDかTDDかしらんが)書いてないと対応できんぞ・・・

NetBeansでローカル変数の名前変更したら、スコープ外の変数も変えられてワロタ

609デフォルトの名無しさん:2010/12/01(水) 17:49:17
なんでいきなり「テスト書いてない」って話になっちゃうの?
610デフォルトの名無しさん:2010/12/01(水) 19:40:19
> 名前変更はしづらいよなぁ
611デフォルトの名無しさん:2010/12/01(水) 19:41:01
動的言語に慣れてない奴とテストも書かない奴はすっこんでろ
612デフォルトの名無しさん:2010/12/01(水) 19:52:57
自動テストを使ってる自分に酔ってるやつきてんね
613デフォルトの名無しさん:2010/12/01(水) 20:06:20
Java開発のIDEにのってるリファクタリングツールはまじで便利だからな
614デフォルトの名無しさん:2010/12/01(水) 20:13:37
Rubyではうまく動かないけどな…
なんとかもうちょっとうまく動作すると幸せかもしらん
615デフォルトの名無しさん:2010/12/05(日) 18:20:18
Win7 x64+Ruby-1.8.7-p302-i386-mswin32+wxRuby-2.0.1-x86-60ですが
wxRubyのsamples\dialogs\dialogs.rbは動くのに
samples\treectrl\treectrl.rbがVC++ランタイムエラーで動きません
ttp://windyakin.if.land.to/src/up38_2379.png

msvcp71.dll/msvcr71.dllは以下から入手しています
ttp://www.vector.co.jp/soft/win95/util/se435079.html

足りないファイル名等が表示されないのでお手上げ状態です
何か判る方がおりましたら教えてください。よろしくお願いします
616デフォルトの名無しさん:2010/12/05(日) 18:29:42
Ruby入れたんだけどやることがない
617デフォルトの名無しさん:2010/12/05(日) 18:30:25
自分はこういう「んもー」ってのが嫌なんで、RubyでGUIするときはJRubyでSwingを使うぜ…HAHA
618デフォルトの名無しさん:2010/12/05(日) 18:44:39
>>615
Ruby は GUI に向いてない
619デフォルトの名無しさん:2010/12/05(日) 18:56:48
>>618
というのは過去の話でRuby+Qtを使って余裕でGUIアプリを作れる。
620615:2010/12/05(日) 19:09:22
解消しました。原因はサンプルコードの記述が誤っていたためでした
mswin32+wxRuby-2.0.1-x86に変えたところトレースバックを見られて
treectrl.rb 781行の:textは:valueが正しいようです
コードを修正したところ動くようになりました。騒がせしました

#しかし、Rubyコードが誤っているとランタイムエラーを吐く実装って・・・('A`)
#wxRuby(と言うかwxWidgets)の実装手法的にやむを得ないのか?
621デフォルトの名無しさん:2010/12/06(月) 01:44:13
>>619
kwsk
622デフォルトの名無しさん:2010/12/06(月) 05:24:43
GUIを作るのに必要なのはGUIの知識であって、それがあればRubyだろうが何であろうが関係のない話
623デフォルトの名無しさん:2010/12/06(月) 05:45:02
ここは本スレだからそれじゃ釣れないぞ
624デフォルトの名無しさん:2010/12/06(月) 06:15:55
プログラムを作るのに必要なのはプログラムの知識であって、それがあればRubyだろうが何であろうが関係のない話

なかなか応用がきくな。
625デフォルトの名無しさん:2010/12/06(月) 09:07:40
GUIを使いたいならGUIの使い方を覚えるべきであって
Rubyのバッドノウハウを集めても仕方ない
626619:2010/12/06(月) 10:57:44
>>621
qtrubyはいいぞ〜
C++版は変なプリプロセッサーが必要だが
Ruby版は動的言語の利点を生かしてサクサク書ける。
もともと配列や文字列の扱いはRubyの方が上なので
GUIアプリを作るときの苦労が格段に減る。
qtrubyになれたらC++でGUIアプリとかやってられんわ
627デフォルトの名無しさん:2010/12/06(月) 11:28:34
でもQTってお高いんでしょ?
628デフォルトの名無しさん:2010/12/06(月) 11:45:56
GTK+なんかよりは「お安い」と思うなあ
一番お買い得なのはTkだけどね…
629デフォルトの名無しさん:2010/12/06(月) 12:00:30
QtRuby >> wxRuby >>>>> Ruby/Tk >>>>>>>>>> GTK
630デフォルトの名無しさん:2010/12/06(月) 12:16:03
Ruby/Gtk2便利すぎわろすwwwwww
631デフォルトの名無しさん:2010/12/06(月) 16:26:04
Ruby/Gtk2使いにくすぎわろすwwwwww
632デフォルトの名無しさん:2010/12/06(月) 16:39:49
いまどきGTKはないわ
633デフォルトの名無しさん:2010/12/06(月) 17:59:59
>>624
ワロタ

>>625
そーなんだよね。Ruby for win32もだけど処理系やライブラリ側で吸収しないとね。
大概そういうところは使う人も人手が足りないみたいだけど。

>>626
サンクス
634デフォルトの名無しさん:2010/12/06(月) 18:40:33
>>627
tが大文字だとQuickTimeか何かの略語っぽい感じがしないでもない
635デフォルトの名無しさん:2010/12/06(月) 21:17:41
qtってライセンスがゴミじゃなかったっけ?
636デフォルトの名無しさん:2010/12/06(月) 23:42:48
QT と聞くと、シード落ちした選手や、新たに日本ツアーに参加する
ゴルフの大会だと思ってしまうよ
いま、無職になるかどうかの瀬戸際の戦いが行われている。

2010 ファイナルクォリファイングトーナメント
ttp://www.jgto.org/jgto_web/qualifying/10_final_01.html
637デフォルトの名無しさん:2010/12/07(火) 08:00:21
ライセンス的にはwxRubyの方が気楽
638デフォルトの名無しさん:2010/12/07(火) 11:00:56
qtrubyはRuby1.9+MinGWでビルドできなくてあきらめた
gemだとRuby1.8用のが落ちてくるし
639デフォルトの名無しさん:2010/12/07(火) 21:29:29
あ、今のqtってLGPLか すまん勘違いしてた
640デフォルトの名無しさん:2010/12/08(水) 00:47:01
「感極まる」とか「光」とか、マジ勘弁してほしい。
コアな人たちにカルト臭振りまかれると、周りに薦めにくくなってかなわんよ。
641デフォルトの名無しさん:2010/12/08(水) 00:50:22
そんなこといきなり何の脈絡もなく言われても
何のことだかさっぱりわからないのだが
642デフォルトの名無しさん:2010/12/08(水) 00:56:14
札幌Ruby会議03に参加して印象に残った言葉たちについて - 実はhokkai7go
http://d.hatena.ne.jp/lncr_ct9a/20101205/1291556831


これか

Rubyみたいなものギークやギーク紛いが好きでやるならいざしらず
強制されたらと思うと
643デフォルトの名無しさん:2010/12/08(水) 01:09:06
ゲーテかな?
644デフォルトの名無しさん:2010/12/08(水) 01:33:39
ゲーテもの?
645デフォルトの名無しさん:2010/12/08(水) 05:11:01
>>642
まず先にまともにリリースしてくれよwww
日本産というだけで広めていくのはやめてくれ
646デフォルトの名無しさん:2010/12/08(水) 08:00:43
おまえの言う「まともにリリース」を定義しろ。

ふつうにリリースされてるし。
647デフォルトの名無しさん:2010/12/08(水) 09:07:19
いやぁ、それほど普通とは言えないと思う。
648デフォルトの名無しさん:2010/12/08(水) 10:54:53
何を持って普通とするのかなんて人それぞれだよね、という話?
649デフォルトの名無しさん:2010/12/08(水) 17:07:31
rubyで作れば普通に短納期でコスト削減とか言い出してる営業と変わらないな。
ruby集団詐欺状態。
650デフォルトの名無しさん:2010/12/08(水) 17:19:48
結局根拠なしのFUDか
651デフォルトの名無しさん:2010/12/08(水) 17:58:19
>>469
最初の納期は短いが、保守に金がかかるしスケーラビリティないわで結局高くつく。
というのを、やっと取引先の社長が実感したようだw
652デフォルトの名無しさん:2010/12/08(水) 18:11:29
Rubyプロダクトを「直接外部に売っている」人は基本、全員詐欺師だと思ってよい

ただし、Rubyを「内製で使っている」ところがあるなら、競合他社は警戒したほうがいいかもしれない
653デフォルトの名無しさん:2010/12/08(水) 18:16:15
またおかしいやつが出てきたよ
654デフォルトの名無しさん:2010/12/08(水) 21:03:08
刷新計画のマニュアルが激しく読みづらいな。
旧式みたいにメソッド一覧のリンクをページの上らへんに並べてほしい。
655デフォルトの名無しさん:2010/12/08(水) 21:38:47
漏れはマニュアルはあれでいいと思うけど、rubygemsはなんとかできんかな。
656デフォルトの名無しさん:2010/12/09(木) 00:10:37
>>654
旧式って、RWiki使ってたときの(背景色がグレーの)リファレンスだよね
そんなリンクあったっけ?
657デフォルトの名無しさん:2010/12/09(木) 00:57:01
新しいマニュアルはるりまサーチ使ってるわ

初心者スレのテンプレにいれとけや

Rubyリファレンスマニュアル全文検索 | るりまサーチ
http://rurema.clear-code.com/

ブラウザの検索バーにでもいれといても便利
クエリ:Matz > バージョン:1.9.2 | るりまサーチ
http://rurema.clear-code.com/query:Matz/version:1.9.2/
658デフォルトの名無しさん:2010/12/09(木) 01:02:15
>>655
mechanizeのドキュメントをブラウザで見たい

http://rubygems.org/ の検索窓でmechanizeで検索

http://rubygems.org/gems/mechanize

Documentをクリックでrubydoc.infoに飛ぶ
http://rubydoc.info/gems/mechanize/1.0.0/frames

ただやっぱり自分の入れているrubygemsの中から横断検索をだな・・・

それをいうなら、もともとr(ry
659デフォルトの名無しさん:2010/12/09(木) 01:04:44
で、るりまサーチとやらはどれが公式なんですか?

Rubyリファレンスマニュアル全文検索 | るりまサーチ
http://rurema.clear-code.com/
Rubyリファレンスマニュアル全文検索 | るりまサーチ
http://doc.okkez.net/search/
502 Bad Gateway
http://doc.ruby-lang.org/ja/search/
660デフォルトの名無しさん:2010/12/09(木) 01:21:53
作ったすとーさんとこじゃねーの?
661デフォルトの名無しさん:2010/12/09(木) 07:50:21
CentOS 5.5 32-bit版上の、
ruby 1.9.2p0 + tokyocabinet-1.4.46 + tokyocabinet (1.29)
の組合せで、TokyoCabinet::HDB#eachが使えない。

ブロック渡してるのに、
if(rb_block_given_p() != Qtrue) rb_raise(rb_eArgError, "no block given");
のとこで、常に "no block given"例外が発生する。
同じ環境に入れたruby 1.9.1p378だと問題無い。
もし、rb_block_given_p()自体に問題が有るなら、いろんなCライブラリに影響が出そうだが、
どうなってるんだろ?
分かる人が居たら教えて。

↓再現コード
require 'rubygems'
require 'tokyocabinet'
d = ::TokyoCabinet::HDB::new
d.open("a.tch", TokyoCabinet::HDB::OWRITER | ::TokyoCabinet::HDB::OCREAT)
d['a'] = 1
d['b'] = 2
d.each {|k, v|
puts "#{k} = #{v}"
}
# in `each': no block given (ArgumentError)
662デフォルトの名無しさん:2010/12/09(木) 12:52:53
663デフォルトの名無しさん:2010/12/09(木) 13:37:54
10kgの米袋くらい
664デフォルトの名無しさん:2010/12/09(木) 15:46:12
人それぞれだな。
漏れには影響無いし。
665デフォルトの名無しさん:2010/12/09(木) 21:30:28
スーツ族に対する認知度アップにはつながるんじゃないか?で、Railsが採用されやすくなるとか
RubyもRailsもHerokuも知らなくても、セールスフォースは知ってるやつは結構いそうな
666デフォルトの名無しさん:2010/12/09(木) 21:46:40
スーツ族w
667デフォルトの名無しさん:2010/12/09(木) 22:50:29
どうにも頭の中でへろきゅーって読んじまう
668デフォルトの名無しさん:2010/12/09(木) 22:54:09
へーろくに1票
669デフォルトの名無しさん:2010/12/09(木) 23:33:55
読み方がわかんねーよ。
しかも間違ったらバカにされる風潮…
670デフォルトの名無しさん:2010/12/09(木) 23:45:16
カタカナではハオクと呼ぶのがたぶんいちばん近い
Heroku (pronounced her-OH-koo) だそうだ
671デフォルトの名無しさん:2010/12/09(木) 23:46:05
超人Heroku
672デフォルトの名無しさん:2010/12/09(木) 23:49:43
>>670
Her/O/Ku なのか
これはどう見ても He/Ro/Ku だろ
というか今からでもへろくにしろ
たぶん日本で100人くらい頭抱えて明日からどうしようか悩んでるぞ
673デフォルトの名無しさん:2010/12/09(木) 23:52:15
「セールフォースがハオク買収したねえ」
「そうですね、ハオクどうなるんですかね」
「(こいつ、昨日までヘロクって呼んでたくせに…)」
「(リーダー、昨日までヘロクって呼んでたのに…)」
674デフォルトの名無しさん:2010/12/09(木) 23:54:09
her-OH-kooだと「ハオーク」かな
オが高い
675デフォルトの名無しさん:2010/12/09(木) 23:58:46
社長さんが発音してる動画とかないのかw
676デフォルトの名無しさん:2010/12/09(木) 23:59:58
語源は?
677デフォルトの名無しさん:2010/12/10(金) 00:02:16
Haiku + なんたら、だったが忘れた。
678デフォルトの名無しさん:2010/12/10(金) 00:04:24
Hero + Haiku

http://www.youtube.com/watch?v=jDQT__oLnZU 0:55あたり。
679デフォルトの名無しさん:2010/12/10(金) 00:06:39
Hero? いや、Hello ? ニポンジンにはよくわからないアルヨ
680デフォルトの名無しさん:2010/12/10(金) 14:36:23
ライブラリ中に arg.respond_to? :to_a というヤなコードがあった
この人は Object#to_a があったことを知らないんだろうな…
まあ、1.9.2 常用の進歩的未来人かもしれないがw
681デフォルトの名無しさん:2010/12/10(金) 16:06:56
$ ruby -e 'class Foo;undef to_a;end;foo=Foo.new;foo.to_a'
-e:1: undefined method `to_a' for #<Foo:0x801056ca8> (NoMethodError)
682デフォルトの名無しさん:2010/12/10(金) 18:44:05
>>680
別にヤとは思わないけど…
将来的にObject#to_aが無くなったときのためにだな…うぉっほん…ゴホンゴホン
683デフォルトの名無しさん:2010/12/10(金) 20:18:56
>>680
warning: default `to_a' will be obsolete
684デフォルトの名無しさん:2010/12/10(金) 20:27:56
>>683がなんで>>680にそれを言うのかが分からない。
685デフォルトの名無しさん:2010/12/10(金) 20:45:28
http://ascii.jp/elem/000/000/575/575869/

>前日明らかにされた6つ目のクラウドサービス「Database.com」に続き、今回の基調講演では、
>「RemedyForce」と「Heroku(ヘロク)」が発表された。

ASCIIはヘロク派か
686デフォルトの名無しさん:2010/12/10(金) 20:56:31
ttp://www.salesforce.com/jp/company/news-press/press-releases/2010/12/101210-1.jsp
> Rubyベースのアプリケーション構築のためのクラウドアプリケーション・プラットフォームにおいて
> 最も急成長している企業Heroku(ヘロク)社の買収について、最終合意に達したことを発表しました。
ということで、セールスフォース社自体がオフィシャルでヘロクと呼んでる
少なくとも企業名と企業プロダクトとしてはヘロクなのだろうな
687デフォルトの名無しさん:2010/12/11(土) 05:33:38
セールスフォース自体、日本に対応し切れてないからどうでもいい。
quickbooks,quickenすら参入出来ずに撤退しちゃったガラパゴス市場が日本。
688デフォルトの名無しさん:2010/12/11(土) 09:05:02
だれかフクオカRuby大賞に応募した人いる?

「予備審査を通過された作品の応募者には、12月上旬をめどに電子メールによりご連絡を差し上げます。
それ以外の応募者には、連絡いたしませんのでご了承ください。」

電子メールがまだ来ない。
予備審査を通過しないとか、まさかね。
689デフォルトの名無しさん:2010/12/11(土) 09:32:41
>>688
通過してないとしても、応募出来るネタとか、技術あるだけですごいよ。
690デフォルトの名無しさん:2010/12/11(土) 09:33:28
へーろくに1票
691デフォルトの名無しさん:2010/12/11(土) 10:25:40
なにー!
ハーオークと呼んでたのに、まさかのへロク
692デフォルトの名無しさん:2010/12/11(土) 11:05:58
>>687はアホ
693デフォルトの名無しさん:2010/12/11(土) 12:25:29
windows用のバイナリがいろいろ出てるけど
それぞれの特徴とか利点欠点教えて
Ruby Install Guide::Microsoft Windows版のビルト環境による違い
に書いてあること以外で
694デフォルトの名無しさん:2010/12/11(土) 14:46:28
>>693
mswin … ttp://www.artonx.org/data/asr/
      VC6 でコンパイルされたもの、ActiveScriptRuby、メイドインヒゲのオヤジ、配布パッケージは豪華で便利
      昔から「Windows版」として扱われてたので、どんな gem でも tips でも Windows 環境だと思ってくれる(mswin32)
      VC6 が基本入手不可なので緩やかに終了して mingw にバトンタッチされる予定だったのだが延命中、初心者向け

mingw … ttp://rubyinstaller.org/
      MinGW でコンパイルされたもの、RubyInstaller、世界の選択、配布パッケージは Ruby 本体のみ
      数年前から「Windows版」として認知され始めたもの、名前は mingw や mingw32 を返す
      RUBY_PLATFORM =~ /mswin/ という古い「Windows環境チェック」記述では false になるという初心者トラップ発生器
      devkit で gem ソースを自前コンパイルしたり Windows チェック処理を自力書き換えしたりする必要がまだ時々ある
      mswin よりはファイル IO とかが普通速度らしいので上記のライブラリ使用時の障害を自力克服できる中級者向け

cygwin … cygwin 環境でコンパイルされたもの、cygwin 常用者向けのマニアック Ruby
      なんでも自分でできる人向けの選択、外野がどうこう言うことではないのでおまえらも文句言うな的な似非上級者向け
695デフォルトの名無しさん:2010/12/11(土) 15:00:59
mswin の Ruby がインストールされてると
gem の拡張バイナリライブラリも mswin でコンパイルして提供しなければならなかったはず
それはもう無理筋だろうというので mingw が採用されたんじゃなかったっけ
ENV.windows? みたいなメソッドが昔からあってそれ使うだけでいい、とかならよかったのにね
696デフォルトの名無しさん:2010/12/11(土) 16:59:23
新スレ:
Ruby 初心者スレッド Part 40
http://hibari.2ch.net/test/read.cgi/tech/1292049975/
697デフォルトの名無しさん:2010/12/11(土) 20:28:27
拡張ライブラリの書き方について詳しい方教えてください。
関数の引数1がHogeクラスのみを期待しています。
関数の入り口で型をチェックして他の型だった場合例外を投げたいのですが、
例えば配列だったら rb_check_type() で一発ですが、これが任意のクラスの場合は
どうやってチェックすれば良いのでしょうか?
↓ 配列の場合
VALUE ruby_Transform_set_matrix (VALUE self, VALUE val_matrix)
{
  rb_check_type (val_matrix, T_ARRAY);

698デフォルトの名無しさん:2010/12/11(土) 21:45:23
>>697
rb_obj_is_kind_of か rb_obj_is_instance_of
または T_DATA であることをチェックしたうえで dfree の値を比較する

ダックタイピング云々の話を持ち出すべきか迷ったけど
引数に Data_Get_Struct とかするならそんなことは言ってられないな
trunk 限定なら TypedData を使えばもっと綺麗に書けそうなそうでもなさそうな
699デフォルトの名無しさん:2010/12/11(土) 21:54:31
なんか楽しいRubyとかに載ってない知識がバンバンでてくるんだが、
どこでそんな知識吸収しているのだろうか?
たのしいRubyだけじゃ駄目か・・・
700デフォルトの名無しさん:2010/12/11(土) 21:56:41
何事もたのしいのは最初だけ
701デフォルトの名無しさん:2010/12/11(土) 21:58:37
>>688
なぜ落選には通知しないんだろう
待つ身のつらさをわかってないな
702デフォルトの名無しさん:2010/12/12(日) 00:50:32
>>698
ruby.hとかinternal.hとか見ましたが、やっぱり簡単な(1行で)書く方法は無いですね。
あっても良さそうですが…仕方がないので自分でチェックして例外飛ばす関数を書きます。
rb_obj_is_instance_of って戻り値がVALUEですが、これQtrueが帰ってくると思っていいのでしょうか。
(まあ試せば分かる)
703デフォルトの名無しさん:2010/12/12(日) 06:10:15
>>688
単に面倒なだけなのか、それとも落選者に間違って当選メール送ったときのリスクヘッジか。
あるいは福岡県民の県民性か。
704デフォルトの名無しさん:2010/12/12(日) 06:21:15
うむ、とんこつラーメンの食いすぎだな。
705デフォルトの名無しさん:2010/12/12(日) 09:37:21
お役所仕事っぽいのはたぶん利権がからんでる
706デフォルトの名無しさん:2010/12/12(日) 10:04:06
利権がからんでる(笑)
707デフォルトの名無しさん:2010/12/12(日) 11:24:16
>>699
言語としての知識ならともかく
ここ最近出てるのは、ビルド環境による違いとか拡張ライブラリとかの話だからな
基本的には書籍にあまり載ってない話だと思う
708697:2010/12/12(日) 11:50:57
>>698
結局こうなりました。
 if (!rb_obj_is_kind_of (val_arg1, rb_cTransform)) {
  rb_raise (rb_eArgError, "wrong argument type (expected Transform)" );
 }
本当は1行で書きたかったのですが3行なら許容範囲です。
(実際はこれが引数の個数分続くが…)
ありがとうございました。

拡張ライブラリまわりは情報が少ないですね。特にCではなくC++で書くとき。
丹念に探すとある事はあるけど見通しが良くない。
だれかチュートリアル書いてくれるとうれしいな。
709デフォルトの名無しさん:2010/12/12(日) 16:24:54
>>705
Matzに黒い金が流れてるのか
710デフォルトの名無しさん:2010/12/12(日) 18:15:41
お役所的には落選者に用は無いからな
711デフォルトの名無しさん:2010/12/12(日) 18:58:18
いや、落選者に対する通知はないのが多数派だと思うが
712デフォルトの名無しさん:2010/12/12(日) 19:15:26
当選者の発表は商品の発送をもって代えさせて頂きます。
713デフォルトの名無しさん:2010/12/12(日) 19:24:28
>>712
これってよくみるけど、よく考えると当選者0でも誰にも分からないやり方だよな
714デフォルトの名無しさん:2010/12/12(日) 19:30:44
>>713
なにをいまさらw
715デフォルトの名無しさん:2010/12/12(日) 19:47:57
商品じゃなくて賞品だから。
金払って連絡なかったらブチ切れるけど。
716デフォルトの名無しさん:2010/12/12(日) 22:30:32
>>520
ワロタ
717デフォルトの名無しさん:2010/12/15(水) 02:37:42
Rubyをプッシュしてくる人がいたからRubyを知らないふりをしてRubyのどこが良いのか聞いてみたら
「open('file'){|io|io.read}」とか「URI('http://example.net').read」とかごっつ書きやすいねん!
って言うもんだから
「それは別にJavaでもpublic static String ioRead(String filename)とか public static String uriRead(String uri)ってメソッドでもつくっとけば良いだけでそ?」
って言ったらそれ以上言わなくなった。なんだかなぁ...
718デフォルトの名無しさん:2010/12/15(水) 02:48:19
つまり君は嫌われたってことだ
719デフォルトの名無しさん:2010/12/15(水) 03:11:27
そういうところにメリットを感じるかどうかだろうね
まあ親切に教えてやったのにそんな反応されたら誰だって何だコイツって思うだろうけど
720デフォルトの名無しさん:2010/12/15(水) 03:14:06
>親切に教えてやったのに

ここに双方の認識の溝がある
721デフォルトの名無しさん:2010/12/15(水) 03:39:04
無知と偽り欺いて親切心を引き出し相手から情報を得たところで
感謝を期待する相手に批判を浴びせたと
722デフォルトの名無しさん:2010/12/15(水) 03:42:49
>感謝を期待する

ここがおかしい
723デフォルトの名無しさん:2010/12/15(水) 03:51:15
あさはかな知識比べで悦に浸る時点でどっちも同類だろ
724デフォルトの名無しさん:2010/12/15(水) 06:20:45
>>717

>>717

標準ライブラリでできるのがいいんじゃないか。

cgi.rb使いたくなかったら、標準でないフレームワーク使わないといけない言語が何を言うか。他にどこがいいんだよ。

Rubyはちょっとしたスクレイピングが楽にできるライブラリが整っている

それは標準ライブラリで楽にできるんですか?






725デフォルトの名無しさん:2010/12/15(水) 06:21:36
Rubyで書ける
これがメリットだと感じないならRubyでアプリケーション作るのやめたほうがよい




726デフォルトの名無しさん:2010/12/15(水) 06:34:39
理由なんてねぇよ!好きだから好きなんだよ!
727デフォルトの名無しさん:2010/12/15(水) 10:25:29
なんて台詞が寛容される時代が来たかと思うと感慨深い。
Rails以前は職場でRubyと言うだけで迫害を受けてきたもんだ。
殺意を覚えるほどに…
728デフォルトの名無しさん:2010/12/15(水) 13:26:37
どんな職場やねん
729デフォルトの名無しさん:2010/12/15(水) 13:35:42
対銀行系やら対官公庁系にいらっしゃるのでは?
730デフォルトの名無しさん:2010/12/15(水) 13:39:46
年輩Perlerの発言権が強くて、Ruby使いにくい職場というのは、結構ありそうだが。
731デフォルトの名無しさん:2010/12/15(水) 14:59:40
それはないわw
732デフォルトの名無しさん:2010/12/15(水) 17:04:07
逆に最初はすぐ作れるとか威勢いいけど、後の始末は無責任なrubierって感じが。
733デフォルトの名無しさん:2010/12/16(木) 00:41:37
>>732
おいやめろ

やめくてだい
734デフォルトの名無しさん:2010/12/16(木) 08:14:27
rubyistと呼べ!
735デフォルトの名無しさん:2010/12/16(木) 11:47:31
うみんちゅ
否ッ、
るびんちゅ
736デフォルトの名無しさん:2010/12/16(木) 20:29:46
>>731
普通にあるけど。
そしてその老害PerlerはモダンなPerlの書き方が出来ず、
Moose(Mouse)を使うと火病る。
それどころかTest::Classなど、テスト系のコードを見ると
訳解らんことするなと火病る。マジで困る。
737デフォルトの名無しさん:2010/12/16(木) 20:59:09
女子高生の従妹がプログラマになりたいとか言ってたからとりあえずRubyのコミッタでも目指せと言っておいたぞ。
738デフォルトの名無しさん:2010/12/16(木) 22:33:00
>736
Mooseは、クラシックなPerlとは別の意味でクソなので、
火病られてもしかたがない。

ついでに言うと、Ruby書かせると大した意味もなくメタプログラミング
しようとする奴がいるが、そいつもクソ読みにくいので、
非難されてもしかたがない。
739デフォルトの名無しさん:2010/12/17(金) 09:48:36
むしろモダンPerl MongerはMoose視ねよって言っているイメージあるがw
740デフォルトの名無しさん:2010/12/17(金) 18:54:00
jkの従姉妹が可愛いかtryするからうpよろ。
741デフォルトの名無しさん:2010/12/17(金) 19:59:45
>>717
JavaとRubyで比べたときのRubyのいいところって
大クラス主義というか使う側が必要に思うメソッドが
然るべきクラスに機能が被ろうがただの別名だろうが
標準でブチ込まれてるところだからな。
(その辺のニーズについてはApache Commonsとか見ると一目瞭然)

Javaは標準ライブラリだと機能本位で綺麗に整理された、
でもニーズの最大公約数って感じで使いづらいAPIなのと
上の方で上がってたチェック例外の弊害が相まって
理屈の上では発生しうるけど大概のユースケースでは
どうでもいい例外をハンドリングさせられたりして
えらく冗長なコードを書く羽目になると。

今ならIDEが超優秀なのと、ApacheやGoogleのライブラリを
抵抗なく普通に使っちゃうって時代だから、
同じことをやるならタイプ量は同程度か、
下手したらJavaのが少ないって位に状況変わったけど、
標準ライブラリと自前ライブラリだけでベタ書きで
ロクなIDEもない、って時代にJava書いてた人間には
Rubyは輝いて見えると思われる。
742デフォルトの名無しさん:2010/12/17(金) 21:01:36
>>741
>>717は、ど〜見ても皮肉なわけだが
Rubyの特性をよく知らない連中が
何故かRubyを賛美するようになってしまった
743デフォルトの名無しさん:2010/12/17(金) 21:25:18
Rubyの特性について詳しく

まあ>>717はプッシュする相手を間違えたってことか
744デフォルトの名無しさん:2010/12/17(金) 23:30:57
やはり、プッシュするなら、Arrayに限るな。
745デフォルトの名無しさん:2010/12/18(土) 00:23:46
いやスタっk…でもそういうの嫌いじゃないぜ
746デフォルトの名無しさん:2010/12/18(土) 00:30:32
プッシィがなんだって?
747デフォルトの名無しさん:2010/12/18(土) 00:41:29
彼女にpushしまくったら嫌われたのを思い出した。
748デフォルトの名無しさん:2010/12/18(土) 01:25:29
それ彼女じゃないよ
749デフォルトの名無しさん:2010/12/18(土) 01:45:15
girlfriend = GirlFriend.create(:age=>15)
girlfriend.respond_to?(:insert)
=> false

(゚∀゚)!!
750デフォルトの名無しさん:2010/12/18(土) 07:18:37
俺も彼女の干しぶどうをpushしたい
751デフォルトの名無しさん:2010/12/18(土) 07:23:42
東京都青少年の健全な育成に関する条例に触れる恐れがありますので
>>750 のレスは東京都在住の方々はあぼ〜んして下さい。
752688:2010/12/18(土) 10:26:53
応募していたフクオカRuby大賞ですが1週間経ってもメールが来ませんでした。
「12月上旬をめどに電子メールによりご連絡」(今日は18日)なので、
どうみても予選落ちです本当に有難うございました(´・ω・`)

変なライブラリじゃないだけどなぁ
Rubyの応用分野の1つを(これから)切り開く重要な尖兵のはずなのだが……うーむ
ちと見せ方を考え直す必要がありそうだ。
753デフォルトの名無しさん:2010/12/18(土) 12:04:35
自分のサイトとかで公開されたらどうでしょうか
754デフォルトの名無しさん:2010/12/18(土) 12:22:35
自分ではすばらしいと思って応募するんだろうけど、
実際は落選の方が圧倒的多数なのだ。
ほとんどの人が自分の作品はすばらしいと思ってるよ。
何度でも挑戦すればいい。
755デフォルトの名無しさん:2010/12/18(土) 12:26:03
“説明し辛い”分野のライブラリはこういう公的支援はなかなか受からないので仕方がない

自前で地ならししておいてからおもむろに
「Rubyにおける○○と言えば俺と言えなくもない俺がライブラリを開発!」
とか煽ればいい
一般論として話くらいは聞いてくれる
756デフォルトの名無しさん:2010/12/18(土) 14:02:57
Ruby1.8 以降では Net::HTTP.version_1_2 を書かなくていい(内部スイッチがデフォルトでオン)ということを最近知った
Ruby1.6 で動作させないスクリプトでは書かなくてもいいのか
めちゃくちゃ気を遣ってたぞ俺
757デフォルトの名無しさん:2010/12/18(土) 19:20:51
あれ?そうなの?
必ずNet::HTTP.version_1_2 を書くものだと思っていた。
758デフォルトの名無しさん:2010/12/18(土) 19:28:34
手元の 1.8.7 の net/http.rb が

class HTTP < Protocol

HTTPVersion = '1.1'
@newimpl = true

def HTTP.version_1_2
@newimpl = true
end

def HTTP.version_1_1
@newimpl = false
end


@newimpl が最初から true だから、1.8.7 では HTTP.version_1_2 を呼ぶ必要性はないな
759デフォルトの名無しさん:2010/12/18(土) 21:57:27
>>717
>「それは別にJavaでもpublic static String ioRead(String filename)とか public static String uriRead(String uri)ってメソッドでもつくっとけば良いだけでそ?」

URI().readのほうはしらんが、ioRead()を定義したところで open() {|io| io.read } と一緒だとは思えないなあ。
ブロックに相当する機能がanonymous classぐらいしかないjavaでは、便利さは比較にならん。
760デフォルトの名無しさん:2010/12/19(日) 19:33:11
>>759
google guava http://code.google.com/p/guava-libraries/
とかあるから今はそうでもない。
ブロック相当の挙動を匿名インナークラスで実現してるから、
見た目は不格好な反面、IDEが補完してくれるから
処理の中身以外はタイプ不要って感じ。

この辺踏まえてlambdaの導入が先送られたんだろうけど、
なんかこう、美しくない感じ。
761デフォルトの名無しさん:2010/12/19(日) 19:42:50
this.equals(that)
なのか。
this.equals(other)
って書いてた。

AとBを比較するとき、
A=thisだとしたら、Bはthatなのか!
Bはotherじゃないのか!英語わからん!
762デフォルトの名無しさん:2010/12/19(日) 20:00:10
>>761
"This equals that."はそれ自体が日常的な文章だからそれに合わせているだけ
this.equals(other) でも流し読み的問題はない
763デフォルトの名無しさん:2010/12/19(日) 20:06:56
でもやっぱりそのへんはこだわりたいよね。
764デフォルトの名無しさん:2010/12/19(日) 20:36:19
ごっそり書き換えとかになることあるけどな
765デフォルトの名無しさん:2010/12/19(日) 20:42:40
ていうか this をレシーバ例として使うことは Ruby ではほとんどないだろ
766デフォルトの名無しさん:2010/12/19(日) 20:53:46
それ何を対象にしたどこのだれ調査だよw
767デフォルトの名無しさん:2010/12/19(日) 21:25:19
ほとんどない は言い過ぎだな
稀によくあるだろ
768デフォルトの名無しさん:2010/12/19(日) 21:32:52
稀によくある
機会があれば使ってみようと思った
769デフォルトの名無しさん:2010/12/20(月) 11:22:38
OpenKinectのruby bindingsの開発が始まったようです。
http://groups.google.com/group/openkinect/browse_thread/thread/c2d084bae4282cba#
rubyからモーションキャプチャーできるよ!!

スケルトントラッキングがどうなるのか今調べてる最中ですが、
ボーンのT,R,Sが取得できれば、そのままDesktop-M3Gに渡してアニメーションできるので、
任意の3Dモデルがぐりぐり動かせるはず。100%Rubyで歌って踊るまであと少し。
770デフォルトの名無しさん:2010/12/20(月) 14:28:02
調べた。OpenKinectドライバーで取れるのは rgb, Z, 加速度 だけ。
その上のPrimeSense社のNITEミドルウェアに相当するskeleton-trackingライブラリがないので、
すぐにモーションキャプチャーが作れるわけではない。残念。
OpenNIのruby binding書くのも面倒……

771デフォルトの名無しさん:2010/12/21(火) 10:31:19
>>749
ruby-neet-age40 > girlfriend = GirlFriend.create(:age=>15)
PermissionError: do not have work and too old

Humm... Would you be able to help?

772デフォルトの名無しさん:2010/12/21(火) 20:26:12
rubyのmkmfって、autoconfみたいなもんだという理解でOK?
もしそうだとしたら、extconf.rbのオプションに--prefixを取れるようにしたければ、どうすればいいの?
773デフォルトの名無しさん:2010/12/22(水) 02:31:08
>>760
anonymous classだと外側のfinalでないローカル変数にアクセスできないよね。
そんな不便なanonymous classとクロージャとでは、便利さが大違い。
774デフォルトの名無しさん:2010/12/22(水) 17:17:15
いままでRuby関係のトレンド/アクティビティをワッチするために、
deliciousのrubyタグのRSSをGoogle readerに流して見ていたのですが、
deliciousが死にそうということで、代替手段を模索しています。

みなさん、最近の動きのモニタリングはどのようにしているのでしょうか?
775デフォルトの名無しさん:2010/12/22(水) 17:27:33
rubyflow と twitter かな。
あと rails特化で railscasts とか。
776デフォルトの名無しさん:2010/12/22(水) 17:29:12
ライブラリ情報は ruby-toolbox とか
777デフォルトの名無しさん:2010/12/22(水) 19:04:19
777
778デフォルトの名無しさん:2010/12/22(水) 21:49:25
なんだかんだでdelicious無くならないと思うけど
779デフォルトの名無しさん:2010/12/22(水) 22:08:28
潰すんじゃなくて引き取り手を探している、みたいな報道無かった?
780デフォルトの名無しさん:2010/12/23(木) 01:17:17
Java屋がPOJOがどうの力説してきたけど正直どうでもいいと思った。
781デフォルトの名無しさん:2010/12/23(木) 09:59:08
>>775
Asciicastsもな

まとまってなくてリアルタイム性が高いトレンドならTwitterやTumblrも
TwitterやTumblrがdeliciousやはてなブックマークのように、URLとタグでヒモ付て見られたらいいんだがな
いい方法ない?
782デフォルトの名無しさん:2010/12/23(木) 10:12:22
最近 delicious の代わりに使う人を見かける pinboard.in は
自分のTLでURLの付いたツイートをブックマーク化して、
そのツイートに付いているハッシュタグをブックマークタグに
設定する機能がある。

有料だけど。
783デフォルトの名無しさん:2010/12/23(木) 16:20:36
>>781
非公式twitter検索でrss取ってくればできそう
784デフォルトの名無しさん:2010/12/24(金) 11:54:41
俺のプログラムがこんなにバグが無いわけが無い
785デフォルトの名無しさん:2010/12/24(金) 22:06:02
>>773
あれは匿名インナークラスのオブジェクトがそれを呼び出した外側のオブジェクトより長生きしうるケースの対策ってだけだから
インナークラス側で参照する変数が不変であることは
実は要求されてない。
外側で使用したい変数をfinal付で別途定義した変数に代入するだけでOKだったり。
ていうか、内部実装的には単にインナークラス側に参照をコピーしてるだけなんだよなあれ。
786デフォルトの名無しさん:2010/12/25(土) 15:13:17
matz氏の中の人ってなんでMS Office嫌いなん?
クリスマスプレゼントにOffice98でもあげよっか?
787デフォルトの名無しさん:2010/12/25(土) 18:33:47
あげてもmatzはDebian使いだからインスコできないし
あの人はできてもインスコしないと思うぞ
788デフォルトの名無しさん:2010/12/25(土) 18:59:46
matzの話はすれ違い
789デフォルトの名無しさん:2010/12/26(日) 19:28:42
そういえば1.8、1.9ともにクリスマスリリースが出ているな。
予定されていたことでニュースバリューはないかもしれないけど。
790デフォルトの名無しさん:2010/12/27(月) 06:30:09
Matz hates any version of Windows OS.
And Matz hates the language C++, too.
791デフォルトの名無しさん:2010/12/27(月) 06:41:48
s = "http://www.google.com".wget
位はそろそろ標準で欲しいところ。
792デフォルトの名無しさん:2010/12/27(月) 06:45:31
require 'open-uri'
html = URI("http://www.google.com/").read
793デフォルトの名無しさん:2010/12/27(月) 08:24:06
matz、ハブる方向なのね。
よくわかんねぇや。
794デフォルトの名無しさん:2010/12/27(月) 08:48:13
>>793
なんじゃ?どゆ意味
795デフォルトの名無しさん:2010/12/27(月) 08:56:34
作者から作ったものを取り上げるべきじゃない
796デフォルトの名無しさん:2010/12/27(月) 09:16:34
>>791
Curlもついでに頼む
http://rubygems.org/gems/curb

s = "http://www.google.com".download(:by => :wget, :options => some_options)
とか
s = "http://www.google.com".download(:by => :curl, :options => some_options)
で頼む

gem install download
で入れられるようにしてくれ。後は任せた
797デフォルトの名無しさん:2010/12/27(月) 09:20:35
Stringクラスにwgetメソッドが入ってることにおかしさを感じないのか?
798デフォルトの名無しさん:2010/12/27(月) 09:25:08
レシーバーが文字列だと不自然という話?
799デフォルトの名無しさん:2010/12/27(月) 09:25:49
>>797
URIリテラルくれ
800デフォルトの名無しさん:2010/12/27(月) 09:34:40
>>797-799
妥協

class String
  def to_uri
    URI(self)
  end
end

s = "http://www.google.com".to_uri.read
801デフォルトの名無しさん:2010/12/27(月) 09:39:49
>>800
採用
802デフォルトの名無しさん:2010/12/27(月) 09:51:00
>>798
メソッド名が固有名詞ってところに違和感がある。
もしwgetメソッドがwgetの機能をそのまま持つなら納得出来る。

>>800
URI("http://www.google.com").read の方が一文字少ないけど、
String#to_uriの中で require 'uri' してくれるのなら便利かも。
803デフォルトの名無しさん:2010/12/27(月) 10:07:51
>>802
いや、おれがおかしさとして指摘したのは、
文字列とwgetの機能には直接的な関連が全くないということなのだが。
それがわかった>>799は「URIリテラルくれ」と言ったのだろう。
その手の便利機能を標準で入れ込んでいったら、クラスがめちゃくちゃになってしまう。
804デフォルトの名無しさん:2010/12/27(月) 11:41:46
pythonの悪口はそこまでだ
805デフォルトの名無しさん:2010/12/28(火) 04:17:50
Pythonの場合「配列やリストと文字列は別物だ、リストにjoinメソッドがあるのはおかしい、文字列にあるべきだ」だからね
806デフォルトの名無しさん:2010/12/28(火) 06:17:21
>>805
意味か解からない…
もうちょっと詳しく。
807デフォルトの名無しさん:2010/12/28(火) 06:23:17
LLバトロワスレとかでは散々語り尽くされたネタだけど
このスレでは大して気にしなくていいよ
808デフォルトの名無しさん:2010/12/28(火) 13:11:25
>>805-806
rubyだとこうだけど

ruby-1.9.2> ("0".."10").to_a.join(" and ")
=> "0 and 1 and 2 and 3 and 4 and 5 and 6 and 7 and 8 and 9 and 10"

例えるならPythonだと

> " and ".join(("0".."10").to_a)
=> "0 and 1 and 2 and 3 and 4 and 5 and 6 and 7 and 8 and 9 and 10"

こうだよねって話
809デフォルトの名無しさん:2010/12/28(火) 13:24:29
Python公式のFAQに載ってたはずなのに見つかんないお
810デフォルトの名無しさん:2010/12/28(火) 13:31:42
>>808
Rubyだと左から右へと素直に読めるけど、Pythonのそれはちょっと読みにくいな
811デフォルトの名無しさん:2010/12/28(火) 14:11:53
Pythonは読み下しに難があるパターンがRubyより多い印象
812デフォルトの名無しさん:2010/12/28(火) 16:13:55
>>808
直感的な文法で書けない言語は困るな。俺基準だけど。
813デフォルトの名無しさん:2010/12/28(火) 18:40:40
>>808
>>> ' and '.join(str(n) for n in xrange(11))
'0 and 1 and 2 and 3 and 4 and 5 and 6 and 7 and 8 and 9 and 10'
814デフォルトの名無しさん:2010/12/28(火) 19:41:49
C#は、 String.Join(" and ", list) で、
Scalaは、 list.mkString("list: [", " and ", "]") だな。
どちらかが主流って感じでもない。
815デフォルトの名無しさん:2010/12/28(火) 20:41:46
("0".."10").to_a.join(" and ")
って見れば普通は、
["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", " and "]
ってなるだろーなーと思うわ。

("0".."10").to_a.concat(" and ")
なら、
"0 and 1 and 2 and 3 and 4 and 5 and 6 and 7 and 8 and 9 and 10"
でもいい。
816デフォルトの名無しさん:2010/12/28(火) 20:44:43
インスタンスメソッドとしては配列から、クラスメソッドとしては文字列型から呼ばれるのがきれいに見えた
817デフォルトの名無しさん:2010/12/28(火) 20:48:06
>>815
>("0".."10").to_a.join(" and ")
>って見れば普通は、
>["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", " and "]
>ってなるだろーなーと思うわ。

ないわー
joinとpushが同義とかないわー
818デフォルトの名無しさん:2010/12/28(火) 20:51:49
ホントは Array#join_with とか Array#to_s(padding) とかにしたほうがいいんだろうなあとうっすら思うことはある
arr.join(x) と arr.concat(x) の区別はマニュアル読まないとわからない可能性が大
819デフォルトの名無しさん:2010/12/28(火) 20:55:39
というか

1●2●3●4●5●6 の ● の部分で何かするイテレータというのがないのが稀に困る
820デフォルトの名無しさん:2010/12/28(火) 21:54:12
[1,2,3,4,5,6].each_cons(2) {|cons| ... } はちょっと違うか。
821デフォルトの名無しさん:2010/12/28(火) 22:32:42
inject じゃないのか
822デフォルトの名無しさん:2010/12/28(火) 22:40:06
>>821
やってみ
823デフォルトの名無しさん:2010/12/28(火) 22:47:22
>>805
四の五の言わず演算子にしてしまえ、という発想
824デフォルトの名無しさん:2010/12/29(水) 01:59:15
>>822
やってみた

p (1..6).inject({:sep=>'',:result=>''}){|h,item|
{:sep => ',', :result => h[:result] + h[:sep] + item.to_s}
}[:result]
825デフォルトの名無しさん:2010/12/29(水) 07:47:51
APLの / か
826デフォルトの名無しさん:2010/12/29(水) 07:52:05
>>824
うむ、inject内で小さなデータコンテナ作って運用するあたりが超きめえ
827デフォルトの名無しさん:2010/12/29(水) 08:05:34
一応できるけど、きめえな確かにw
828デフォルトの名無しさん:2010/12/29(水) 09:51:58
それだったら、こうやったほうが
p (1..6).inject(nil) { |s,i| s.nil? ? i.to_s : s+','+i.to_s }
829デフォルトの名無しさん:2010/12/29(水) 10:06:42
Rubyまつもと氏「成功の方法=目指せわらしべ長者」 - IT業界就職ラボ
http://lab.jibun.atmarkit.co.jp/entries/1133
830824:2010/12/29(水) 10:30:18
>>828
その発想はなかった



…何で無かったんだろ、不思議だ俺の脳
831デフォルトの名無しさん:2010/12/29(水) 10:53:52
畳み込み関数自体はわりと素敵概念なのにinjectになるとがっかりなのはなぜだろう
ブロック引数が2個で由来がバラバラでなおかつブロックの返り値を次に使うという奇妙な構造のせいか
832デフォルトの名無しさん:2010/12/29(水) 11:50:12
たとえばHaskellのfoldファミリもほぼ同じインタフェースだと思うわけだがどう奇妙なのか?
833デフォルトの名無しさん:2010/12/29(水) 11:56:34
Haskellっつーか関数型の場合、+とかの演算子も「引数を2個とる関数」扱いだったりするのが結構あって
foldに「+」を直接渡すと合計になる、とか出来るからinjectより見た目すっきりするんだよなあ
834デフォルトの名無しさん:2010/12/29(水) 12:10:00
$ ruby19 -ve 'p [1,2,3,4,5,6].inject :+'
ruby 1.9.3dev (2010-12-29 trunk 30417) [********]
21
835デフォルトの名無しさん:2010/12/29(水) 12:18:57
る…Rubyも進化、してるんだなァ…はは
836デフォルトの名無しさん:2010/12/29(水) 12:19:08
メソッド名を渡すのか。ダサいな。
837デフォルトの名無しさん:2010/12/29(水) 12:44:25
>>836
開発中誰も口にできなかったことをあっさり言うな
838デフォルトの名無しさん:2010/12/29(水) 12:50:53
[1,2,3,4,5,6].inject :+
じゃなくて、
[1,2,3,4,5,6].inject &:+
だったらよかったとかそういう話?
839デフォルトの名無しさん:2010/12/29(水) 12:56:59
>>834
1.8.7と1.9.2でも確認
840デフォルトの名無しさん:2010/12/29(水) 22:22:14
初心者スレの応援求む (特にこの間)をうめたって

Ruby 初心者スレッド Part 40
http://hibari.2ch.net/test/read.cgi/tech/1292049975/393
>‎ 393 名前:デフォルトの名無しさん[sage] 投稿日:2010/12/29(水) 21:41:38
>‎ >>387
>‎ イディオム化して覚えているせいで、>>383にいたる経緯パッと説明できないんだが誰か頼む
>‎
>‎ こういうようなことを初心者向けに
>‎ Enumerable#inject の詳細と結合法則 - 今日調べたことまとめ
>‎ http://d.hatena.ne.jp/tks_period/20081207/p1
>‎
>‎ ruby-1.8.7-p302 > d.inject{|result, item| result.merge(item)}
>‎ ↓
>‎ ruby-1.8.7-p302 > d.inject{|result, item| result.send(:merge, item)}
>‎ ↓
>‎ (特にこの間)
>‎ ↓
>‎ ruby-1.8.7-p302 > d.inject(&:merge.to_proc)
>‎ ↓
>‎ ruby-1.8.7-p302 > d.inject(&:merge)
841デフォルトの名無しさん:2010/12/30(木) 11:18:18
リファレンス嫁
http://www.ruby-lang.org/ja/man/html/_A5E1A5BDA5C3A5C9B8C6A4D3BDD0A4B7.html
> ruby 1.7 feature: version 1.7 では、to_proc メソッドを持つオブジェクトならば、`&' 修飾した引数として渡すことができます
> (デフォルトで Proc、Method オブジェクトは共に to_proc メソッドを持ちます)。to_proc はメソッド呼び出し時に実行され、
> Proc オブジェクトを返すことが期待されます。

scrAPIって1.9に対応してる?
842デフォルトの名無しさん:2010/12/30(木) 12:01:27
https://github.com/assaf/scrapi

ScrAPI 1.2.x tested with Ruby 1.8.6 and 1.8.7, but will not work on Ruby 1.9.x.
ScrAPI 2.0.x switches to TidyFFI to runs on Ruby 1.9.2 and new
843841:2010/12/30(木) 15:54:56
libtidyが動かなかったのでnokogiriにしました
844デフォルトの名無しさん:2011/01/01(土) 17:24:31
るびんちゅども、あけおめ!
845デフォルトの名無しさん:2011/01/01(土) 17:41:59
明けましておめでとうございmatz
846デフォルトの名無しさん:2011/01/01(土) 21:43:37
ruby1.9系ユーザはrubygems1.4入れるな(本体の更新を待て)って
いうの読んだけど、あと1年待てってこと…?
847デフォルトの名無しさん:2011/01/01(土) 21:53:51
>>846
タイミング悪いよな。クリスマスリリースがあるのはわかってるんだから
調整すればよかったのに、と思った。

上げないと困るという内容でもなさそうだったし、まぁ、3ヶ月くらいのスパンで出るはずよ。
848デフォルトの名無しさん:2011/01/02(日) 01:27:12
>>846
kwsk
849デフォルトの名無しさん:2011/01/02(日) 08:27:31
ruby-talkに流れたメール(rubygems 1.4.0 Released)を見ると:
NOTE: Ruby 1.9 ships with rubygems and contains a very buggy
"gem-prelude". It is a gem loading system that can interfere with
updating rubygems itself. We do NOT recommend you update to rubygems
1.4 if you're running ruby 1.9.x until we get that sorted out in a
future ruby release.
850デフォルトの名無しさん:2011/01/02(日) 11:22:10
面倒だしruby-talkに投稿されたらここにも転記してくれよ
851デフォルトの名無しさん:2011/01/02(日) 11:39:27
とかいってガンガン投稿されだしたら、うざいとか言うんだろ
852デフォルトの名無しさん:2011/01/02(日) 15:28:08
でも、こういう情報は共有してもらえるとありがたい
853デフォルトの名無しさん:2011/01/04(火) 18:20:35
>>852
オーケイ、ニュースだ
DebianのRubyパッケージ管理者、Ruby開発コミュニティに不満を持ち辞任
ttp://slashdot.jp/developers/11/01/04/0457204.shtml
854デフォルトの名無しさん:2011/01/04(火) 18:32:24
> コミュニティの一部の人物のマナーが悪い

世界中のどのコミュニティでも似たようなもんなのさと思うようにしていたが、
やっぱマナーが悪かったのか・・・
855デフォルトの名無しさん:2011/01/04(火) 18:38:37
>ruby-dev(日本語)ではほとんどのコア開発者が英語を理解し
(´;ω;`)ウッ
(⊃ω⊂)エーン
856デフォルトの名無しさん:2011/01/04(火) 18:39:37
Rails Hub情報局: DebianのRubyパッケージメンテナ辞任で騒動に
ttp://el.jibun.atmarkit.co.jp/rails/2011/01/debianruby-1aff.html
なかなか広範なまとめ

とりあえず、現在のRubyでの人気システム(gemやRailsやRVM)がDebianと全く噛み合わないことは異論を待たないと思う
857デフォルトの名無しさん:2011/01/04(火) 18:44:04
噛み合わせようとすること自体がおかしいだろ。
Debianが方々のサブシステムまで面倒見る必要があるのかっていう。
858デフォルトの名無しさん:2011/01/04(火) 18:48:21
ruby本体(と1.8でrubygems)だけパッケージングされてれば事足りる。
859デフォルトの名無しさん:2011/01/04(火) 18:50:31
たとえばFreeBSDだと、rubygem-なんたら、ってパッケージになっていて、
そこらのパッケージは、インストールが単にgemのwrapperになってる。

で、そういうのをやってるのはfreebsd-rubyの人たちで、rubyインタプリタの
コアの人たちは特に何もかかわってない。

正直、言ってることの半分ぐらいは何言ってんの? って感じね。
860デフォルトの名無しさん:2011/01/04(火) 19:44:24
まあでも俺もOSのパッケージとrubygemの2つがあったら迷うわ。
OSのパッケージデータベースの外にあるソフトはなるべく作りたくないが、
rubygemの方にしかないライブラリとかあって、1つ入れたらあと何個入れても一緒とか。
861デフォルトの名無しさん:2011/01/04(火) 20:24:27
Debianってそんなに他のパッケージシステムと共存できないものなの?
FreeBSD ports使っててもRubyGems、CPANなどとうまく共存しているように見える。
MacPortsやHomebrewでもRubyGemsなどのせいで困ったことは起きてないし。
862デフォルトの名無しさん:2011/01/04(火) 20:58:00
matzってナクルのフェローだけど、
どんな仕事をナクルの中の人とやってるの?
863デフォルトの名無しさん:2011/01/04(火) 22:16:47
>>862
フェローなのは楽天。
864デフォルトの名無しさん:2011/01/04(火) 22:52:48
え、Winを放置してて教祖様はLinux使いだから(キリッ)と散々言い訳してきたのに、そのLinuxでもRuby微妙なの?わらえる
しかもmatzてデビアン使いじゃなかたっけ
865デフォルトの名無しさん:2011/01/04(火) 22:55:16
>>861
Debian のコンセプト的に、外部パッケージシステムの導入はあんまり得意ではない
オフィシャルの deb パッケージで完結していることが、Debian の管理しやすさと安定性の根幹を成している
/usr/local とかも基本的に空で、野良 make する人もまずいない(まあ、末端はともかく思想的には)
866デフォルトの名無しさん:2011/01/04(火) 23:29:03
>865
新バージョンのリリース遅いくせに、野良make不要とな?
867デフォルトの名無しさん:2011/01/04(火) 23:33:39
でびあんstableは新バージョンをいちはやく使うひと向けじゃないから。
868Perl忍者 ◆M5ZWRnXOj6 :2011/01/04(火) 23:38:07
〜使いってかっこいいですねぇ

かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
かっこいいですねぇ
869デフォルトの名無しさん:2011/01/04(火) 23:46:12
sudo aptitude update && sudo aptitude safe-upgrade を定期的に実行するだけで
とりあえずセキュリティ関連やら重大バグやらの修正が行われたプログラムが更新維持されるので楽、というのが
Debian の実際的な売りだ

Ubuntu なんかが LTS を何の気なしに完全無償提供してるが、これはベースが Debian だからできること
たとえば RedHat ベースでゼロから LTS 作って維持しろとか言われたらお金もらわないとやってられんと思う
870デフォルトの名無しさん:2011/01/05(水) 00:31:22
>>865
それって単にDebianが特殊なだけで、
他のパッケージシステムを責める理由になりませんよね。
あんなにRubyGemsが責められる理屈がよくわかんないです。
(単に気に入らないだけなのかもしれませんが)
871デフォルトの名無しさん:2011/01/05(水) 00:57:33
自分は外野だけどさ、
こういうのって一度Rubyラーメンでも食いながら顔面to顔面で話したほうが良いと思うんだけどさ、
オプソのコミュってそういうのないのかな。
ある日いきなり「辞めるから」とか寂しいよね。
872デフォルトの名無しさん:2011/01/05(水) 01:01:47
>>871
カンファレンスはあるんだけどこいつ全然来なくてさーとかそういう話してもいいの
873デフォルトの名無しさん:2011/01/05(水) 02:16:17
>>863
まつもと ゆきひろ(1965年4月14日 - )は、日本のソフトウェア技術者。
株式会社ネットワーク応用通信研究所フェロー、楽天株式会社楽天技術研究
所フェロー、Rubyアソシエーション理事長。島根県松江市名誉市民。本名は松
本 行弘(読み同じ)。通称はMatz。血液型はO型[1]。
wikipedia

ナクルでもフェローしてるよ
874trolls:2011/01/05(水) 02:21:50
DebianのRubyのリリース版どれなんだとか、それがわからなくて古いままの話なんて
メンテナがコミュニケーション不足だったという話であって、日本語のML関係あるのかw?

英語のコミュニティだってあるわけで、RubyとRubyGemsとその他のgemの噛みあわせわるくなろうものなら
海外のRails界隈の連中がものすごい勢いで発狂してるだろが。

それとRubyのコア以外の情報は英語圏はよほど充実してるよ。
隣の芝生は青いんだよ。コアが英語になっただけで解決する問題に思えんな。


>>856
まとまってる。それを向こうのコミュニティ向けに翻訳したらいいんじゃないのか。

>>870
別の翻訳記事にもあるけどDebianのパッケージシステムとRubyGemsとRVMやBundlerはそれぞれやりたいこと違うんでしょうね。
機能がかぶっているところは大いにあるけど。

Ruby古い、RubyGems古いでパッケージ更新してもgemが入れられないような状況に陥ることもあると
自前で管理したくはなるよ
875デフォルトの名無しさん:2011/01/05(水) 02:28:15
>867
stableだけの問題じゃないでしょ。

Debianは、いつになったらruby 1.9系が使えるようになるの?
876デフォルトの名無しさん:2011/01/05(水) 02:32:24
>>875
Debian -- lenny の ruby1.9 パッケージに関する詳細
http://packages.debian.org/lenny/ruby1.9

> >> Debian >> パッケージ >> lenny (stable) >> interpreters >> ruby1.9
> パッケージ: ruby1.9 (1.9.0.2-9lenny1)
> パッケージ: ruby1.9 (1.9.0.2-9lenny1)
> パッケージ: ruby1.9 (1.9.0.2-9lenny1)
> パッケージ: ruby1.9 (1.9.0.2-9lenny1)
> パッケージ: ruby1.9 (1.9.0.2-9lenny1)
> 注意: Ruby 1.9.0 は開発版です。
> 注意: Ruby 1.9.0 は開発版です。
> 注意: Ruby 1.9.0 は開発版です。
> 注意: Ruby 1.9.0 は開発版です。
> 注意: Ruby 1.9.0 は開発版です。
877デフォルトの名無しさん:2011/01/05(水) 02:34:41
1.9.0.2(笑)

>>876
Debian -- sid の ruby1.9 パッケージに関する詳細
http://packages.debian.org/sid/ruby1.9
パッケージ: ruby1.9 (1.9.0+20071016-1)

unstableでこれだしテメエが(ry
と言われても仕方がない

878デフォルトの名無しさん:2011/01/05(水) 02:55:25
まずはLinuxの鳥とパッケージ管理ツールを統一しろ。
話はそれからだ。
879デフォルトの名無しさん:2011/01/05(水) 02:56:24
まあ、sidから降りてこない限り1.9.1や1.9.2は無理だろうな
880デフォルトの名無しさん:2011/01/05(水) 02:59:05
>>878
パッケージマネージャは基本的に事実上の統一はされてる
yumとaptの2種類
ディストリビューションはまあFHSにさえ沿ってれば何してもらってもいいんじゃないかと
881デフォルトの名無しさん:2011/01/05(水) 03:12:32
trollsって釣り師?トトロ的な方?
882デフォルトの名無しさん:2011/01/05(水) 03:17:10
>>879
てか、仮に、今誰かが1.9.1あたりのパッケージを即っと作ったとしても、
じゃあ「DebianでRuby1.9.1が使用可能になりました!」と世界中が万歳するかというと
たぶんそんなことはないと思う
Ruby本体だけが機械的にパッケージングされても意味がない
それに、1.9.1はrubygemsが標準で入ってるから、いくつか無効にしないといけない
ttp://www.google.com/search?q=%22gem+update+--system+is+disabled+on+Debian.%22&num=50&hl=ja&safe=off&prmd=ivns&tbas=0
883デフォルトの名無しさん:2011/01/05(水) 03:22:05
よく分からんけど、Debianの構造的欠陥って事?
884デフォルトの名無しさん:2011/01/05(水) 06:31:42
こんだけ情報出てて枕詞が「よーわからんけど」で
内容が>>883なのならプログラミングとか諦めたほうがいいかも
885デフォルトの名無しさん:2011/01/05(水) 06:41:24
これこれ、構造的欠陥ではなく、構造的制約と言ってくれたまえよ。
886デフォルトの名無しさん:2011/01/05(水) 07:04:48
Debianと今のRubyを掛け合わせた場合、どっかの誰かのとこで早晩噴出する問題ではあった
特定の誰かや何かが原因と特定できて即解消可能なような性質のものではない

超短期的にはgemを依存関係込みでdebパッケージ化するdh-make-rubyみたいなのを作ればいいんだが、
そのためにはrubygemsを根本から大改造する必要がある
バンドラバンドラスペースピープルしたほうが早いかもしれん
887デフォルトの名無しさん:2011/01/05(水) 09:06:26
そういや、Bundlerってどんなものなのなん?
888デフォルトの名無しさん:2011/01/05(水) 09:51:21
パッケージメンテナになりたい人なんて腐るほどいるだろうから、
辞めさしときゃいいでしょ。
パッケージメンテナが頑張るべきところを頑張りたくなくなったんだから。
889デフォルトの名無しさん:2011/01/05(水) 10:05:55
腐るほどいるものなのか?そのあたりさっぱりわからんが
890デフォルトの名無しさん:2011/01/05(水) 10:25:42
言語自身で書かれたライブラリは言語パッケージで管理するのが妥当だと思うが、
問題はOS自身が言語に依存していたらバージョン不整合があっさり起こるってことだ。
もっともそれはOSとアプリケーションの切り分けが不完全ってことでOSの設計ミスだけど。
OSディス鳥はスクリプト言語に安易に頼るべきではない。
891デフォルトの名無しさん:2011/01/05(水) 10:47:34
>>890
OSというか、ディストリな。
「OS自身」とか「OSの設計」って言ったら、普通カーネルのことだろ。
892デフォルトの名無しさん:2011/01/05(水) 11:09:52
>>891
OSはディス鳥が対応する実装物だぞ
GNU/LinuxがOSでLinuxはカーネルだ

Pythonがディス鳥の起動処理に密接に関わってるらしいな・・・
Linux系の場合アプリケーションも含めてディス鳥になってるからOSとの切り分けの概念が希薄だな
893デフォルトの名無しさん:2011/01/05(水) 11:47:36
犬厨はいつもOSの定義で揉めるけど
何を指してるか文脈で察しろよ
毎度毎度アホみたいに突っ込んでんじゃね〜よ
894デフォルトの名無しさん:2011/01/05(水) 11:50:40
定義が不完全だから起きた問題じゃないのか
895デフォルトの名無しさん:2011/01/05(水) 12:37:53
定義は明確だけど理解が不十分な人達がいて、そういう人達に限って不十分な
理解力のまま突っ込んだり突っ込まれたりしているだけでしょ。
896デフォルトの名無しさん:2011/01/05(水) 22:33:21
>>890
debianならずとも

apt-get install rails
はともかくとして、
apt-get install redmine

apt-get install (なにかRailsやRackで動くようなアプリ)

で入れられたら便利だよなと妄想するわけですよ

しかし実際は(ry
897デフォルトの名無しさん:2011/01/05(水) 23:57:39
gemでいいじゃん
898デフォルトの名無しさん:2011/01/06(木) 00:04:51
だから、gemはDebianの教義に反するって話なんだろ。

じゃ、perlのCPANはどうしてるんだ?
899デフォルトの名無しさん:2011/01/06(木) 00:48:13
>>890
> 問題はOS自身が言語に依存していたらバージョン不整合があっさり起こるってことだ。
> もっともそれはOSとアプリケーションの切り分けが不完全ってことでOSの設計ミスだけど。
> OSディス鳥はスクリプト言語に安易に頼るべきではない。
昔FreeBSDがその理由でperlとかで書かれてたわりとコアなプログラム群をCで書き直してたな。

つうか、Debian界隈って昔もRubyGems関係で揉めてたよな。
upstreamが「RubyGemsなんて必要なの?」とか言ってた時代に
RubyGemsぶちこんでRuby関連のパッケージ管理は全部gemにしようぜ!
的な革命運動が外人中心に突如勃発して、
それを嫌った日本人Debianメンテナがmatzに
「次のリリースにRubyGemsを含めないこと」を迫ったりとかの面白展開が繰り広げられていた記憶。
当時、まだリリースエンジニアリングが確立されていなかったことも相俟ってえらいカオスな流れになっていたような。
900デフォルトの名無しさん:2011/01/06(木) 02:06:45
gemからdebにマッピングかポーティングするツールくらいすぐ作れるっしょ
と思うのは甘いのかな。
901デフォルトの名無しさん:2011/01/06(木) 08:39:14
>>900
gem2debもgem2rpmも以前からあるものの、
gemの同一gemの複数バージョン混在を許すポリシーと
debやらrpmの基本最新版のみなポリシーとが相容れない
とかそんな話だった気がする
902デフォルトの名無しさん:2011/01/06(木) 08:41:10
>>900
めんどくさい
もともとのrubygem自体の問題なんだが、
こいつgemインストールのことばっか考えてgemアップグレードのことあんま考えてねえ
903デフォルトの名無しさん:2011/01/06(木) 08:47:33
>>902
まあ、gem clean を自動で安定動作させるほうが先だなw
904デフォルトの名無しさん:2011/01/06(木) 09:27:23
ラッパースクリプト消してから「依存関係があるから中断するね」とかもうね。
905デフォルトの名無しさん:2011/01/06(木) 10:11:36
単体の特定のgemひとつの新規インストールはパッケージ化で今でもできるんだよな
問題は(他のgemから必要とされたときの)アップグレードだ
906デフォルトの名無しさん:2011/01/06(木) 11:07:11
>>905
仮に、とあるgemであるfoo 1.0をdebでインストールしたとして、
その後そのgem updateしたらfoo 1.1にアップデートされた場合、
Debian的にはどういう問題が起きるの?
門外漢からするとgem cleanupしたらマズいかも?くらいしか想像できないです…
907デフォルトの名無しさん:2011/01/06(木) 11:41:53
>>906
debとしては、1.1をインストールすることイコール1.0をアンインストールする
ことになるのでは?
908デフォルトの名無しさん:2011/01/06(木) 12:28:34
>>907
その場合は手動でgem install foo --version=1.0すれば良い、くらいの素人考えなのですが、
それではまずいのでしょうか?
909デフォルトの名無しさん:2011/01/06(木) 13:51:32
それでよしとするならばそもそもgemをいっさいdebとして入れる必要はないよね。
…と思う人が多いからdebパッケ使わずにgemで入れてるのが現状なのかな。
910デフォルトの名無しさん:2011/01/06(木) 13:53:36
gemで大多数のディストリ(やWinやMac)に入れられて、問題がなければそれはそれでいい世界じゃない、と思わないでもないが。
そうじゃないから揉めてるのかな?
911デフォルトの名無しさん:2011/01/06(木) 18:39:59
gemに依存しているソフトがdebで管理されてるのならやっかいだな
912デフォルトの名無しさん:2011/01/06(木) 22:11:17
あと、拡張ライブラリ系gemが依存してたり独自に抱え込んでたりする外部ライブラリとかかな

aptでupdate/safe-upgradeしておけば安心っていうdebianの最大の長所が死ぬわけだから。
913デフォルトの名無しさん:2011/01/06(木) 22:42:21
>>859のFreeBSDのようなアプローチをとれないものか
qmailだって以前はソース落としてコンパイルを自動でやってたんだし
914デフォルトの名無しさん:2011/01/06(木) 23:30:09
他のディストロでも、てきとーにやってるんでしょ。
それをDebianが完璧にやろうとして発狂しただけかと。
915デフォルトの名無しさん:2011/01/07(金) 07:51:06
>>912
apt update/safe-upgradeでapache、phpやらその他phpのアプリも自動アップデートできてるなら、
rubyやrails(gem依存)、redmine(gem依存多い)、それを動かしているPassengerも自動でアップデートできたらねという当たり前の発想になるだろうしわかるんだが

gemがそう簡単に自動アップデートさせてくれないからなw
どっちみちそうするなら各gemにも手を入れる必要あるし大変だぞ

>>859
それはすごいな
916デフォルトの名無しさん:2011/01/07(金) 09:13:43
誰かついカッとなってdeb-gemとか作ればいいんじゃね

もちろん全然gemのコード使わなくていいけど
917デフォルトの名無しさん:2011/01/07(金) 09:38:00
gemspec自体にdebパッケージ運用するだけの情報が入ってないんじゃなかったっけ
918デフォルトの名無しさん:2011/01/07(金) 10:12:53
>>915
> gemがそう簡単に自動アップデートさせてくれないからなw
ここがよくわからないというかなんというか…
実際にDebianを使っている人じゃないと実感できないものなのでしょうか?
919デフォルトの名無しさん:2011/01/07(金) 14:24:33
gem install hoge しようとしたら、hoge-devが足りねーとかになるのを
簡単に解決出来るだけでもいいと思うんだが、それが出来ないほどgemspecが
貧相すぎるって事?
920デフォルトの名無しさん:2011/01/07(金) 14:28:58
>>919
gemのほうは、ビルドに必要な(ネイティブ)ライブラリ(libxml2とか)は、
extconf.rbで検出してエラー終了するだけだな。
ライブラリ名までは工夫すれば依存関係に組み込めると思うが、
ディストリごとに、そのライブラリを提供しているパッケージの名前は異なるわけで…
921デフォルトの名無しさん:2011/01/08(土) 07:16:55
>>919
そういえばrvmは入れるだけなら依存はbashとgitだったと思うが
インストール後にrvm notesで環境ごとに必要な手順がでてくるな。
例えばUbuntuならコンパイルするためにこれこれのパッケージいれろってのがでてきた。

そういうのこそaptで入れられてもいいとは思うけどね
922デフォルトの名無しさん:2011/01/08(土) 09:41:20
>>921
それで出てくるのは*Ruby本体*のビルドでオプションになっている
opensslとかzlibとかreadlineとかだけじゃね?

最近rvm使うの止めてしまったので最近の事情はわからんけど。
923デフォルトの名無しさん:2011/01/09(日) 17:40:51
>>922
よくわからんがrvm noteの中身はこんなだな

scripts/notes at master from wayneeseguin's rvm - GitHub
https://github.com/wayneeseguin/rvm/blob/master/scripts/notes

パッケージシステム毎に記述されているが、OSやディストリやディストリのバージョンまでは気にしていないようだ
924デフォルトの名無しさん:2011/01/09(日) 17:55:56
見たところ、入れろといってるののはコンパイラとかpatchとかの必須ツールや、
Ruby本体の作成用ぽいライブラリけど、libxml2やlibxsltなんて使ってたっけ?

少なくとも、RMagick gemを入れるかもしれないからImageMagicの開発
パッケージを入れておけ、みたいな内容ではないね。
925デフォルトの名無しさん:2011/01/09(日) 20:46:59
ゲーム開発者って凄いんだな。
Cでゲーム開発だけしてた人が、Rails開発オンリーのうちの会社に中途入社して
2ヶ月程で社内で最も優秀なRails使いになってしまった。
rubyもrailsも基礎だけ押さえて、後はAPI見ながらRailsのソースをバリバリ読めるらしい。
何というか突進力が凡人の俺とは違うようだ。
926デフォルトの名無しさん:2011/01/09(日) 20:55:56
ゲーム開発者でも凡人はいるし、
そうでない分野でもすごい人はいるだろ
927デフォルトの名無しさん:2011/01/09(日) 21:37:02
>>925
いくらなんでもおまえんとこの会社のレベル低すぎだろ
928デフォルトの名無しさん:2011/01/09(日) 22:00:31
Railsしかできない会社なんてそんなもんだろ
929デフォルトの名無しさん:2011/01/09(日) 22:02:04
2か月あってそうならない方が驚きなのだが。
930デフォルトの名無しさん:2011/01/09(日) 22:57:25
×925のレベルが低い
○Rails使いのレベルが低い
931デフォルトの名無しさん:2011/01/10(月) 01:07:05
実際のところゲームプログラマの平均レベルはWEB系とは比べものにならんよ
932デフォルトの名無しさん:2011/01/10(月) 02:34:28
PG暦4年ぐらいのゲームプログラマ
の友人がいるが年収350程度らしい。

顧客とほとんど接触無い職場には魅力を感じるが
俺はこんな惨めなPGにはなりたくねぇ
933デフォルトの名無しさん:2011/01/10(月) 02:42:32
女性PG増やそうぜ。
Rubyにもっとゆるふわかわいいイメージを植えつけてだな…
ふぅ…もう寝るか。
934デフォルトの名無しさん:2011/01/10(月) 02:49:32
ゆるキャラ化したMatz人形とかどうだろ?
935デフォルトの名無しさん:2011/01/10(月) 05:06:10
>>931
同意
936デフォルトの名無しさん:2011/01/10(月) 05:06:55
>>934
そこは yugui 人形だろ常考
937デフォルトの名無しさん:2011/01/10(月) 08:58:53
>>933
つまりねこび〜んみたいなマスコットキャラが必要ということですね
938デフォルトの名無しさん:2011/01/10(月) 16:05:34
* rescueはエラータイプを省略するとStandartErrorのサブクラスの例外を捕捉する
* Timeout::ErrorはInterruptを継承したクラスでStanderErrorには属していない
* net/httpなどのライブラリはtimeout.rbを使っている
* gemでインストールしているライブラリもtimeout.rbを使っている

これはひどい
なんでこんなことすんだよ〜
ドびっくりにもほどがある
939デフォルトの名無しさん:2011/01/10(月) 17:12:21
そんなに騒ぐことか?
rescue Timeout::Error
で捕捉しろよ
940デフォルトの名無しさん:2011/01/10(月) 17:27:19
漏れ的にはrequireのエラーがStandardErrorじゃないのがよほど困る
require 'hogehoge' rescue fugafuga
ができないじゃないか
941デフォルトの名無しさん:2011/01/10(月) 17:32:03
ruby -v -rtimeout -e 'puts Timeout::Error.ancestors'

ruby 1.9.2p136 (2010-12-25 revision 30365) [x86_64-darwin10]
Timeout::Error
RuntimeError
StandardError
Exception
Object
Kernel
BasicObject

ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
Timeout::Error
Interrupt
SignalException
Exception
Object
Kernel
942デフォルトの名無しさん:2011/01/10(月) 18:15:46
1.9.2とgem 1.4でハマった・・・。
1.9使ってる奴は1.4に上げんじゃねーって、書いてあったのね・・・。
943デフォルトの名無しさん:2011/01/10(月) 18:30:31
1.9.2=Vistaはスルー推奨
2.0=Win7が本命
944デフォルトの名無しさん:2011/01/10(月) 19:38:42
1.9.0, 1.9.1がVistaというなら妥当だと思うけど
2.0が7はない。
945デフォルトの名無しさん:2011/01/10(月) 23:41:05
>>943
違うだろw

1.8.7=Windows XP SP3
REE=Windows XP(Lite)

1.9.0=Vista
1.9.1=Vista SP2
1.9.2=Windows 7

あとはまかせた

JRuby= ?
IronRuby= ?
MacRuby


946デフォルトの名無しさん:2011/01/11(火) 19:37:54
2.0っていつ頃出るのかロードマップとかあるの?
947デフォルトの名無しさん:2011/01/11(火) 23:44:29
2.0は開発のモチベーションとしてのニンジンなので、永遠に出ないと
思っておいたほうが心の平穏が保てる。
まぁ、1.9.3を2.0にしようという声もあるけど。
948デフォルトの名無しさん:2011/01/11(火) 23:59:18
そうなのか
正式バージョン名はともかく今後のリリース計画とか予定とかある?
949デフォルトの名無しさん:2011/01/12(水) 01:06:16
ruby-devカオスってんな。
950デフォルトの名無しさん:2011/01/12(水) 03:36:43
Ruby1.9.xと日本共産党ほど名前で損している存在はない
951デフォルトの名無しさん:2011/01/12(水) 04:38:31
2.0が出るとは思わない
952デフォルトの名無しさん:2011/01/12(水) 10:23:30
Perl6は今年にも確実に出るというのにね
953デフォルトの名無しさん:2011/01/12(水) 10:32:17
Chromeの怒涛のメジャーバージョンアップをMatzはどう思ってるんだろうか?
954デフォルトの名無しさん:2011/01/12(水) 10:38:03
ていうかVM載せた時点で2.0でよかった
1.8系の番号割り振りに支障が出る
955デフォルトの名無しさん:2011/01/12(水) 12:04:25
>>954
同感。
大きな進展があったときこそバージョン番号をどどっと進めてアピールすべきだったのに。
956デフォルトの名無しさん:2011/01/12(水) 12:08:50
最近はJRubyで開発してるわ。
というのは、Java関係の解析ツールがすごく充実していることに気づいたからさ。
VisualVM, Jconsole, VisualGC, jhat, ...
仮想マシンとしてのJavaは非常に素晴らしい。
957デフォルトの名無しさん:2011/01/12(水) 12:46:48
よくわかんないけど、効率のいいコードを書くため?
958デフォルトの名無しさん:2011/01/12(水) 22:43:49
1.9のWin32API.newがAPIの戻り値の型指定でnilを受け付けません
1.8互換にするか、マニュアルの方を 「nilは使えなくなりました」とかにしてほしいです

1.9でのWin32APIは1.8互換のためのラッパーに過ぎないので
どちらかというとライブラリのほうを修正するほうがいいと思います
959デフォルトの名無しさん:2011/01/13(木) 07:00:51
進化したJRuby 1.6、間もなくリリースへ − @IT
" JRuby 1.6はこれまでで最大のバージョンアップで、主要な機能は、

* Ruby 1.9.2とのAPI互換
* Cによる拡張機能のサポート(実験的実装)
* プロファイラの内蔵
* RubyGems 1.4.2"
http://www.atmarkit.co.jp/news/201101/12/jruby.html
960デフォルトの名無しさん:2011/01/13(木) 23:25:20
組み込みRubyってどんなんなん?
カード型電卓みたいなのでRubyが動いたりすんの?
961デフォルトの名無しさん:2011/01/14(金) 10:21:34
もらいものの図書カードが5000円分くらい余っていて
いい加減1.92な書籍買おうか迷う。
1.92使い慣れてからたまに1.87に戻ると不便すぎて
使えねぇ〜〜って感じるくらい進歩してるもんですかね。
962デフォルトの名無しさん:2011/01/14(金) 10:22:36
1.9.2を1.92と書く男の人って・・・
963デフォルトの名無しさん:2011/01/14(金) 10:25:50
1.8.7には戻りたくねぇ
964デフォルトの名無しさん:2011/01/14(金) 10:36:01
使い出したのが1.9.2からなんで1.8.Xとの違いがわからない
そんなに違うのかい
965デフォルトの名無しさん:2011/01/14(金) 13:03:57
全然違う。何が違うって気分が違う
966デフォルトの名無しさん:2011/01/14(金) 13:12:44
一行目におまじないを書かないといけない時点でなんか萎えた。
あれって治ったのかな。
967デフォルトの名無しさん:2011/01/14(金) 16:12:49
>>966
俺はそれのせいでPerlに乗り換えた
968デフォルトの名無しさん:2011/01/14(金) 16:17:08
デフォルトが coding: utf-8 ならよかったのだが
969デフォルトの名無しさん:2011/01/14(金) 16:23:47
ASCII で書くならおまじないは必要ないよ
970デフォルトの名無しさん:2011/01/14(金) 17:34:19
つまりおまじないが必要だってことだ
971デフォルトの名無しさん:2011/01/14(金) 18:15:41
無指定ならシステムのデフォルトにしてくれたらよかったのに
972デフォルトの名無しさん:2011/01/14(金) 18:46:58
LANGの違いで同じソースコードが通ったりエラーになったりするわけだ。
素晴らしいアイディアですね。redmineにFeatureとして登録すれば?
973デフォルトの名無しさん:2011/01/14(金) 19:41:41
文字コード関連は意味不だから
仕事でも全く意識してない。
とりあえず今のところは文字化けしないし良しとする。
974デフォルトの名無しさん:2011/01/14(金) 20:07:13
>>972
賛同してくれてありがとう
LANGの違いで同じソースコードが通ったりエラーになったりするのが嫌なら
明示すればいいだけだし記述必須の今よりはるかに楽になるよね
975デフォルトの名無しさん:2011/01/14(金) 20:17:14
ロシア人の作ったgemとタイ人の作ったgemをrequireするがいい。
976デフォルトの名無しさん:2011/01/15(土) 09:21:52
そういう想像力のないバカだからな。
おそらく他にも想像力の足りてないコードを山と書いていそうだな。
977デフォルトの名無しさん:2011/01/15(土) 09:27:57
全てを想像できる人間は超人だけなんだから、足りない部分は皆で補間すればいいんだよ。
978デフォルトの名無しさん:2011/01/15(土) 09:32:49
1.9.2のマジックコメント=VistaのUAC地獄

99%の人は辟易してるんでぜひ改善してくださいね。
979デフォルトの名無しさん:2011/01/15(土) 10:07:13
うちのはいまだに1.4.2だわ
980デフォルトの名無しさん:2011/01/15(土) 11:59:27
EUC-JPで書こうがShift_JISで書こうが
自動認識するのが筋
Pythonは実際にやっているから好きだ
981デフォルトの名無しさん:2011/01/15(土) 12:20:41
>>980

そして1行目にコメントでEUCとSJISを確実に識別できるような文字を書こう、
というノウハウが普及するわけだw マジックコメントとどこが違うの?
982デフォルトの名無しさん:2011/01/15(土) 12:22:11
utf-8で統一してしまえば、いいよ。
誤認する可能性のある自動認識は信用できん。

983デフォルトの名無しさん:2011/01/15(土) 12:54:39
1.8系はそこらへんどうしてんの?
984デフォルトの名無しさん:2011/01/15(土) 13:12:05
1.9系からブロックのローカル変数の仕様が変わったせいで
会社のウェブサービスが1つ破滅した。
原因究明するのにやたら時間がかかった。
985デフォルトの名無しさん:2011/01/15(土) 13:20:34
>>984
え?テストもせずに1.8から1.9に乗り換えたの???
986デフォルトの名無しさん:2011/01/15(土) 13:38:46
自動認識とか言ってるやつは、
自動認識をどうやってやっているのかわかってないんだろうな
987デフォルトの名無しさん:2011/01/15(土) 14:04:40
rubyの構文なんて楽するための仕組みが山盛りになってて
それによって生じる曖昧さを回避するためのエスケープ表記がさらに山盛りになってるのに
こと文字コードに限っては等しく厳格じゃなきゃいけないというのは
思想の一貫性に欠けてるよな。
eucがデファクトと言い張るのはさすがに無理だから他も道連れにしてやると言う
まっつんつんの私怨のようなものすら感じてしまう。
988デフォルトの名無しさん:2011/01/15(土) 14:13:41
文字コードに関しては厳格じゃなきゃプログラムとして使えないのだが
5ページ読むごとに1回文字化けするサイトなんて見てられない

がっこうのかだいとかしゅみ程度なら問題ないけどな
989デフォルトの名無しさん:2011/01/15(土) 17:20:46
>eucがデファクトと言い張るのはさすがに無理だから他も道連れにしてやると言う
>まっつんつんの私怨のようなものすら感じてしまう。

Matzが嫌いなもの
C++
Perl
UTF-8
990デフォルトの名無しさん:2011/01/15(土) 17:26:41
UTF8はすばらしいコード体系だと思うんだがなぜなんだろう
991デフォルトの名無しさん:2011/01/15(土) 17:33:42
>>990
外国人様が作ったものだから
992デフォルトの名無しさん:2011/01/15(土) 17:35:52
え、1.9のあのキタワーAAみたいな一文って任意じゃなくてrbファイルのたびに必須なの?w だっせーww
993デフォルトの名無しさん:2011/01/15(土) 17:36:45
>>989
PHPには嫌悪感を丸出しだと思うが、Perlは別に嫌いじゃないだろ
994デフォルトの名無しさん:2011/01/15(土) 17:38:15
>>990
マルチバイト圏な人間にとっては、
外とのやりとりはUTF-8、内部はUTF-32にしてくれたほうが
シンプルになっていいよーな…
995デフォルトの名無しさん:2011/01/15(土) 17:38:23
Matzが日本有数の言語ヲタであることを知ってるのはこのスレに1割もいない希ガス
996デフォルトの名無しさん:2011/01/15(土) 17:46:01
>>995
そんなことはどうでもいいよ
997デフォルトの名無しさん:2011/01/15(土) 17:47:09
みんなしってるというか次スレをだな
やっぱりプログラマって協調性が
998デフォルトの名無しさん:2011/01/15(土) 17:53:56
おk
立ててくる
999デフォルトの名無しさん:2011/01/15(土) 18:08:14
Rubyについて Part 42
ttp://hibari.2ch.net/test/read.cgi/tech/1295081752/

前スレのテンプレはほとんど省略した。スマソ
1000デフォルトの名無しさん:2011/01/15(土) 18:10:42
>>1000なら>>999にいいことがある
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。