Rubyについて Part 39

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

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

= 前スレ
Rubyについて Part 38
http://pc12.2ch.net/test/read.cgi/tech/1257079004/

過去スレ・関連スレは >>2-
2デフォルトの名無しさん:2010/02/06(土) 23:51:40
3デフォルトの名無しさん:2010/02/06(土) 23:53:44
4デフォルトの名無しさん:2010/02/06(土) 23:59:21
 ○  >>1 乙 もうお前に用はない 
 く|)へ
  〉   ヽ○ノ
 ̄ ̄7  ヘ/
  /   ノ
  |
 /
 |
5デフォルトの名無しさん:2010/02/07(日) 01:13:31
おつ
6デフォルトの名無しさん:2010/02/07(日) 01:16:49
..           (.
.            )
      ,―ヽ__(__、―
   ,/  ノ       ヽ  ~\
  /   ノ   IPA    ヽ   ~\
/   ノ           ヽ、  `ヽ
|    ノ / ̄\   / ̄~ヽ ヽ    i
|   ノ              |  ノ
\  |  <●>  <●>  (  )
 \ |      | |       i /
    |      /  ヽ       レ
   i     (●_●)      /  
    i、    ,-――-、   ・ /
    i、  <(EEEEE)> ∵/    スレ立て乙ピョん☆
      i、  \   ./  /
       \   ーー   ,ノ       
  ,,.....イ.ヽヽ、ー-―一ノ゙-、.
  :   |  '; \_____ ノ.| ヽ i
      |  \/゙(__)\,|  i |
      >   ヽ. ハ  |   ||
7デフォルトの名無しさん:2010/02/08(月) 21:15:51
Mechanizeアップデートされたのか
なんかgem installでは入ってこないんだが
8デフォルトの名無しさん:2010/02/08(月) 22:21:43
..           (.
.            )
      ,―ヽ__(__、―
   ,/  ノ       ヽ  ~\
  /   ノ   IPA    ヽ   ~\
/   ノ           ヽ、  `ヽ
|    ノ / ̄\   / ̄~ヽ ヽ    i
|   ノ              |  ノ
\  |  <●>  <●>  (  )
 \ |      | |       i /
    |      /  ヽ       レ
   i     (●_●)      /  
    i、    ,-――-、   ・ /
    i、  <(EEEEE)> ∵/    おまえらInfoQのインタビュー記事見ろよな☆
      i、  \   ./  /
       \   ーー   ,ノ       
  ,,.....イ.ヽヽ、ー-―一ノ゙-、.
  :   |  '; \_____ ノ.| ヽ i
      |  \/゙(__)\,|  i |
      >   ヽ. ハ  |   ||
9デフォルトの名無しさん:2010/02/08(月) 22:24:30
↑心の底からたのしそうでなによりです
10デフォルトの名無しさん:2010/02/08(月) 22:36:13
>Ruby開発者をむっとさせるのは簡単だ。言語内でendが重要な役割を果たすことをなじるか、
>グローバルインタプリンタロック(GIL)があることで、インタプリンタ内で一度にひとつのスレッドしか実行できないことを指摘すればいい。
まで読んだ
11デフォルトの名無しさん:2010/02/08(月) 22:42:05
なんで++がないの、も可。
12デフォルトの名無しさん:2010/02/08(月) 22:44:58
Windowsの話題を出すのでも可
13デフォルトの名無しさん:2010/02/08(月) 22:55:35
>>11-12のレベルの低さに失望した
14デフォルトの名無しさん:2010/02/08(月) 22:56:48
ウィンドウズでのインストーラネタは定番だしな。
すなおにvb使えw
15デフォルトの名無しさん:2010/02/08(月) 22:58:28
Windows使いならPythonでも使ってろよ
16デフォルトの名無しさん:2010/02/08(月) 23:07:06
powershell 辺りも悪くはない・・・
17デフォルトの名無しさん:2010/02/08(月) 23:10:14
遅すぎる。
PS使ってからRubyに戻ると羽の生えたように軽く感じる。
18デフォルトの名無しさん:2010/02/08(月) 23:24:41
早さは微妙だけどぐぐりやすいので重宝する
ひとには意外と会うんでないかという・・・

インデント強制はやっぱりめどい
19デフォルトの名無しさん:2010/02/09(火) 01:39:59
とりあえずレスに Windows ってキーワードを添えるだけでレスいっぱいもらえることは判った
20デフォルトの名無しさん:2010/02/09(火) 01:50:26
>>19
二番煎じじゃいまいちだな。もすこし頑張れ。
21デフォルトの名無しさん:2010/02/09(火) 01:55:37
まあ煽りじゃなくてWindowsとの親和性は残念だけどRubyよりPythonの方が高いな
22デフォルトの名無しさん:2010/02/09(火) 01:59:13
てめぇ、IronRubyナメてんのか
23デフォルトの名無しさん:2010/02/09(火) 02:08:45
>>22
悔しかったら1.0出してみろよ!!!
24デフォルトの名無しさん:2010/02/09(火) 02:11:40
Windows方面はIronRubyに任せるというのも……
せっかく処理系たくさんあるんだし
まあ、少なくとも安定してからの話か
25デフォルトの名無しさん:2010/02/09(火) 08:02:25
jython と ironruby

ふたりは不人気!!!
26デフォルトの名無しさん:2010/02/09(火) 08:52:54
Python側の親和性ってどんな感じ?
Windows用GUIアプリがサクサク作れるとか?
27デフォルトの名無しさん:2010/02/09(火) 12:20:25
RubyとかPythonでGUIって発想が怖い・・・
28デフォルトの名無しさん:2010/02/09(火) 12:25:29
GUIほどオブジェクト指向を楽しめるジャンルないのに
29デフォルトの名無しさん:2010/02/09(火) 12:28:32
GUIのAPIを操作するサブ言語として自分の見知ったスクリプト言語を使えるというのは利点だろう

きちんと隠蔽されてきちんとライブラリが作られているということが最低条件だが
「これなら直接書いたほうが早いわぼけー」というラッパーは存在価値がないぞ
30デフォルトの名無しさん:2010/02/09(火) 13:52:50
頭悪そうな奴
31デフォルトの名無しさん:2010/02/09(火) 14:06:36
>>27
こんな風に思ってる人いるんだ。
お手軽でいいのに。
32デフォルトの名無しさん:2010/02/09(火) 15:10:45
>>29
>きちんと隠蔽されて
の意味が良くわからない。
一体何を隠蔽するのだろう。
33デフォルトの名無しさん:2010/02/09(火) 15:57:11
>>26
PyQt4 おすすぬ
34デフォルトの名無しさん:2010/02/09(火) 15:58:02
>>29
それどこのMFC
35デフォルトの名無しさん:2010/02/09(火) 20:03:42
>>31
ただ、Javaでもぶっちゃけそんなに変わらないんじゃないかと
C#もあるし
Pythonでそんなに楽できるのかな〜という気はする

それに、スクリプトからGUIを起動するのはなんか気持ち悪い
いちいちexe化してたらスクリプトの利点もなくなりそうだし
36デフォルトの名無しさん:2010/02/09(火) 20:09:40
そもそもスクリプト言語って用途的にはフィルタに使うもんだべ?
37デフォルトの名無しさん:2010/02/09(火) 20:13:43
んなこたない
ただIDEと高度に結びついてないとGUIはダルい
38デフォルトの名無しさん:2010/02/09(火) 20:53:05
IDEまでいかなくても、デザイナレベルのものがあれば十分だと思うけどね。
39デフォルトの名無しさん:2010/02/09(火) 20:55:50
そこまでしてスクリプトにこだわらなくても
LinuxならJava、WinならC#使えよ気持ち悪い
40デフォルトの名無しさん:2010/02/09(火) 21:06:32
別にこだわっちゃいないけど、逆に何でそんなにスクリプトでGUI書くことを
否定したがってんの?
41デフォルトの名無しさん:2010/02/09(火) 22:31:19
そりゃLLで本格的にGUI使われたらJavaやC#の商売あがったりだからだよ
42デフォルトの名無しさん:2010/02/09(火) 22:36:37
if String.new.respond_to?(:force_encoding) はやっぱりカッコ悪いしわかりにくいと思う
43デフォルトの名無しさん:2010/02/09(火) 22:43:36
defined?(::Encoding) が

module M; module Encoding; end; end
include M

に対して無力だと知ったとき俺は大人の階段を一段のぼった
44デフォルトの名無しさん:2010/02/09(火) 22:45:00
      ,―ヽ_(((((_、―
   ,/  ノ       ヽ  ~\
  /   ノ   IPA    ヽ   ~\
/   ノ           ヽ、  `ヽ
|    ノ / ̄\   / ̄~ヽ ヽ    i
|   ノ              |  ノ
\  |  <●>  <●>  (  )
 \ |      | |       i /
    |      /  ヽ       レ
   i     (●_●)      /  
    i、    ,-――-、   ・ /
    i、  <(EEEEE)> ∵/    時代はオープンソース。Windowsなんてほっとけ
      i、  \   ./  /
       \   ーー   ,ノ       
  ,,.....イ.ヽヽ、ー-―一ノ゙-、.
  :   |  '; \_____ ノ.| ヽ i
      |  \/゙(__)\,|  i |
45デフォルトの名無しさん:2010/02/10(水) 01:24:48
RUBY_VERSION <'1.9' 撲滅派の人に質問

pp の表示が「日本語」になるかどうかで場合分けしたいんだけど、どう書けばいい?
Ruby 1.9 ってエンコーディングがあってれば p の表示が日本語になることがあるよね
46デフォルトの名無しさん:2010/02/10(水) 09:38:52
>>45
初心者スレで質問したほうがよかったんじゃない?

var = "日本語"
if var.inspect =~ /\P{ASCII}/
puts "厳密には非ASCII文字"
else
puts "ASCII"
end
47デフォルトの名無しさん:2010/02/10(水) 09:40:23
あとp と pp は
inspect と pretty_indpect で使い分けて
48デフォルトの名無しさん:2010/02/10(水) 09:58:08
>>45
だいぶ前に似たようなことで迷って調べたことがある
そのときのスクリプトではこう書いた

STDOUT.respond_to?(:external_encoding)

たぶんこれがわかりやすいはず
49デフォルトの名無しさん:2010/02/10(水) 15:31:56
Array#sampleが有ってArray#sample!が無いのはどなーいして?
50デフォルトの名無しさん:2010/02/10(水) 15:47:10
なんでsample!が欲しくなったのか、一言どうぞ。
51デフォルトの名無しさん:2010/02/10(水) 16:46:15
せんせいしつもん

$KCODE が使われてたらテストの動作変えたいです
でも $KCODE にアクセスしたら警告が表示されてしまう Ruby もあると聞きました

警告を出すことなしに
「$KCODE が時代遅れな場合は処理を変える」
ということをやる方法おしえてくださいチュ
52デフォルトの名無しさん:2010/02/10(水) 16:47:23
1.9 への移行準備ってゆーか、注意事項とか確認したいんだけど、
読み物ありませんか?
53デフォルトの名無しさん:2010/02/10(水) 17:02:20
>>51

$KCODEは実体がなく読み取りと読み出しのC関数があることによって
存在しているように見える仮想変数なんだが、1.9ではこの読み取りと
読み出し両方の関数で rb_warn という関数が常時呼ばれて警告が出る。

rb_warn は $VERBOSE.nil? が真なら出力することなくリターンするので、
テスト時に一時的にnilを代入すればよいと思う。(falseだとだめ)
54デフォルトの名無しさん:2010/02/10(水) 17:13:24
55デフォルトの名無しさん:2010/02/10(水) 17:17:24
>>53
先生それは「警告うざければその前後で$stderr乗っ取って警告捨てればいいんじゃね」レベルです
その間に $VERBOSE を利用する人がいたらどうするんですか責任とってくれるんですか蒼い時代ですか

要は個別に制御する方法は特に用意されてないのね
ちょっとがっかり
56デフォルトの名無しさん:2010/02/10(水) 17:24:53
テストが済んだら元に戻せばいいじゃない
割り込まれたくなければ Thread.criticalをいじればいいじゃない
57デフォルトの名無しさん:2010/02/10(水) 17:27:08
tmp = $VERBOSE
$VERBOSE = nil
begin
 hogehoge()
ensure
 $VERBOSE = tmp
end
58デフォルトの名無しさん:2010/02/10(水) 17:28:49
ActiveSupportにsilence_warningsあるね。
59デフォルトの名無しさん:2010/02/10(水) 17:39:50
>>58
irb1.9> silence_warnings{ $KCODE }
nil
irb1.9> $KCODE
(irb):3: warning: variable $KCODE is no longer effective
nil

キャーステキー
60デフォルトの名無しさん:2010/02/10(水) 17:47:09
中身は>>57だけどな
スレッドには対応してなさそうだ

silence_stream(STDERR){ $KCODE } は 標準エラー出力乗っ取りだが mingw では動かなさそう
6152:2010/02/10(水) 20:39:25
>>54
あんがと
62デフォルトの名無しさん:2010/02/11(木) 00:44:50
やっぱりここはRubySpecFeatureみたいなクラス持ったgem作って配布するしか。

RubySpecFeature.has_feature?(Spec番号) とかやると実行してる処理系での当該Specをサポートしてるか教えてくれるの。
63デフォルトの名無しさん:2010/02/11(木) 00:47:44
よしまかせた。
64デフォルトの名無しさん:2010/02/11(木) 12:50:32
ttp://www.ruby-lang.org/ja/news/2010/01/10/webrick-escape-sequence-injection/
> 外部の攻撃者がエスケープシーケンスをWEBrickのログに挿入しそのログを閲覧したとすると、
> 攻撃者は端末エミュレータを攻撃する目的に利用することができます
これって p str でも起こる?
String#inspect を通してる限りは $KCODE があっても Encoding つき String でも大丈夫?
65デフォルトの名無しさん:2010/02/11(木) 14:46:24
>>64
String#inspect では起こらない
エスケープ目的で使うのは勧めない(たとえば今回のようなとき、ログ文字列を inspect する)
あくまで結果的にエスケープもされるという程度

とここまで書いて、Shift_JIS 文字列として inspect すると引っかかるかもと思った
66デフォルトの名無しさん:2010/02/13(土) 13:29:03
ttp://www.ustream.tv/channel/matsuerubykaigi02
松江Ruby会議02やってるのか
67デフォルトの名無しさん:2010/02/13(土) 23:11:26
cgi書いたんだけど、実行時間の半分以上が
require "rubygems" と require "rmagick"の二行に費やされてる。
68デフォルトの名無しさん:2010/02/14(日) 00:40:24
会議までに1.9.2の正式リリースがほしかった
69デフォルトの名無しさん:2010/02/14(日) 02:28:45
>>67
wrs
70デフォルトの名無しさん:2010/02/14(日) 10:36:12
# Ripper で #on_const_ref, #on_void_stmt, #on_stmts_new, #on_stmts_add
# フック時の Ripper#lineno の返り値が1行ずれる場合があるような気がするんだけど
# これバグ?

require 'ripper'
class MyRipper < Ripper
[:const_ref, :void_stmt, :stmts_new, :stmts_add].each do |e|
define_method(:"on_#{e}"){|*a|puts "#{e}, lineno:#{lineno}, column:#{column}"}
end
end

puts RUBY_DESCRIPTION #=> ruby 1.9.1p378 (2010-01-10 revision 26273) [i386-mingw32]

p code = "class C\nend"
MyRipper.new(code).parse
# const_ref, lineno:1, column:3
# void_stmt, lineno:2, column:3
# stmts_new, lineno:2, column:3
# stmts_add, lineno:2, column:3
# stmts_new, lineno:2, column:3
# stmts_add, lineno:2, column:3

p code = "module M\nend"
MyRipper.new(code).parse
# const_ref, lineno:1, column:3
# void_stmt, lineno:1, column:3
# stmts_new, lineno:1, column:3
# stmts_add, lineno:1, column:3
# stmts_new, lineno:2, column:3
# stmts_add, lineno:2, column:3
71デフォルトの名無しさん:2010/02/15(月) 21:24:17
ttp://doc.okkez.net/static/191/class/Regexp.html
* Regexp.new(string, option = nil, code = nil)
> 第一引数が正規表現であれば内容が同じ(ただし、上記フラグの内容はクリアされた)正規表現を複製して返します。
> このとき、複製した正規表現に対して、第二、第三引数の指定が設定されます。
> 第一引数が正規表現であれば第一引数を複製して返します。第二、第三引数は警告の上無視されます。

どっちやねん
72デフォルトの名無しさん:2010/02/15(月) 21:29:31
最初の方は「文字列」なんだろうけど、まあありがちだよ
73デフォルトの名無しさん:2010/02/15(月) 21:34:29
>>71
1行目と2行目は1.6の挙動だな
3行目は1.8の挙動
1.9では
「正規表現のエンコーディングを指定するには第一引数の文字列のエンコーディングを直接変更してください」
となるはず
74デフォルトの名無しさん:2010/02/15(月) 21:40:07
irb> /[[:cntrl]]/ =~ "わんこ".encode('ISO-2022-JP')
Encoding::CompatibilityError: incompatible encoding regexp match (US-ASCII regexp with ISO-2022-JP string)

irb> Regexp.new("[[:cntrl]]".encode('ISO-2022-JP')) =~ "わんこ".encode('ISO-2022-JP')
RegexpError: can't make regexp with dummy encoding: /[[:cntrl]]/

ガッデム
75デフォルトの名無しさん:2010/02/15(月) 21:43:32
ISO-2022-JPはなー。
76デフォルトの名無しさん:2010/02/15(月) 21:52:34
irb> Regexp.new("[[:cntrl:]]".encode('ISO-2022-JP'))
RegexpError: can't make regexp with dummy encoding: /[[:cntrl:]]/
irb> Regexp.new("[[:cntrl:]]".encode('stateless-ISO-2022-JP'))
/[[:cntrl:]]/
irb> Regexp.new("[[:cntrl:]]".encode('stateless-ISO-2022-JP')) =~ "わんこ".encode('stateless-ISO-2022-JP')
nil
irb> Regexp.new("[[:cntrl:]]".encode('stateless-ISO-2022-JP')) =~ "わん\eこ".encode('stateless-ISO-2022-JP')
Encoding::UndefinedConversionError: "\e" from EUC-JP to stateless-ISO-2022-JP in conversion from UTF-8 to stateless-ISO-2022-JP

なんかだんだんどうでもよくなってきた
77デフォルトの名無しさん:2010/02/15(月) 21:56:20
初心者スレでコントロールコードを取り除きたいって言ってた人と同じかな
78デフォルトの名無しさん:2010/02/16(火) 19:21:57
日本製なのにJISが処理出来ないのもどうかとw
79デフォルトの名無しさん:2010/02/16(火) 20:28:20
【研究】 世界一ロマンチックじゃない「愛の告白」は、日本語…クリンゴン語よりも酷いと判定★4
http://tsushima.2ch.net/test/read.cgi/newsplus/1266273529/
80デフォルトの名無しさん:2010/02/16(火) 21:59:29
ISO-2022-JPを素で扱える正規表現エンジンはさすがにないだろ。
81デフォルトの名無しさん:2010/02/16(火) 22:34:42
日本語版マニュアルになんらかのコメントくらいはあってもいいかもしれない
82デフォルトの名無しさん:2010/02/16(火) 22:49:32
>>81
それはRubyにおけるダミーエンコーディングの意味の説明が該当するのでは

83デフォルトの名無しさん:2010/02/17(水) 00:51:02
以前このスレでBigdecimalのバグと対処を上げていた人が
いろいろあってコミッターになったみたいだな。

ともあれ人手が増えたことはめでたい。
84デフォルトの名無しさん:2010/02/17(水) 01:43:38
あ〜、「バグっぽいの見つけたけど、報告はここでいいんですかね?」みたいな

いいわけないだろと心の中で突っ込んだが
85デフォルトの名無しさん:2010/02/17(水) 01:46:52
普遍的にバグであるかどうかを確認するためにスレで話題を振る、というのはアリではあるが

ライセンス上、パッチを2chに投稿したら取り込めないのでそこだけは注意
86デフォルトの名無しさん:2010/02/17(水) 02:29:47
ああ、著作権が2chに移っちゃうって話か。確かにそうだわな。
87デフォルトの名無しさん:2010/02/17(水) 02:45:42
まあそのまま取り込まなきゃ回避策はいくらでもある。
オープンソースなんて、どこかのをパクりまくり出し。

著作権は権利が認められれば、その作者が持ってるので放棄出来ないけどな。
著作権法よく読もうぜ。
88デフォルトの名無しさん:2010/02/17(水) 02:51:51
>>87
2chの書き込み規約よく読め
89デフォルトの名無しさん:2010/02/17(水) 07:11:25
1,2行の簡単なパッチに著作権が発生するかどうかは微妙なところ。
90デフォルトの名無しさん:2010/02/17(水) 08:59:55
あんな規約法的におkなのか?
91デフォルトの名無しさん:2010/02/17(水) 09:09:30
個別に争われる余地はあると思われ
少なくとも「アホ言うなバカ」と裁判所に門前払い食らうような内容ではない

余談だが、世の中の訴状は裁判所によってある程度、審議以前の問題だと却下されている
「○○を訴えました」という報道発表と実際の裁判の数は必ずしも一致しない
訴状を見てから判断する、という発言は本来は正しいんだがなぜか悪役になってる不思議
92デフォルトの名無しさん:2010/02/17(水) 09:55:28
>>88
あんなもんが法的に有効だとか思っちゃうお花畑は黙ってろ
93デフォルトの名無しさん:2010/02/17(水) 10:00:02
有功じゃないってことは具体的に何かに反してるってこと?
94デフォルトの名無しさん:2010/02/17(水) 13:15:27
>>89
「絶対に発生しない」のでなければ避ける以外の判断はできない
Rubyライセンスと整合するのでなければそもそもさわれないよ

ひろゆき…今はそうじゃないのか、2ch、が書き込まれたソースコードを利用するという意味ではなく
事前に2chという掲示板で公開されたソースコードをRubyにライセンス上取り込めるかどうかという話

俺は「取り込めるとは限らない(裁判での判断が必要)」と思う
だから「めんどくさいので2chにRubyライセンス関係のパッチを書き込むべきではない」と考える
95デフォルトの名無しさん:2010/02/17(水) 13:22:26
他のうpろだに揚げたものをリンクすれば医院で内科医
96デフォルトの名無しさん:2010/02/17(水) 13:23:45
>>94
初出の方が優先すると思う
97デフォルトの名無しさん:2010/02/17(水) 13:29:49
出来合いのブログサービスでソース公開してしまうのも結構マズい

というか、ライセンス上マージ可能なソース公開場所を挙げるほうがよさそうだな
githubとか?
98デフォルトの名無しさん:2010/02/17(水) 13:38:08
> 出来合いのブログサービスでソース公開してしまうのも結構マズい

そういう法的におかしな条項に、諾々と従ってしまうのが一番マズい
99デフォルトの名無しさん:2010/02/17(水) 13:41:04
俺の嫁の飯が一番マズイ
100デフォルトの名無しさん:2010/02/17(水) 13:42:49
>>98
君が私費を投じて戦って、トラブルがある(と予測される)たびに法的根拠のある判断を勝ち取ってくれるなら
誰も何も言わないよ(おまけに勝敗も問わない)

そうでないのなら何も言うべきではない
101デフォルトの名無しさん:2010/02/17(水) 13:47:44
無闇に安全側に倒すな、という人は危険側に寄ったぶんのコストを支払ってくれ
>>100の言うように別に負けてもいいんだが、それにかかる金額と時間がひたすら鬱陶しい

誰からも権利上の突っ込みを受けえない、という状態の有り難味を噛み締めて欲しいもんだ
102デフォルトの名無しさん:2010/02/17(水) 13:48:26
せんせい質問!
CentOS5.4にRails環境作ったんだけど、script/serverのログの文字が一部化けます。
「サーバ2」=>「サーバ\357\274\222」
こんな感じ
CentOSのコンソール、Windowsのターミナルともに同じ化け方なので、ターミナルの問題ではなさそう。
ソース中のコメントはviで日本語で表示されます。
103デフォルトの名無しさん:2010/02/17(水) 13:54:11
Rubyのパッチレベルをちょっと戻すか、あるいは開発版使う
inspectの最後のマルチバイト文字がそのままになるんだよ

irb> $KCODE="u"; p "えびしおポテコが食べたいのに全然売ってない"
"えびしおポテコが食べたいのに全然売ってな\343\201\204"

ユーザーレベルでの対処法があるなら知りたい
最後がマルチバイト文字でなければきちんとなるんだけど、そんなの全部やるの無理だよな

irb> $KCODE="u"; p "えびしおポテコが食べたいのに全然売ってない\n"
"えびしおポテコが食べたいのに全然売ってない\n"
104デフォルトの名無しさん:2010/02/17(水) 13:58:48
去年も全く同じ話題が出てたな
ttp://b.hatena.ne.jp/entry/rubyist.g.hatena.ne.jp/n2s/20090130/p1
てことでgistとかSimple Paste使いましょう
105デフォルトの名無しさん:2010/02/17(水) 13:59:30

latin1
106デフォルトの名無しさん:2010/02/17(水) 14:00:50
>>102
今日のruby-listのメールくらいは読んでくれると嬉しい
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/46859
107デフォルトの名無しさん:2010/02/17(水) 14:02:35
>>106
メーリングリストはアーカイブが適切な語でGoogleに引っかかってこそ価値があるのですよ
108デフォルトの名無しさん:2010/02/17(水) 14:06:02
>>106-107
…まあどっちもどっちではあるな
というか、修正されること自体はそもそも確定で、現時点でどーすればいいかということのほうが問題なような
っていうかこのへんのテストとかしてないのなんで漏れてんの
109デフォルトの名無しさん:2010/02/17(水) 14:33:42
>>108
確かめてないが、改行のテストも兼ねようと思って

"テスト\n".inspect assert_equal('\343\203\206\343\202\271\343\203\210\n')

みたいな感じだったんだと推測
まさか末尾がマルチバイトなときだけ問題になるとは間隙突かれたヒデキ感激みたいな
110デフォルトの名無しさん:2010/02/17(水) 14:37:46
>>103
そうなんだ。
調べたけど、そういう問題抱えてるのみつけられなかったかったから助かりました。
ありがとう。
111デフォルトの名無しさん:2010/02/17(水) 14:51:13
>>102
8.1.7は既に枯れたバージョンという認識だったので見ていませんでした。
Rubyのチケットを見ると上がってるんですね。
触り始めて2週間なのですが、検索エンジンで見つけられそうなキーワードを把握していませんでした。
112デフォルトの名無しさん:2010/02/17(水) 15:34:24
コミットしてからリリースまで誰も気づかなかったというのが物寂しいな
上の人はもう1.8系列で日本語表示なんて誰もしてないのだろう
113デフォルトの名無しさん:2010/02/17(水) 15:38:09
修正されているのはいいけど、
テストコードがないといつかまた再発しそう。
http://redmine.ruby-lang.org/repositories/revision/ruby-18?rev=26103
114デフォルトの名無しさん:2010/02/17(水) 18:31:52
>>112
$KCODE設定してpで日本語表示しないと気づけないからねえ
スルーされる可能性は高い
115デフォルトの名無しさん:2010/02/18(木) 12:32:31
困ってる人一杯いるだろうから、これだけでも先にリリースして欲しいよな。
ダウングレード面倒だし。
116デフォルトの名無しさん:2010/02/18(木) 13:56:56
unrecognized options: --with-readline-dir

安定板ビルドしようとしたらこんなエラーでた
ぽにょ挫けそう
117デフォルトの名無しさん:2010/02/18(木) 14:18:42
http://dl.dropbox.com/u/4390580/wxruby-2.01-ruby19stable.png

何かmake途中エラーみたいのに遭遇したような気がするけど
気にしない。絵が出たから良し何ら問題なしあ...
118デフォルトの名無しさん:2010/02/18(木) 14:49:41
./configure --help |grep with
119デフォルトの名無しさん:2010/02/18(木) 23:29:46
そういう問題を先送りが後で響いて困る訳でw
120デフォルトの名無しさん:2010/02/19(金) 02:34:52
初心者スレで質問したところ、本スレ行ってこいと言われたので失礼します。

Kernel#lambdaで作られるProcオブジェクトはブロック内でreturnしたときに
Proc#callから抜けるという特殊な挙動になっていますが、これはどのような仕組みなのでしょうか。

Kernel#lambdaはおそらくCで実装されているのだとは思いますが、
Rubyでも実装できるようになっていると思います。お願いします。
121デフォルトの名無しさん:2010/02/19(金) 10:03:18
これが政府のオープンソース関連事業だ、年間約5億円を仕分けられるか!?
http://itpro.nikkeibp.co.jp/article/COLUMN/20100217/344720/

Rubyもいろいろ金かかってるんだなー
122デフォルトの名無しさん:2010/02/19(金) 10:47:07
      ,―ヽ_(((((_、―
   ,/  ノ       ヽ  ~\
  /   ノ   IPA    ヽ   ~\
/   ノ           ヽ、  `ヽ
|    ノ / ̄\   / ̄~ヽ ヽ    i
|   ノ              |  ノ
\  |  <●>  <●>  (  )
 \ |      | |       i /
    |      /  ヽ       レ
   i     (●_●)      /  
    i、    ,-――-、   ・ /
    i、  <(EEEEE)> ∵/    オープンソース情報データベースOSS iPediaの活用秘技. IPA OSSセンター 研究員 岡田 賢治
      i、  \   ./  /
       \   ーー   ,ノ       
  ,,.....イ.ヽヽ、ー-―一ノ゙-、.
  :   |  '; \_____ ノ.| ヽ i
      |  \/゙(__)\,|  i |
123デフォルトの名無しさん:2010/02/19(金) 12:47:41
1.9だと def []=(*keys, value) って書けて素敵よね
124デフォルトの名無しさん:2010/02/19(金) 13:55:41
むしろそれ以前でできなかった理由を知りたい
できるようにしてても特段デメリットないようにも見えるが
125デフォルトの名無しさん:2010/02/19(金) 14:07:36
意図的にできないようにしてたわけじゃないと思うけど。
126デフォルトの名無しさん:2010/02/19(金) 14:12:02
Emacs Lispの&rest とか &optional のような使い方がしたくて
実装しただけだと思う。少なくとも当初は。

127デフォルトの名無しさん:2010/02/19(金) 14:13:13
1.6くらいで思いついてて欲しかったとちょこっとだけ思う
128デフォルトの名無しさん:2010/02/19(金) 14:15:58
我々にできるのは1.9系列の周辺を使いやすくすることしかない
初級を抜けたランク4くらいの人を全部1.9ユーザーにしないと
gemライブラリも全部1.9対応にするくらいの勢いで
解説や記事も1.8用と1.9用の記述を並立
129デフォルトの名無しさん:2010/02/19(金) 16:22:32
>>123ってどういう使い方をするのですか?
130デフォルトの名無しさん:2010/02/19(金) 17:20:46
>>123って普通に可変長引数を通常の引数の前に置けるってこと?
それともブラケットメソッド関係で何か特殊なの?
131デフォルトの名無しさん:2010/02/19(金) 17:46:34
ary[x, y] みたいに多重配列が作れたりとかする?
132デフォルトの名無しさん:2010/02/19(金) 18:17:16
いや見たまんまだと思うが
最後の引数以外は可変
133デフォルトの名無しさん:2010/02/19(金) 19:33:52
1.9の普及が足りんな。 def test(a,*b, c) とか出来るぞ
134デフォルトの名無しさん:2010/02/19(金) 20:56:12
>>120
1.9の、しかもあくまで俺の理解した範囲でいうけど、まずコンパイル結果からして違う
ブロックの中のreturnはthrow 1っていう特殊な例外を投げる命令になるけど
普通のメソッド中のreturnはleaveっていうフレームを終了させる命令になる

で、ブロックがフレームに積まれるとき、lambdaかどうかはフレームに記憶されていて
前述の例外が通知されると、実行中のフレームがlambdaかメソッドならリターン処理
普通のブロックなら例外をさらに上のフレームに伝播させる、って感じでやってる
とそういうわけで、この特殊例外を発生させる方法がRubyにはないので無理です

あーあと、フレームってのは動的な処理の単位ね、メソッドとかクラス定義とかブロックとか
詳しく種類を知りたかったらvm_core.hにVM_FRAME_MAGIC_なんちゃらって並んでるから
135デフォルトの名無しさん:2010/02/19(金) 20:59:41
>>134
×発生させる方法が
○発生させる方法もキャッチする方法も
136120:2010/02/19(金) 21:04:49
>>134
回答有難うございます。どうやら、VMの理解が必要そうですね。
とりあえず、ブロックのreturnとlambdaのreturnが別物ということはわかりました。

C言語は苦手ですが、勉強がてらソースコードを読んでみたいと思います。
137デフォルトの名無しさん:2010/02/21(日) 10:13:42
RubyForgeへいってoneclickrubyダウンロードしてるんですが、滅茶苦茶遅いのはなぜでしょう?
どこかにミラーとかって無いんですかね?
138デフォルトの名無しさん:2010/02/21(日) 10:45:55
>滅茶苦茶遅いのはなぜでしょう?
善悪属性値が下がってるんじゃね

とりあえず巷で話題になってないので、回線か経路的なもんだと推測される
何人か症状出てる人がいれば推測もできるんじゃないかと
139デフォルトの名無しさん:2010/02/21(日) 23:11:48
リファクタリング:Rubyエディション
http://www.amazon.co.jp/dp/4048678841
140デフォルトの名無しさん:2010/02/21(日) 23:12:41
ショッピングを続ける: 最近の履歴に含まれている商品を買った人は、こんな商品も買っています
ページ: 1 / 17 (最初に戻る)
前に戻る

*
恍惚美女~潤う甘い果実~ 菜摘四季 [DVD] DVD ~ 宇田マサル
¥ 2,952

おすすめ商品を修正
*
乙姫VOL.5 桜木久美子 [DVD] DVD ~ 桜木久美子
5つ星のうち 4.0 (5) ¥ 2,952

おすすめ商品を修正
*
快感ヌーディーフロント 阿井原すみれ [DVD] DVD ~ 宇田マサル
5つ星のうち 4.0 (2) ¥ 2,952

おすすめ商品を修正

141デフォルトの名無しさん:2010/02/21(日) 23:30:06
>>139
> 価格: ¥ 5,040
絶対的価格がなんか微妙に高ッ!
450ページの大型本だから妥当なんだけどさ
142デフォルトの名無しさん:2010/02/22(月) 11:51:43
自称中級者でJAVA版のリファクタリングを読んだことは無いんだが読むべき?
143デフォルトの名無しさん:2010/02/22(月) 11:58:52
ttp://www.amazon.com/Refactoring-Ruby-Jay-Fields/dp/0321603508/
「好評のJava版のコードをRuby用にコピペ改変して載せただけなんじゃねっていうか動かないぞ金返せ」
「Java版を読んだなら読まなくてよしっていうか誤植直したのを売れバカ」
というツッコミが入ってるな
144デフォルトの名無しさん:2010/02/22(月) 12:39:44
そろそろ1.9に乗り換えないと流行に乗り遅れそうだ。
145デフォルトの名無しさん:2010/02/22(月) 12:42:39
手元でライブラリのメソッド再定義できるくらいの力のある人は普段使いを1.9.1にできるレベル
前はなんとかしないとならないgemライブラリが多すぎて諦めたもんだが
146デフォルトの名無しさん:2010/02/22(月) 13:41:59
戻り読みのできない正規表現エンジンとか使ってられないよ!!!
147デフォルトの名無しさん:2010/02/22(月) 13:43:22
>>143
だめぽいね
翻訳で大幅手直しが入っていれば、といったところか
148デフォルトの名無しさん:2010/02/22(月) 13:52:03
>>147
訳者が長尾さんだから期待したいところ
149デフォルトの名無しさん:2010/02/22(月) 14:21:04
内容変えちゃったらそれは翻訳じゃないじゃん
シドニィ・シェルダンみたいに別もんになるぞ
150デフォルトの名無しさん:2010/02/22(月) 14:24:07
明らかな誤植は直してほしいな。
151デフォルトの名無しさん:2010/02/22(月) 14:27:16
動かないYO!くらいのヤク中はつけてくれるだろ
152デフォルトの名無しさん:2010/02/22(月) 15:30:47
意味ねー

 † 現行では動作しません

とかいう注釈が毎ページにある状態
153デフォルトの名無しさん:2010/02/22(月) 15:53:09
>I've found errors on almost every page I've read.
>It looks as if someone cut and paste the text from
>the original into a new document, quickly converted
>the Java examples to Ruby (without testing or review,
>given some of the errors), and went to press.

mjd?
154デフォルトの名無しさん:2010/02/22(月) 16:15:10
つかなんでこれ翻訳しようと思ったんだ
155デフォルトの名無しさん:2010/02/22(月) 16:39:16
そのうち、Yuguiさんが別本として出してくれるのではなかろうか
156デフォルトの名無しさん:2010/02/22(月) 16:42:34
書名は「Rubyリファクタリング」でよろしく
157デフォルトの名無しさん:2010/02/22(月) 18:50:49
元ネタのリファクタリング本が優れていたのは
コードを綺麗にする方式の提示もさることながら、
ある方式を実施するにあたってコードを壊さない一連の手順を
提示したのが大きい訳で、サンプルとして例示したコードが動かないんじゃ
有り難みも半減だよなあ。
158デフォルトの名無しさん:2010/02/22(月) 21:22:21
この動かないプログラムを動くようにしてさらにリファクタリングもしろという
作者からの課題かもしれない。
159デフォルトの名無しさん:2010/02/22(月) 21:25:11
もともと動かないものを動くようにしちゃったら、
それは仕様を変えたということでリファクタリングになってないだろ
160デフォルトの名無しさん:2010/02/22(月) 21:43:33
>>156
なんであんなわかりにくいだろうね
めちゃくちゃ区別しにくい
161デフォルトの名無しさん:2010/02/22(月) 21:44:50
>>159
なんでやねん
162デフォルトの名無しさん:2010/02/22(月) 21:49:16
だが待ってほしい
163デフォルトの名無しさん:2010/02/22(月) 22:13:47
リファクタリングとは,プログラムの動作を変えずにソースコードを整理すること.
ということらしいので,動作を変えるような変更はリファクタリングではない.
164デフォルトの名無しさん:2010/02/22(月) 22:25:39
つまり動かないコードを動くようにするフェーズと
動くようになったコードをリファクタリングするフェーズとを厳密に分離する必要があるという話だな。
1フェーズ目の成果をリファクタリング前のコードとして掲載して
2フェーズ目の成果をリファクタリング後のコードとして掲載せよと。


……もういいからYuguiさんが凄いリファクタリング本書いてくれるの期待しようぜwww
165デフォルトの名無しさん:2010/02/22(月) 22:26:56
ちうかRubyistって基本的にスパゲッティ大好きだろ?
リファクタリングなんてせずに黙って食え。
166デフォルトの名無しさん:2010/02/23(火) 00:04:09
【政治】民主・石井一氏「鳥取、島根は日本のチベット。人が住んでるのか。牛が多いのか。山やら何やらあるけど、人口が少ない所」★2
http://tsushima.2ch.net/test/read.cgi/newsplus/1266846976/
167デフォルトの名無しさん:2010/02/23(火) 01:32:28
なに頭でっかちな脳内だけの空論を言ってるんだよ
リファクタリングで不安定なプログラムが安定するなんて当たり前にあることだろ
役に立たない言葉の定義なんてどうでもいいわ
168デフォルトの名無しさん:2010/02/23(火) 02:03:59
ネタにキレレス(ry
169デフォルトの名無しさん:2010/02/23(火) 02:35:35
だよなwネタにマジレスとかありえねー
170デフォルトの名無しさん:2010/02/23(火) 02:44:07
どれがネタなのかよくわからん
171デフォルトの名無しさん:2010/02/23(火) 06:02:42
突っ込まれるまでマジで、突っ込まれたらネタ。
172デフォルトの名無しさん:2010/02/23(火) 07:02:27
ネットで、ましてや2ちゃんで体裁なんて気にすんなよw
173デフォルトの名無しさん:2010/02/23(火) 08:11:41
>>167
それは普通に改善とか修正とかリストラクチャリングって
呼べばいいんじゃね。

機械的な手順やツールによる自動化が提供されていなかったり、
単に作業者がプアだったりした時に、
リファクタリングのつもりで違う何かをしているというのは
よくある話。
174デフォルトの名無しさん:2010/02/23(火) 10:37:07
とりあえず、リファクタリングはきちんと専門用語だから
プログラミングだけでは金にならんし意味がないからという理由で
営業もプログラミングに含めるというような行為と同じ
175デフォルトの名無しさん:2010/02/23(火) 10:43:12
>>167のような人にこそリファクタリング本が必要だ
176デフォルトの名無しさん:2010/02/23(火) 10:49:59
「新しい良い動作」に書き換えることなら誰でもできるんだよ(それこそ初心者にも)
それでいいのならリファクタリングという概念が持て囃されることは永遠になかったはず

リファクタリングはソフトウェアとして新しい動作を一切組み入れない
ソースコード管理において安全度優先の書き換えを行えるようにする知識を供給する
うまくいかないことも少なくないが、俺コードで書き換わって不用意に破壊されるよりは諦めがつく
177デフォルトの名無しさん:2010/02/23(火) 11:27:09
用語の定義をないがしろにするやつは死んだらいいと思うw
178デフォルトの名無しさん:2010/02/23(火) 11:57:48
リファクタリングという言葉の定義って
どこかできっちりと決めたものがあるのか?
179デフォルトの名無しさん:2010/02/23(火) 12:08:06
>リファクタリングはソフトウェアとして新しい動作を一切組み入れない

ちがう罠
180デフォルトの名無しさん:2010/02/23(火) 12:23:38
>>178
あるよ
181デフォルトの名無しさん:2010/02/23(火) 12:29:34
wikipediaには厳密な定義がないって書いてあるんだがどっちよ
あるというならどこにあるのかも書いてくれないと
182デフォルトの名無しさん:2010/02/23(火) 12:34:21
>>180
つうかそれを提唱したのがファウラーのリファクタリング本だよな。

そのレベルのクォリティを期待されてたRuby版がうんこだったからこそ
大炎上なんだし。
183デフォルトの名無しさん:2010/02/23(火) 12:43:53
変更の影響を考えたらコードを綺麗にするなんて机上の空論、
なんて言ってたような連中へ突きつけられた現実解が
リファクタリングだしな。

本読んでなきゃ開発ツールに付いてる便利なリネーム機能ぐらいの
認識かもしれないが。
184デフォルトの名無しさん:2010/02/23(火) 12:53:43
定義という言葉の定義すらわかってないのがこのスレのクオリティ
185デフォルトの名無しさん:2010/02/23(火) 13:13:30
>>181
リファクタリング本に書いてあるし、著者本人のwikiにも引用されてるし、
それの有志による邦訳すらあるなあ。
ttp://capsctrl.que.jp/kdmsnr/wiki/bliki/?DefinitionOfRefactoring

まあWikipediaを根拠にしてるあたり釣りなんだろうけどさ。
186デフォルトの名無しさん:2010/02/23(火) 13:25:38
>>167のような人を赦すようにはなってないな
少なくとも「リファクタリングとは本に書いてある一連のやつ」という認識は共通だ
そういうレベルでオレオレの入り込む余地はない

本を読んだ上で個々の効果の議論をするのは有効
187デフォルトの名無しさん:2010/02/23(火) 13:26:40
>>185
pediaにしたって英語版にはそんな記述なくて要出典ものだけど
それでも「外部からの動作を変えずに」と書いてるな
188デフォルトの名無しさん:2010/02/23(火) 13:28:54
デザインパターンもそうだが、基本「あるあるあるあるwwwwwwwwwwwwwwwww」の集大成だ
逆にいうと、そういうので困った参った恨んだ吐いた経験がないと意味がわからないかもしれない
それこそ、「俺が書き換えたほうが早い」
189デフォルトの名無しさん:2010/02/23(火) 13:39:15
例の本、ひょっとして
ttp://d.hatena.ne.jp/textfile/20070116/refruby
の件が関係してるのかな
190デフォルトの名無しさん:2010/02/23(火) 13:43:13
>>188
「○○○で困った経験があるだろ?」
「ないよ」

というのは意外と地味に困る
191デフォルトの名無しさん:2010/02/23(火) 19:57:44
>>190
いつも他人に尻拭いさせてりゃ困ることは無い罠
192デフォルトの名無しさん:2010/02/23(火) 20:23:13
勝手に頭の中で状況作って明後日の方向にスレを持って行くなよ
193デフォルトの名無しさん:2010/02/23(火) 20:56:26
Ruby Best Practices って本はどうなのよ?
誰か読んだ?
194デフォルトの名無しさん:2010/02/23(火) 23:16:13
>>193
とても気になるが、対象範囲が漠然としてるタイトルだな
Railsなのか、生Rubyなのか、それともWEBアプリ関係ない汎用的な
クックブック的な物なのか

そもそもRubyの一般的なフィールドってのがよくわからんのに
best practiceも何もって気がする
195デフォルトの名無しさん:2010/02/24(水) 01:00:25
Amazonに概要が書いてあるじゃん
興味あるけど英語でオライリーの本1冊はおれにはきついなあ
英語の技術書をまるごとは読んだことないのだが、
サンプルプログラムとかあるから実は割といけるのだろうか
196デフォルトの名無しさん:2010/02/24(水) 01:42:27
Rubyテクノロジーリーダーを訪ねて - 第1回 「まつもとゆきひろ氏」
ttp://edn.embarcadero.com/jp/article/38182
197デフォルトの名無しさん:2010/02/24(水) 10:00:20
ソートの概念自体を教えたいのならCとかFORTRANとか使えよ…
198デフォルトの名無しさん:2010/02/24(水) 10:15:25
そもそも授業としてソートの中身そのものを教えるということが
昨今のコンピュータ序論または一般教養的にホントに有効なのかどうかという
199デフォルトの名無しさん:2010/02/24(水) 10:31:46
「しかしこれを使ってはいけません安心確実高速な組み込みのを使ってください」という授業は糞ではあるな
というかインタビュー内容の感想書け
200デフォルトの名無しさん:2010/02/24(水) 10:37:25
このインタビュー中身空っぽだな
「継続は力なり」くらいしか伝わってこない
201デフォルトの名無しさん:2010/02/24(水) 10:38:44
今日の成功を予感させるものを感じる。

ワロタw
202デフォルトの名無しさん:2010/02/24(水) 10:46:22
インタビューをするほうの人はもうちょっと根性入れたほうがいいかも
本人の今日夕飯に何々食いましたとかいうブログ記事以下の興味内容しかもてないとか悲しすぎる
203デフォルトの名無しさん:2010/02/24(水) 11:13:10
>>193
> Ruby Best Practices って本はどうなのよ?

無料公開中。今のところ、5章まで。

ttp://blog.rubybestpractices.com/
204デフォルトの名無しさん:2010/02/24(水) 11:14:33
インタビューするならRite(笑)がどうなってるのか聞いてほしかった
205デフォルトの名無しさん:2010/02/24(水) 12:39:46
>>203
thx
206デフォルトの名無しさん:2010/02/24(水) 16:11:21
>>201
歌が下手なアイドル歌手の「熱唱」みたいな表現ですね。
207デフォルトの名無しさん:2010/02/24(水) 21:47:15
>>196
のサイトによると、
「Rubyがカタログ上のスペックで劣るため、採用されないというのも不本意」
ということなんだけど、RubyInlineというCを埋め込むライブラリを標準添付
にして、単純な比較は上位になるようにしてしまえばいいのに。

RubyInlineは、今ではWindows(mingw版)でも動くみたいだし。
208デフォルトの名無しさん:2010/02/26(金) 02:27:43
Rubyベストプラクティスは来月出るんだね
209デフォルトの名無しさん:2010/02/26(金) 21:58:00
気づいたんだがコマンドラインオプションの-xってすげー便利だな
外部コマンドを実行できて,かつ複数行コメントの機能がある
プログラム言語やマクロ言語ならなんでもRubyスクリプトを埋め込めるのな
Windowsのバッチファイルのためだけに存在するのかと思ってた

今日から秀丸マクロにRubyスクリプトを埋込みまくりだぜ
210デフォルトの名無しさん:2010/02/26(金) 22:07:56
Perlから受け継いだ機能ですな。
ネットニュース(掲示板)やメールに載せたスクリプトを、
記事の件名などのヘッダ込みのまま実行できる。
211デフォルトの名無しさん:2010/02/27(土) 01:58:24
rubyってperlの機能どのくらい引き継いでるんですか
212デフォルトの名無しさん:2010/02/27(土) 09:30:08
定量的には分からんが、オプションの多くとか、$+1文字の変数の
多くとか、elifとか、BEGIN END(これはさらにawk由来でもある)とか
__END__ とか。正規表現の拡張のうちPerlが初めてやったものも結構
入ってるよな。初期からあるドキュメンテーションコメントが=begin
=endなのもPOD由来と見た。
213デフォルトの名無しさん:2010/02/27(土) 11:31:29
インパクトのでかいのは正規表現リテラルかな
クオートのエスケープ抜きで正規表現書けるのはちょっと素敵
214デフォルトの名無しさん:2010/02/28(日) 03:05:20
Rubyで以下のPHPコードをやろうとするとどうなりますか?

$curl = curl_init();

curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, ‘track=#NowPlaying’);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_URL, ‘http://stream.twitter.com/1/statuses/filter.json’);
curl_setopt($curl, CURLOPT_USERPWD, $_CONFIG['twitter']['username'] . ‘:’ . $_CONFIG['twitter']['password']);
curl_setopt($curl, CURLOPT_WRITEFUNCTION, ‘progress’);
curl_exec($curl);
curl_close($curl);

function progress($curl, $str)
{
print “$str\n\n”;
return strlen($str);
}
215デフォルトの名無しさん:2010/02/28(日) 03:16:19
よくわからんが、syntax errorを出せばいいのか?
216デフォルトの名無しさん:2010/02/28(日) 04:34:06
>>214
PHPはよく知らんがたぶんこんな感じ

require 'uri'
require 'net/http'
postfields = {'track'=>'#NowPlaying'}
uri = URI('http://stream.twitter.com/1/statuses/filter.json')
uri.user = $_CONFIG['twitter']['username']
uri.password = $_CONFIG['twitter']['password']
res = Net::HTTP.post_form(uri,postfields)
print "#{res.body}\n\n"
217デフォルトの名無しさん:2010/02/28(日) 18:22:56
>>214
あと、CurlはRubyバインディングがあることはあるが、
作者いわく「Linuxでしかテストしてないよ」な代物なので注意な。

Windowsとかの場合はDLとか使って無理矢理呼ぶ必要がある。
218デフォルトの名無しさん:2010/02/28(日) 21:00:30
http://pc12.2ch.net/test/read.cgi/tech/1200175247/
Rubyの宿題教えてください。2限目
219214:2010/03/01(月) 04:38:35
>>216,>>217
ありがとうございます。

trackurl = 'http://stream.twitter.com/track.json?track=http'
c = Curl::Easy.new do |curl|
curl.url = trackurl
curl.userpwd = USERNAME + ':' + PASSWORD
end
$VERBOSE = nil
while true
body = c.on_body do |data|
result = body ? body.call(data) : data.length
next if !result.is_a?(Integer)
s = JSON.parse(data) rescue next
user = s['user']
next unless user && user['lang'].include?('ja')
links = s['text'].scan(/(https?:\/\/[-_.~a-zA-Z0-9;\/?:\@&=+\$,%#]+)/).flatten
links.each do |link|
p "url => #{link}"
end
result
end
c.perform
end

見よう見まねでこんな感じになったんですが、これをずっと動かしているとStackErrorとかで止まります。
後は>>218の方で聞く事にさせて頂きます。どもでした。
220デフォルトの名無しさん:2010/03/01(月) 20:25:39
うわあ、Pathname#to_str はもうないのか
open 用だなんて俺場面的に超便利な使い分け機能だと思ったのに

てかこのマニュアル古いな
221デフォルトの名無しさん:2010/03/02(火) 22:26:12
>>220
Pathname#to_s と Pathname#to_str って実質的に同じメソッドですよね?
to_s ではダメで to_str でないと具合が悪い状況が思いつかないのですが。
222デフォルトの名無しさん:2010/03/02(火) 22:30:18
irb> class C; def to_s; "./"; end; end
irb> open(C.new){}
TypeError: can't convert C into String
irb> class C; def to_str; "./"; end; end
irb> open(C.new){}
irb>
223221:2010/03/03(水) 00:01:46
>>222
なるほど Kernel#open が引数に対して to_str を呼ぶという仕様絡みですか。

ググッてみたら、open 内で to_open を呼ぶようになったので Pathname#to_open
を実装したら、みたいな話が以前にあったようですが、最終的にどうなったのかな?

Pathname#open があるのでそれを使えということなんですかね。
224デフォルトの名無しさん:2010/03/03(水) 00:26:24
/ 区切りは Windows の Ruby の open とかでも使えるんだっけ?
ドライブ文字とかどうしてるの?
225デフォルトの名無しさん:2010/03/03(水) 00:34:51
/ を使用しているときはドライブの指定はできない
ドライブ名つきのフルパスを扱いたいときは D:\somedir のように \ を区切り文字に使う

ということだったと記憶
226デフォルトの名無しさん:2010/03/03(水) 00:39:30
>>152
リファクタリングRuby版が届いたが

  † 現行では動作しません

という訳注はどうやらないようだ

まだ手は動かしてない
227デフォルトの名無しさん:2010/03/03(水) 00:41:47
>>225
マイコンピュータは仮想的なフォルダであり、Windowsのドライブ変更はUNIXではルートのマウントし直しに該当する

…とRubyでは考えてる、ように見える
/ はカレントドライブのルートを返す(つまり普通は C:\)
時々、/c/windows や /d/somedir のようにマウントされてるとみなすソフトもあるけどね
こっちのほうが正直便利なんだけども、いまさらそんなこと言っても
228デフォルトの名無しさん:2010/03/03(水) 02:41:15
教祖がウィンドウズ使ってない故の実装の甘さだな。
229デフォルトの名無しさん:2010/03/03(水) 02:46:41
>>224-225
気にせず使ってるけど、それでエラーに遭遇したことがないよ。
230デフォルトの名無しさん:2010/03/03(水) 03:08:01
WindowsはAPIレベルでは / と \のどっちでもディレクトリセパレータとして扱ってくれるので(注:正確かどうかは知らん)
ドライブ指定があろうが、UNCだろうが / で通る
Ruby内で閉じてるのなら \ は使わずにすむよ

確かDOSのころから \でも/でもよかったんじゃないの?
スイッチのキャラクタが/だったんで コマンドライン引数では\のみがディレクトリセパレータになっただけで

Windowsのコマンドプロンプトでもコマンド自体は
>c:/windows/notepad.exe
とかで起動できるよ
231デフォルトの名無しさん:2010/03/03(水) 03:19:03
>c:/windows/notepad.exe

確かに起動出来るね

>dir "c:/windows/notepad.exe"

ファイルが見つかりません
232デフォルトの名無しさん:2010/03/03(水) 03:20:41
cygwin 版なら
/cygdrive/c/hogehoge
/cygdrive/d/fugafuga
233デフォルトの名無しさん:2010/03/03(水) 10:51:52
>>230
> Windowsのコマンドプロンプトでもコマンド自体は
> >c:/windows/notepad.exe
> とかで起動できるよ
だからそれはcmd.exeの処理だと何度言えばわかるですかもう堪忍袋の緒が切れました
234デフォルトの名無しさん:2010/03/03(水) 11:05:12
どっちかってとルートである / の扱いがへぼいという話に見える
235デフォルトの名無しさん:2010/03/03(水) 11:44:05
だからって今更¥使うってのもあり得ないけど。
236デフォルトの名無しさん:2010/03/03(水) 13:41:39
マカー発見
まああんたには関係ない話だろうな
237デフォルトの名無しさん:2010/03/03(水) 14:02:03
>>235
お前らは素直にコロン使ってろよ
しかも相対パスと絶対パスの見かけが逆とか

/A/B/C → A:B:C
B/C   → :B:C
238デフォルトの名無しさん:2010/03/03(水) 14:10:12
まあ使いたくてもOS9ではRuby動かないんですけどね
239デフォルトの名無しさん:2010/03/03(水) 14:19:18
>>236 は何を以てマカーと判定しているのでしょうか。
240デフォルトの名無しさん:2010/03/03(水) 14:29:17
¥
241デフォルトの名無しさん:2010/03/03(水) 14:54:30
なるほど。そういえばそうでした。

242デフォルトの名無しさん:2010/03/03(水) 18:14:53
>>233
cmd.exeがなにか特別な処理をしてるとは思えんのだが
コマンド名はそのまま プロセス起動APIに渡してるんじゃないの?(これも正確か知らんけど)

直接CreateProcessに/区切りで渡しても起動するよ
Rubyで system('C:/windows/notepad.exe') だとあまり直接っぽくないし、かといって
require 'Win32API'
Win32API.new('kernel32','CreateProcess','PPPPILPPPP','I').call('c:/windows/notepad.exe','',nil,nil,0,0,nil,nil,[68].pack("L")+"\0"*64,"\0"*64)
じゃ長いかなと
Win32APIで例をあげるなら、カレントディレクトリの変更なんてのが短くていいか
require 'Win32API'
Win32API.new('kernel32','SetCurrentDirectory','P','I').call('c:/windows/')
p Dir.pwd
243デフォルトの名無しさん:2010/03/03(水) 18:30:06
で?
244デフォルトの名無しさん:2010/03/03(水) 18:59:57
っていう
245デフォルトの名無しさん:2010/03/03(水) 21:05:48
WindowsはUnix系のノリでシェルとOSとの分担がなされていると考えると
驚愕させられることになるよな
ワイルドカード展開が各プログラムで自力とか
プロセスの引数がARGVで取れるのはCランタイムが
頑張って分割してるだけとか
246デフォルトの名無しさん:2010/03/03(水) 21:31:27
で?
247デフォルトの名無しさん:2010/03/03(水) 21:54:18
大量にファイルがあるディレクトリで
echo * | grep hoge すると out of memory とかなんとかで死ねる
248デフォルトの名無しさん:2010/03/03(水) 22:04:27
ソフトエイジェンシー、Rubyのソースコードを暗号化する「RubyEncoder」 - Enterprise Watch
"ソフトエイジェンシー、Rubyのソースコードを暗号化する「RubyEncoder」
del.icio.usに追加
Twitterに投稿
livedoorクリップに追加
Google Bookmarks に追加
Yahoo!ブックマークに追加
はてなブックマークに追加

 株式会社ソフトエイジェンシーは3月3日、Ruby/Ruby on Railsのソースコードを暗号化する「RubyEncoder」を発表した。
価格は3万1500円/ライセンスで、3月8日より提供する。

 RubyEncoderは、Ruby/Ruby on Railsのソースコードをバイトコード形式に変換する製品。簡単に解読できなくすることで、
商用アプリケーションとして配布する際などに知的財産の保護が実現する。特長は、多彩なアプリケーションロック機構を搭載する点。
IPアドレス、MACアドレス、ドメイン名が一致しないとアプリケーションをロックして動作不能にできる。これにより、安易なコピーを防げるほか、
アプリケーションに有効期限を設定して体験版も容易に作成可能。また暗号化とは別に、アプリケーションの実行に必要なライセンスファイルも作成できる。
これにより、評価版や製品版など異なったライセンス配布が可能だ。

 製品構成は、エンコーダとスクリプトローダの2種類。暗号化するエンコーダは1ライセンスで1台のみインストールが可能。複合するスクリプトローダは無制限で利用できる。

 動作環境は、Windows/Mac OS X/Linux/FreeBSD、Ruby 1.8.6/1.8.7/1.9.0//1.9.1。 "
http://enterprise.watch.impress.co.jp/docs/news/20100303_352389.html
249デフォルトの名無しさん:2010/03/03(水) 22:37:43
なんていうかさあ、コピペするならするでもうちょっとちゃんとやれよ
250デフォルトの名無しさん:2010/03/04(木) 00:25:58
ねー質問、URI.parseが自動でURI.escapeしないのはなんで?
251デフォルトの名無しさん:2010/03/04(木) 01:27:43
自動でするようになったらなったでうがぁーってなると思うようがぁーって
どこをパース時にエスケープしたのかきちんと区別して喋れって思うはず

というか、parse なんだから、文字列をそのままオブジェクト化するでいいんじゃないの
オブジェクトにする際に不正なものがあれば例外出して落ちると
ユーザーの利便性はラッパーとか作ってねみたいな

build2 があるなら parse2 があってもいいじゃんという感じはする
252デフォルトの名無しさん:2010/03/04(木) 09:43:52
不正なURLを扱えるようにしたいときにも困るかもしれないしな
日本語URLなんてのもあるし
253デフォルトの名無しさん:2010/03/04(木) 10:20:23
そんな需要は極一部だから、独自で実装すればいいだけだな。
254デフォルトの名無しさん:2010/03/04(木) 13:04:32
というか既にそういうgemがあって既存のURIクラスを差し替える形で
取り込む話になってたような
255デフォルトの名無しさん:2010/03/04(木) 13:12:36
じゃあ日本全国で毎日うがぁーってなると思うようがぁーって
256デフォルトの名無しさん:2010/03/04(木) 13:48:33
>>254
Addressable?
257デフォルトの名無しさん:2010/03/04(木) 22:27:41
>>256
そう。不正URIをどうするかは知らんけど。
258デフォルトの名無しさん:2010/03/04(木) 22:43:46
>>256
オーケー自作のURIクラス破棄した
259デフォルトの名無しさん:2010/03/05(金) 00:55:23
>>258
嬉しい半面悲しくなるよな。
もっと早くに知ってればっていう。
260デフォルトの名無しさん:2010/03/05(金) 00:58:45
自力でライブラリのアッパーバージョンを実装するためには
RFCとか他言語の類似ライブラリとか読み込まないといけないことが多いので
ただ出来合いのを見つけて利用するだけの時よりも確実に実力がついていることは間違いない


問題はその実力とやらが役に立つ機会が低いと危惧されることかな
261デフォルトの名無しさん:2010/03/06(土) 02:50:39
rubyの次の言語を作るときぐらいだろうな。役に立つのは。
262デフォルトの名無しさん:2010/03/08(月) 00:10:26
"アンエンコード" に一致する日本語のページ 約 803 件
"アンエスケープ" に一致する日本語のページ 約 9,350 件

うううん…
263デフォルトの名無しさん:2010/03/08(月) 04:23:57
アンアンエンコード の検索結果 約 278,000 件中 1 - 10 件目 (0.24 秒)
アンアンエスケープ の検索結果 約 99,600 件中 1 - 10 件目 (0.22 秒)

うううん…
264デフォルトの名無しさん:2010/03/10(水) 11:07:21
「うううん…」がちょっとエロいと思ってしまう俺は童貞
265デフォルトの名無しさん:2010/03/10(水) 18:39:52
アンアンの方じゃないのか
266デフォルトの名無しさん:2010/03/10(水) 23:13:33
アンアンがあるから、その下のうううん…がエロく感じるんだよ



…ちきしょう
267デフォルトの名無しさん:2010/03/11(木) 06:50:31
どうでもいいけどメーリングリスト、いやメールといってしまってもいいけどさ。
「暗号化されていないメールは煮るなり焼くなり転送するなり印刷するなり好きにしてくれ」
というのが常識だと思ってたんだけど今はそうでもないのな。
268デフォルトの名無しさん:2010/03/11(木) 07:11:58
まじめにレスすると馬鹿を見そうだからやめとくお
269デフォルトの名無しさん:2010/03/11(木) 12:58:04
ttp://pc12.2ch.net/test/read.cgi/tech/1267668057/230-231
なんか地味に酷い遣り取りが
270デフォルトの名無しさん:2010/03/11(木) 13:14:51
るびまは随時アップデートすべき?
それもなんか違うよねえ
271デフォルトの名無しさん:2010/03/11(木) 13:21:27
でも古くて使えない情報をいつまでも放置しとくのもどうかと。
もうこの情報は古いの注釈ぐらい入れたほうが、検索でたどり着いた初心者には有用かもしれない。
272デフォルトの名無しさん:2010/03/11(木) 13:27:12
>>271
よしじゃあ君を「るびまの情報が古いかどうか全ページ調べて毎週報告する係」に任命だ
273デフォルトの名無しさん:2010/03/11(木) 13:33:15
MLで報告なりすれば時間があるときに編集部注的なものはつけられるかもしれないが
一番の問題はアクティブメンバーはるびまの過去記事に触れる機会がないということだな

たとえば、このスレにいるような人は「Ruby CGI」でわざわざぐぐったりしないだろ
ttp://www.google.com/search?num=50&hl=ja&q=Ruby+CGI&lr=lang_ja
だから、「古い情報の害」にぶち当たるのは常に初心者だけだ
274デフォルトの名無しさん:2010/03/11(木) 13:47:52
この記事は参考になりましたか?

 ・ 参考になった
  ○ 記事自体が有用だった
  ○ 参考程度にはなった
 ・ 参考にならなかった
  ○ 期待した内容と違った
  ○ 記事通りに動作しなかった

みたいなアンケートを一番下にくっつけとくというのはどう
275デフォルトの名無しさん:2010/03/11(木) 13:54:43
記事を寄稿した人に頼むしかない現状が…

本気でアップデートしたら別記事になってしまう
276デフォルトの名無しさん:2010/03/11(木) 15:05:45
バージョン対応の管理は面倒だよねえ
うまくやる方法はあるのかな
277デフォルトの名無しさん:2010/03/11(木) 15:16:42
今回でいえば「RubyでCGIをつくろう2010」という記事が1本書けることが示された

ネタの確保には成功したが誰が書くのかまでは知らん
278デフォルトの名無しさん:2010/03/11(木) 22:44:58
これ標準にぶっ込んどいてね

def Marshal.loadfromfile(filename)
Marshal.load(open(filename, "r"))
end

def Marshal.savetofile(obj, filename)
open(filename, "w"){|f|
f.write(Marshal.dump(obj))
}
end
279デフォルトの名無しさん:2010/03/11(木) 22:51:45
>>278
> "w"
歴史から学ばぬ愚者は帰れ
280デフォルトの名無しさん:2010/03/11(木) 22:52:04
やだそんな Python みたいなメソッド名
281デフォルトの名無しさん:2010/03/11(木) 22:59:38
公開ライブラリでバイナリスイッチ忘れる人は意外と多い
というかバイナリスイッチ相当をWindowsではデフォルトオンにするとかいうのは駄目だな
書いてる途中で駄目っぽいのに気づくくらいじゃどうにもならん
282デフォルトの名無しさん:2010/03/12(金) 02:12:20
b忘れるのってmatzとlinux厨くらいじゃないのかな
283デフォルトの名無しさん:2010/03/12(金) 03:17:13
matzはlinux厨じゃないの?
284デフォルトの名無しさん:2010/03/12(金) 09:01:48
間違いなくLinux厨だな

でも今だとMacもUnix系だからb忘れるんじゃね?
285デフォルトの名無しさん:2010/03/12(金) 10:23:06
IO.binreadはあるけどIO.binwriteはないんだよな。
# 一瞬IO.writeと一緒に入ったが。
ttp://redmine.ruby-lang.org/issues/show/1081
286デフォルトの名無しさん:2010/03/12(金) 14:14:22
webrickのcgihandler.rbもbinmode忘れてるよな
36~40行目あたり
未だに直ってねえ
287デフォルトの名無しさん:2010/03/12(金) 14:30:39
動作変わるから途中で変更するわけにいかん
File.readが直ってないのと同じ理屈
288デフォルトの名無しさん:2010/03/12(金) 14:55:37
いや明らかにバグだろ
cgi_outで改行コードを勝手に書き換えられちゃ困るっての
CGIでバイナリファイルを出力することを考慮してないのか
某プラットフォームを無視してるだけなのか分からんけども
289デフォルトの名無しさん:2010/03/12(金) 15:27:22
無視というか、忘れてるだろうと思うことはある。
290デフォルトの名無しさん:2010/03/12(金) 15:30:07
こんなのいちいち立ち止まって考えなくてもいいようなフォローが欲しいところではあるな
291デフォルトの名無しさん:2010/03/12(金) 15:34:37
rubyやめればすべて解決
逝け 立ち止まるな
292デフォルトの名無しさん:2010/03/12(金) 15:39:49
>>291
お前Ruby以外使ったことないだろ
293デフォルトの名無しさん:2010/03/12(金) 15:54:11
Ruby使ってるかどうかも怪しいと思う
294デフォルトの名無しさん:2010/03/12(金) 16:45:03
>>288
用途的にマイナーかつサポートしてる全プラットフォームで
テストしてないゆえのバグだな。
いかにもRubySpec的なテストでで引っかかりそう。
295デフォルトの名無しさん:2010/03/12(金) 16:59:27
WEBrickの人気のなさは異常
296デフォルトの名無しさん:2010/03/12(金) 17:02:36
C#を覚えても、XBOXのゲームもPS3のゲームもWiiのゲームもDSのゲームでさえ、つくれないってほんとうですか?
297デフォルトの名無しさん:2010/03/12(金) 17:03:51
ありゃ、書き込むスレをまちがえた。ごめん。
298デフォルトの名無しさん:2010/03/12(金) 17:05:57
そんなの有り合わせのライブラリなんて使わないぜって、問題に対処出来るレベルが素通りしてしまってるのがcgiの悲劇だしな。
そして付属のcgiライブラリで簡単に出来ると思い込んでる初心者ほど罠に嵌る。
299デフォルトの名無しさん:2010/03/12(金) 17:12:04
>>298
cgiライブラリと(webrickの)cgiハンドラの区別はちゃんとしてくれ
まったく別モンだから
300デフォルトの名無しさん:2010/03/12(金) 21:08:20
cgi.rb引っ張りすぎたよな
もうだめだ
301デフォルトの名無しさん:2010/03/12(金) 21:24:37
>>300
もうないよそんなもん
302デフォルトの名無しさん:2010/03/13(土) 00:27:29
Rubyってイースターエッグとかないの?
303デフォルトの名無しさん:2010/03/13(土) 00:33:52
…そういう隠しお遊び機能のあるプログラム言語があるなら参考のために教えてくれ
304デフォルトの名無しさん:2010/03/13(土) 00:49:15
昔のVisual Studio(というか結構な数のMS製品)とかDelphiのIDEにはしこまれてたな
変なコードしこむなと政府に怒られてからやならくなったけど
305デフォルトの名無しさん:2010/03/13(土) 01:01:00
pragmaが有ると怒ってコンパイルやめてゲームを始めちゃうgcc1.34とか。
306デフォルトの名無しさん:2010/03/13(土) 01:18:56
ルビーをラビーって何度も読んでしまう
307デフォルトの名無しさん:2010/03/13(土) 01:24:36
ぬぬねねぬぬねの ぬぬねねぬぬねの
308デフォルトの名無しさん:2010/03/13(土) 01:26:23
Lavie
309デフォルトの名無しさん:2010/03/13(土) 02:17:06
winでirbを起動するときは
irb --noreadline
と打ってるよ。
そうしないと文字化けするから。
310デフォルトの名無しさん:2010/03/13(土) 02:58:17
>>309
それは確かfixがある筈。本体に取り込まれてるか知らないけど。

……あった。これ。
ttp://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/43546

コマンドプロンプトの桁数を80以外に変更していないでしょうか。最近Windows環境のrubyをいじっていないので推測ですが、
どの配布でもreadlineライブラリは含まれているはずですから、基本的には桁数が80であればちゃんと操作できると思います。

80桁以外にしたい場合はちょっと工夫が必要と思います。というのも、readlineライブラリのソースを読んだところ、Win32環境で画面サイズを
取得するコードはrl_prep_terminalに書かれているのですが、ruby側からは呼ばれていないようでした。
これを明示的に呼んでやれば、80桁以外でも操作できるようになりました。

ということで、具体的には以下のようなコードで対処していました。

require 'readline.so'

module Readline
alias :readline_so :readline
def readline(*a)
unless @@rl_prep_called ||= false
require 'dl'
DL.dlopen('readline.dll')['rl_prep_terminal', '0I'][1]
@@rl_prep_called = true
end
readline_so(*a)
end
module_function :readline_so, :readline
end

これを、インストールパスの site_ruby/1.8/readline.rb として保存しておくと以後、require 'readline' されたときに rl_prep_terminal が1回だけ呼ばれます。
irb とか debug とか、iar(active recordのirbフロントエンド)とかで有効でした。ruby-1.8.4時代の話ですが、ご参考まで。
311310:2010/03/13(土) 03:13:48
もう少し調べてみたところ、
1.9.1には取り込まれてる模様。2009/10/28だから最近だね。

多分これ1.8系には入ってないよね……。

ttp://www.atdot.net/~ko1/w3ml/w3ml.cgi/ruby-cvs/msg/32758
From: yugui ruby-lang.org
Date: Wed, 28 Oct 2009 23:15:49 +0900 (JST)
Subject: [ruby-cvs:32758] Ruby:r25540 (ruby_1_9_1): merges r24594 and r24604 from trunk into ruby_1_9_1.

yugui 2009-10-28 23:15:47 +0900 (Wed, 28 Oct 2009)

New Revision: 25540

http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=25540

Log:
merges r24594 and r24604 from trunk into ruby_1_9_1.
--
Fix: change terminal's size on Widows when the window size is changed

* ext/readline/readline.c (readline_get): add rl_prep_terminal(1).
insited by jitte [ruby-list:43546]
--
use rl_prep_terminal only on Windows. [ruby-core:25009]
* ext/readline/readline.c (readline_readline): use rb_prep_terminal
only on Windows.

Modified files:
branches/ruby_1_9_1/ChangeLog
branches/ruby_1_9_1/ext/readline/readline.c
branches/ruby_1_9_1/version.h
312デフォルトの名無しさん:2010/03/13(土) 21:34:11
# invalid な UTF だと正規表現でエラーが出るので ascii にする
str.force_encoding(Encoding::ASCII_8BIT)

ASCII_8BIT という呼び方は微妙な誤解を生むなあと思った(特に英語圏の人)
BINARY のほうがまだわかりやすそうだ
313デフォルトの名無しさん:2010/03/13(土) 21:39:28
>>312
BINARYと書いてあると特別な処理が必要であるように読めるからやめちくれというメールがあった
1.8 と同じ動作になるだけだという返信でオゥとか言ってたが
314デフォルトの名無しさん:2010/03/13(土) 23:57:19
1.9のmake golfとかはイースターエッグのようなものかも
あと、同じく1.9だとvm_opts.hの最後の方を見ると…
315デフォルトの名無しさん:2010/03/14(日) 10:29:32
絵文字エンコーディングが取り込まれる話を聞いて驚いたんだけどあんまり話題になってない?
316デフォルトの名無しさん:2010/03/14(日) 10:46:25
エンコーディングのオリジナル趨勢が絵文字入れようぜだから、
Rubyで頑張って作った人がいるのなら当然の成り行きとも思う
317デフォルトの名無しさん:2010/03/14(日) 11:20:37
しかし入ったのはDocomoとAuのジャパニーズ依存な絵文字なのだった
318デフォルトの名無しさん:2010/03/14(日) 11:25:10
外国のユーザはこのこと知ってるの?
319デフォルトの名無しさん:2010/03/14(日) 11:29:35
>>318
ruby-devで日本語読んでredmineの日本語読んでれば気づく

つまり議論段階ではほとんどの人は気づいてなかったと思われ
不意に決まってぜんぜんわからん変な処理が唐突に増えたようにしか見えないはず

require で取捨選択できるとかそういうのないの
320デフォルトの名無しさん:2010/03/14(日) 11:36:27
実際に動作してれば嫌でも気づくと思うんで、問題があったらサブ的な位置に下がることもあるかと
Encodingアドオンとかいう構想はないのかな
321デフォルトの名無しさん:2010/03/14(日) 12:06:32
rubyのgui弱いな〜
何かお進めない?
322デフォルトの名無しさん:2010/03/14(日) 12:09:42
なにもないよ!

いやわりとマジで
GUIをやろうと思うならRubyを使うべきではない
CGIをやりたい人がCOBOLを使うべきではないのと似たようなもん
323デフォルトの名無しさん:2010/03/14(日) 12:26:44
漏れはLinux使いなので、Ruby-gnome2のライブラリ群で満足
324デフォルトの名無しさん:2010/03/14(日) 12:27:22
WxRubyを、WxSugarやWxFormDesignerと組み合わせて使えば
それなりに何とかなるんじゃないかな
325デフォルトの名無しさん:2010/03/14(日) 12:38:51
>>321
残念だがRubyはGUIに向いてない

>>324
そりゃ出来るか出来ないかといえば
ごにょごにょしたら出来るんだろうけど
手軽じゃないよね
326デフォルトの名無しさん:2010/03/14(日) 13:05:58
つまりだ,RubyのGUIに不満が多いということは
その不満を解消するプログラムはキラーアプリになりうるということだ
327デフォルトの名無しさん:2010/03/14(日) 13:15:18
Java の Swing みたいに、RWing とか

まぁ言語本体には内蔵しないだろうね
328デフォルトの名無しさん:2010/03/14(日) 13:19:58
>>327
RWingって名前からして流行りそうにないな〜
329デフォルトの名無しさん:2010/03/14(日) 13:24:29
>>326
本スレ的にはそうだが、現在進行形で困ってる一般ユーザー的にはどーでもいい感じだなw
330デフォルトの名無しさん:2010/03/14(日) 13:57:39
>>326
滓が増えるだけ
331デフォルトの名無しさん:2010/03/14(日) 14:02:46
定番がない現状キラーもなにもないわって感じはする
まともに実装続いてるのシンプルなTkだけじゃん
332デフォルトの名無しさん:2010/03/14(日) 14:12:56
高性能全部入りのGUIビルダー(日本語にも対応)とかあれば便利そうだよね

>>331
だからそこに新しく、定番になるGUIライブラリが出てくれば
キラーアプリになり得るってことだろう
333デフォルトの名無しさん:2010/03/14(日) 14:19:38
思いつき以上の需要がないのか、需要はあるけど実装がないのか、それは見極めないと
*scratch* ウィンドウが標準装備で eval するたびにユーザーがボタン増やせるとかそういうのじゃないと
334デフォルトの名無しさん:2010/03/14(日) 14:24:08
Rubyコミュニティの中でCLIもGUIも偏見なく両方使える若い世代が育っていないんじゃないかとふと不安に襲われた
335デフォルトの名無しさん:2010/03/14(日) 14:34:01
Ruby自体が使えないからな
336デフォルトの名無しさん:2010/03/14(日) 14:46:45
>>335
はいはいすごいすごい
337デフォルトの名無しさん:2010/03/14(日) 15:50:17
というか目的に応じて複数の言語を使い分けるのが普通だから
Rubyに固執する必要もないだけだろ。
GUIやりたければ、GUIが得意な言語を使えばいいんだ。
338デフォルトの名無しさん:2010/03/14(日) 16:06:48
RubyのGUIライブラリで定番のものってないのか。
ちょっとチャレンジしてみようかな。
339デフォルトの名無しさん:2010/03/14(日) 16:09:04
それを何とかしようとして足掻くところから何かが生まれたりするのもまた事実かと。
ただのユーザーには無縁な話だが。
340デフォルトの名無しさん:2010/03/14(日) 16:09:29
Webベースで良いじゃん。
341デフォルトの名無しさん:2010/03/14(日) 16:17:09
>>303
import this
342デフォルトの名無しさん:2010/03/14(日) 16:21:48
>>338
構造的に、何かのGUIツールキットを呼ぶライブラリ、ラッパーのような形になる
んで、どちらかというと、作るための手段が不足しているというよりは、

  「わざわざRuby経由でGUIのどういうモノを作れば"お得"なのか」

というプロモーションが絶無
これさえできれば既存のライブラリの延長でも(それこそRuby/Tkでも)構わない

ぶっちゃけ、TkやらGTKやらQtやらWin32APIを呼ぶこと自体は既にできてる
そこで終わりなんだよね
343デフォルトの名無しさん:2010/03/14(日) 16:28:01
rubyにgtkのバインディングがあるじゃん、あれってgtkmmを経由してgtkを使ってるの?
344デフォルトの名無しさん:2010/03/14(日) 16:45:58
その点PerlもPythonもTkGtkQtとよりどりみどりだしな
345デフォルトの名無しさん:2010/03/14(日) 17:52:09
>>344
RubyもTkGtkQtFxWxとよりどりみどりなんですが

というか論点はそこじゃない
346デフォルトの名無しさん:2010/03/14(日) 18:53:37
バグだらけでつかえん
347デフォルトの名無しさん:2010/03/14(日) 19:59:30
Mark&SweepはGUIむきじゃないとおもうにゃり。
348デフォルトの名無しさん:2010/03/14(日) 20:03:27
チラ見だけど、C#もMark&Sweepなのかな。
ttp://msdn.microsoft.com/ja-jp/magazine/bb985010.aspx
349デフォルトの名無しさん:2010/03/14(日) 20:12:37
Rubyの技術的制約によってGUI環境が貧弱である。というのは偽
ただ誰もやらないだけ
350デフォルトの名無しさん:2010/03/14(日) 20:21:27
誰もやらないのは何すればいいか不確定だから?
351デフォルトの名無しさん:2010/03/14(日) 20:27:38
RubyでGUIって・・Win3.1の頃みたいな古臭い見た目が嫌だ
352デフォルトの名無しさん:2010/03/14(日) 20:30:10
見た目ってツールキット依存なんじゃないの?
353デフォルトの名無しさん:2010/03/14(日) 20:30:11
ちょっとアホすぎて何言ってるかわからない
354デフォルトの名無しさん:2010/03/14(日) 22:09:45
>>350
いやたとえばPerlでGUIアプリケーション作ってますとかいう人見ないだろ
テキスト系処理から出発したPerlはそういう衝動がそもそも低い
Rubyもそれは同じ
Lisp系列も同じだな
Pythonはむしろ例外だ
355デフォルトの名無しさん:2010/03/14(日) 22:21:54
たまにGUIアプリ作るけど、GUIアプリとして一から作るというよりは
他の人に使わせるときにCUIじゃ無理ってんでしょうがなくWindow
くっつけるくらいだな
普段はCUIで不便はないから、敢えてつける気にはならんわな

そもそもRubyでGUIはスレッドが(略
356デフォルトの名無しさん:2010/03/14(日) 22:24:02
HSPで
「入力してボタン押したらシェル経由で引数つきスクリプト実行する」
というようなのは作った
説明画像とかウィンドウ内に置けまくりで便利

ぶっちゃけ用途の本質的にはそれくらいだと思うの
357デフォルトの名無しさん:2010/03/14(日) 22:34:07
>>354
Common Lisp には CLIM っていうのがあるんですけお…
というのはさておき、 Scheme みたいに関数型寄りの方言だと確かに GUI は書きにくい
OCaml とか Haskell といっしょに Functional Reactive Programming 方面に行くんだろうか
358デフォルトの名無しさん:2010/03/14(日) 22:39:02
いちいちソフト使うのにキーボード操作なんてめんどくせーわ
359デフォルトの名無しさん:2010/03/14(日) 22:40:44
>>357
いや、あるかどうかを問題にはしてない
あるかどうかで言えば現代的な言語はたいてい(公式または有志の)GUIバインディングやら規格やらは存在する
問題は存在するかどうかではない
360デフォルトの名無しさん:2010/03/14(日) 23:11:16
○引数で複数のディレクトリパスを与える
○与えられたディレクトリに対して再帰的にファイルを全て削除する
○ただし.txt拡張子が付くファイルのみ削除しない

プログラミングに不慣れながらこんなスクリプトを書こうと思い、以下のようになりました。

#!/usr/bin/ruby
require 'fileutils'
ARGV.each do |i|
FileUtils.rm(Dir.glob(i + '**/*[^(txt)]'), :force => true)
end

突っ込みどころなどありましたら教えていただけないでしょうか。
簡単なテストをすると意図したように動くのですが少し不安なので質問させていただきました。
自分で怪しいと思ってる箇所は以下の2箇所です。
@ i + '**/*[^(txt)]' こんな指定の仕方でいいのだろうか
AそもそもFileUtilを使うべきなのか

宜しくお願いします。
361デフォルトの名無しさん:2010/03/14(日) 23:12:20
> 突っ込みどころなどありましたら教えていただけないでしょうか。
初心者スレ池
362デフォルトの名無しさん:2010/03/14(日) 23:14:10
Ruby/Tkのメンテナが
TclkitっていうTcl/Tkをひとかたまりにしてバイナリ配布しやすくしたやつを
Ruby/Tkから使えるようにする試みを始められたようです
最終目標はRuby/Tkアプリの単一バイナリ化など
特にWindowsでメリットが大きそうなんで、使えるようになってほしいです

PythonのWindowsインストーラーはTkinter込みなのでいいなぁ
Rubyには公式Windowsインストーラーすらないけど…
363357:2010/03/14(日) 23:16:34
>>359
ごめん、脊髄反射でレスしてた
にしても、Common Lisp に関しては Lisp machine のころのつながりで
UI 記述に力が入っててもよさそうなのに、確かにあまり見掛けないな
Emacs クローンを作ってる人はちょくちょく見掛けるんだが
GUI を作ってそうなのっていうと Smalltalk 方面とかかしらん
364360:2010/03/14(日) 23:17:29
すいませんスレ間違えました。
365デフォルトの名無しさん:2010/03/14(日) 23:19:16
>>362
何を言う
公式サイトにこっそり置いてある圧縮ファイルを展開して望ましい場所に置いて
環境変数を自力で設定してrbconfigを適切に書き換えればきちんと動くぞ
366デフォルトの名無しさん:2010/03/15(月) 01:15:25
むしろ「Rubyがサポートしてるどの環境でも動くと信じていいGUIツールキット」がないだけだわな。
機能的にはActiveScriptRubyでのHTAなんてなんでも出来るわけで。
367デフォルトの名無しさん:2010/03/15(月) 01:24:58
ウィンドウズで動けばいいだけならwin32api呼べばいいだけだしなあ。
そのへんはrubyの問題ではなくて、統一的なguiのapiが無いってだけ。
gui開発環境のvisualシリーズだって、ウィンドウズだけの世界なんだし。
逆に統一的なguiのapiがあればそれをrubyから呼べばいい。


javaのguiに乗りたければ、jrubyとかねえ。
rubyのご先祖のperlはgui出来る様に成ってるの?
368デフォルトの名無しさん:2010/03/15(月) 01:27:05
RubyからQtってどうなの?見た目はかなり奇麗なんだが
369デフォルトの名無しさん:2010/03/15(月) 02:33:45
何が必要なのかがはっきりと分かれば、動きようもあるんだけどな

たとえば俺はWxRubyが好きで、WxRubyを使う人がもっと増えればいいと思っているんだけど
今のWxRubyに一番足りない、「これがあればWxRubyを使う」というのは何だろう
370デフォルトの名無しさん:2010/03/15(月) 03:12:51
>>368
見た目に騙されるな
wx だろうが Qt だろうが
Ruby は Ruby だ
371デフォルトの名無しさん:2010/03/15(月) 04:49:54
>>362
素晴らしい試みだ!

Ruby/Tk使ってみようとしたときに
ActiveTclもインストールしなきゃいけないのはなんだかなーと思ってたです
自分が触りたいのはRubyなのに、なんで触りたくもないTcl入れなきゃいけないのかと
しかもTcl/Tk用の環境変数を設定したら
既にインストールしてあったPython+tkinterが正常動作しなくなって
Rubyを取るか、Pythonを取るか…ええい、もういいやRubyは捨てる!
Tk使おうとしただけで他の言語を殺しにかかるRubyなんざ使ってられるかクソ!
と一時期そんな結論を出してしまったことすらありましたです

Perl(ActivePerl)にしろ、Pythonにしろ、最初から一応標準でTkをサポートしてるのに比べると
Rubyは、一応標準として扱うGUIライブラリを決めておくことすらしてないあたりがダメ過ぎる
と思ってたのでそういう試みはとても素晴らしいと個人的には思います
372デフォルトの名無しさん:2010/03/15(月) 08:26:49
>>369
あんまりちゃんと評価してないんだけど、wxは日本語のon the spot入力できなくない?
あと、Linux環境でシンボルが見つからないだかで動かなかった。
ディストリのパッケージの問題かもしれないけど。
だからgtk使ってるんだけど、機能的には十分なのにLinux以外のサポートがね。
373デフォルトの名無しさん:2010/03/15(月) 09:16:16
>>371
> 標準として扱うGUIライブラリを決めておくことすらしてない
だからTk
Rubyが添付ライブラリとして提供してるのはTkだけ
374デフォルトの名無しさん:2010/03/15(月) 10:27:28
>>369
Wxに限らずだけど必要なものは
・今Rubyがサポートしている環境でおおむね動くこと
・ウィジェットが十分にある事
・品質
かな。

3つとも並立させるのは主にリソースの問題で難しいけどね。
JavaでIBMがリソース投入して作ってたSWTですら環境によっては品質的に問題があった/あるから。

で、今はRubyアプリはHTTP喋れるようにしておいてGUIの実現はブラウザに丸投げしてるってのが実情というか、
まあ選択肢がないからみんなそうするわな。
375デフォルトの名無しさん:2010/03/15(月) 10:53:56
WEBrickベースのGUIライブラリとかあってもいいような気がするお
376デフォルトの名無しさん:2010/03/15(月) 11:10:37
それはじゃヴぁすくりぷとのjsを添付しろと
377デフォルトの名無しさん:2010/03/15(月) 11:19:13
shoesとかもったいなかったよなあ
378デフォルトの名無しさん:2010/03/15(月) 11:36:49
・今Rubyがサポートしている環境でおおむね動くこと

ttp://redmine.ruby-lang.org/wiki/1/SupportedPlatformsJa
でいうところのSupportedとBest effortを対象と考えると

[Supported]
Debian GNU/Linux 4.0 on IA32

[Best effort]
mswin32, mswin64, mingw32
Mac OS X (Intel)
FreeBSD 6 and later (amd64, IA32)
OpenSolaris

で動く必要があると。

この複数環境の中で
・ウィジェットが十分にある事
を実現する場合、
(1)環境側のウィジェットの利用は最小限にとどめて、環境非依存のレイヤーを作り、
 レイヤー上でウィジェットを作り込む
→JavaでいうSwingのアプローチ
(2)各環境ごとのウィジェットを頑張って移植する。環境Aにあって環境Bにないようなウィジェットは
 自力で作り込む
→JavaでいうSWTのアプローチ
のどっちかになると。
それぞれのアプローチの利点欠点は
「Swing SWT 比較」とかでググれば出て来るけれども、
まあどっちも大変だと。

まあ、今の時代で考えればSwing方式の方がまだマシかなあ。
379デフォルトの名無しさん:2010/03/15(月) 11:51:18
ライブラリの日本語解説書いたらテキストだけで70KBになった絶望した誰もこんなん読まねえよ

>>376
prototype.jsべったりのサーバーサイドRubyスクリプトとかちょっと楽しそうだと思う

Railsか
Railsだね
Railsだな
380デフォルトの名無しさん:2010/03/15(月) 11:54:12
それはむしろ、サーバサイドはXMLなりJSONなりをひたすら吐き続けるものになるのではないか


…HTMLとJavaScriptとCSSの混合体を吐き続けるよりは楽しいか。うん。
381デフォルトの名無しさん:2010/03/15(月) 12:01:05
>>368
快適だよ。
(ある程度大きなアプリでどうなるかは知らない)
382デフォルトの名無しさん:2010/03/15(月) 12:25:05
JSエンジンに加えてRubyも組み込んだBROWSERとか登場しないのかな
RubyとDOMの相性はBATSUGUNだと思うんだが
383デフォルトの名無しさん:2010/03/15(月) 12:29:07
>>379
その解説はもう公開してるのかい
まだならぜひ公開してくれ
384デフォルトの名無しさん:2010/03/15(月) 12:34:41
>>382
ActiveScriptRuby。先に出てるHTAの話とかもそれだね。
で、DOMのAPIをRuby用に再構築しないと使い易くならないってのがそこから得た知見
385デフォルトの名無しさん:2010/03/15(月) 12:43:00
GUIライブラリの解説だと限ったもんでもあんめえ
なんか誰も使ってない外国さんのライブラリかもしれん
386デフォルトの名無しさん:2010/03/15(月) 13:19:35
GUIライブラリの解説って欲しい?
というか解説があってどうにかなるようなもん?
387デフォルトの名無しさん:2010/03/15(月) 13:43:11
vimでプログラミングをしているんだけど、
予約語のハイライトをしてくれないんだけど

~/.vimrc
syntax on
set number
filetype on
filetype indent on
filetype plugin on

:wq!をすると、ちゃんと予約語の色が付くんだけどな〜
388デフォルトの名無しさん:2010/03/15(月) 14:24:36
>>386
すごく欲しい。ノドから手が出るほど欲しい
特に普通のライブラリと比べて、規模が大きいGUIライブラリの場合は
解説記事がなければ習得までに相当な時間がかかる

そもそも、解説はおろか日本語のリファレンスもなかったりするしな
文書類は初心者から上級者まですべての人が欲しがってるはず
389デフォルトの名無しさん:2010/03/15(月) 14:42:01
マクは除外したほうが面倒が無くていいよ。
javaでもマクだけは挙動が違うし。サン純正jvmじゃ無いってのも有るのだろうけど。

xlibとwin32api程度で十分。
390デフォルトの名無しさん:2010/03/15(月) 15:12:43
ていうかRubyのライブラリの解説はいくらあってもいい
再生産上等
ただし要突っ込み耐性

現時点でGUIのなにかの初心者用の導入解説と中級者用の網羅的日本語マニュアルがあったら、
そいつがデファクトになると思う

重要なのは中級者(になれるため)用の網羅的マニュアルな
サンプルコード以上の事をしたいという人を引き付けないといかん
現状はどれもサンプルコード実行したくらいで調べ物モチベが尽きて終わってるのが実情だ
詳細正確でなくていい、とにかく一通り遊べるように機能を紹介し切っていることが必要

MechanizeとNokogiriなんて機能的にはそれほどブレイクがあったわけでもないのに
route477とkitamomonga両者のとこに日本語解説があったという理由だけで第一選択肢になって
そのままWebスクレーパとHTMLパーサのスタンダードにのし上がったんだぞ(ただし日本限定)
391デフォルトの名無しさん:2010/03/15(月) 15:20:26
てことは英語読める外国ならRubyでGUIGUI言わせてるんだろうか
GUIGUI言わせるという表現自体が涙も出ないほど古いが
392デフォルトの名無しさん:2010/03/15(月) 15:37:42

 なにもわからない
    ↓
    ↓   ← 日本はここ
    ↓
 チュートリアルレベルではよくわからない
    ↓
    ↓
    ↓
 解説があってよくわかる
    ↓
    ↓   ← 英語圏はここ
    ↓
 別に無理にRubyでやらなくてもいいということが知見として得られた
393デフォルトの名無しさん:2010/03/15(月) 15:50:21
Rubyでやらなくてもいいが、Rubyでやってもいいので
Rubyで出来るようになることを否定すべきではない。
394デフォルトの名無しさん:2010/03/15(月) 15:50:40
>>392
そんなにドキュメントあったっけ?

ぶっちゃけ英語でもドキュメントさえあるなら
訳して出版メソッドが発動するから
そうそう日本語ドキュメントには不自由しなくなるんだけど。
395デフォルトの名無しさん:2010/03/15(月) 15:57:30
なんていうかこー

 ・ ウィンドウが作れると信じてる初学者
 ・ GUIだと便利だと信じてる初心者

へはきちんと説明して切って捨てて

 ・ GUIを用途によって必要としている中級者

向けに整備するのが間違いないと思う
396デフォルトの名無しさん:2010/03/15(月) 15:59:35
>>395
ツールキットの動作を熟知してる人は普通に使いこなせてるので、実質問題はないかと
Tcl/Tkを普段から使ってる人はRuby/Tkも普通に使えてるはず
397デフォルトの名無しさん:2010/03/15(月) 16:31:00
>>371
> しかもTcl/Tk用の環境変数を設定したら
ActiveTcl と ActiveScriptRuby さえインストールすれば
次の 1 と 2 により特別な設定無く Ruby/Tk 使えるよ

1. ActiveTcl はインストール時に Tcl\bin への PATH を通してくれる
2. Ruby/Tk は Win32API の LoadLibrary を使って
  PATH から Tcl や Tk を探してくれる
398デフォルトの名無しさん:2010/03/15(月) 18:29:29
1.8.4を最後にMingwバイナリが配布されなくなったので
それ以降自分でコンパイルするようになった
そのついでにTcl/Tkも自分でコンパイルして使ってる
両者ともConfigure & make で全自動コンパイルしてくれるので、たいした知識は要らなかった

RubyもTcl/Tkもディレクトリ構成が同じなので同じディレクトリに一緒に入れてる
bin/実行バイナリ
lib/各ライブラリ

ただRubyは実行ファイルの置いてあるディレクトリ名がbinじゃないと ../libをさがしにいってくれないので
../libの有無で分岐して欲しいところ
399デフォルトの名無しさん:2010/03/15(月) 20:06:45
Rubyベストプラクティス――プロフェッショナルによるコードとテクニック
http://www.oreilly.co.jp/books/9784873114453/
400デフォルトの名無しさん:2010/03/15(月) 20:12:29
>>399
やばいこのカニ本欲しい
401デフォルトの名無しさん:2010/03/15(月) 20:17:15
402デフォルトの名無しさん:2010/03/15(月) 20:21:55
あ、説明めんどくさくて結局自分用になったPPの解説ぽいのがある
403デフォルトの名無しさん:2010/03/15(月) 20:24:01
>>402
PrettyPrintは改行文字があっても文字数はカウントされるということがわかればあとは簡単
あと、最後に改行はつけない
404デフォルトの名無しさん:2010/03/15(月) 20:43:08
>>396
中級車の話をしてるのになんで高級車の話が出てくるんだよ!
405デフォルトの名無しさん:2010/03/15(月) 21:22:52
def self.hoge
@message = "ABCD"
end
@messageはクラスに属するインスタンス何ですか?
406デフォルトの名無しさん:2010/03/15(月) 21:29:04
ClassクラスのインスタンスであるHogeのインスタンス変数
Hoge.hoge したあと Hoge.instance_variables
407デフォルトの名無しさん:2010/03/15(月) 21:30:12
勝手にHogeクラスとか名前を仮定して書いてしまったが察して。

408デフォルトの名無しさん:2010/03/15(月) 21:32:01
>>405
Class.new されてつくられたオブジェクトのインスタンス変数です

irb> class C; def self.foo; @foo="foo!"; end; end
irb> p C.instance_variable_get(:@foo)
irb> C.foo
"foo!"
irb> p C.instance_variable_get(:@foo)
"foo!"
irb> p C.kind_of?(Class)
true

409デフォルトの名無しさん:2010/03/15(月) 21:33:56
>>405-408
次からは初心者スレでよろしく
410デフォルトの名無しさん:2010/03/15(月) 21:37:00
ここ初心者スレだろ
411デフォルトの名無しさん:2010/03/15(月) 21:38:41
たいして変わらんよな
412405:2010/03/15(月) 21:39:50
class Class
hoge = Hoge.new←これですね
end

わかりました、ありがとうございます
413デフォルトの名無しさん:2010/03/15(月) 21:51:22
初心者スレで名前が挙がってた
ねこび〜ん(NetBeansのマスコット)を検索してみたけど、いいなこのセンス
Rubyにもこういうマスコットがいればいいのに
414デフォルトの名無しさん:2010/03/15(月) 21:51:47
[ruby-dev:40643] で @mametter += 1
415デフォルトの名無しさん:2010/03/15(月) 22:14:53
Dukeってどう思う?俺はカッコいいと思ってる
416デフォルトの名無しさん:2010/03/15(月) 22:26:26
>>413
瑠美ちゃんを脳内で好きに作ったらいいと思う
というかRuby初期のコミッタは絶対やってる
417デフォルトの名無しさん:2010/03/15(月) 22:32:33
>>415
あれは無理だわ
418デフォルトの名無しさん:2010/03/16(火) 01:51:01
>>416
256倍シリーズであったような・・・たしかRacc本
419デフォルトの名無しさん:2010/03/16(火) 02:21:16
瑠美の3分クッキングね
てっきり実在の人物かと思ってたわwww
深谷せんせえってのは誰?
420デフォルトの名無しさん:2010/03/16(火) 03:24:46
マスコット導入すると女に持てなく成ると思うよ。男受けはいいだろうけどな。
rubyやってる男の人って(ry
421デフォルトの名無しさん:2010/03/16(火) 03:26:44
瑠美衣タンハアハア(AAry
422デフォルトの名無しさん:2010/03/16(火) 06:47:44
ここは赤色つながりということで炎髪灼眼のシャナたんとコラボをだな…
423デフォルトの名無しさん:2010/03/16(火) 06:51:48
>>420
るびま創刊時に赤松先生にお願いに言ってたら
今頃Rubyはアニオタの共通言語になってただろうな
そしてドラマにも登場したPythonはイケメンハッカーの以下略
424デフォルトの名無しさん:2010/03/16(火) 11:13:38
>>423
スクリプト言語は軟弱な感じがする。
だからイケメンハッカーはPythonじゃだめ。
425デフォルトの名無しさん:2010/03/16(火) 12:08:03
動物系のマスコットにすればいいんだよ
これで男女ともに惹きつけることができる

何の動物にするの? と言われると難しいが
426デフォルトの名無しさん:2010/03/16(火) 13:47:41
人外を萌え対象にしちゃう人って怖いなあ。
427デフォルトの名無しさん:2010/03/16(火) 13:56:24
>>426
じゃあ犬猫可愛がる人間は射殺で
428デフォルトの名無しさん:2010/03/16(火) 14:24:36
D言語のマスコットこそ究極にして至高
429デフォルトの名無しさん:2010/03/16(火) 14:36:40
あれ、マスコットだったんだ。
いたずら書きかと思ってた。
430デフォルトの名無しさん:2010/03/16(火) 15:21:26
あれがマスコットかよw
冗談も顔だけにしろw
見てると笑いがこみ上げてくる
やっぱDukeのほうが格好いいな
431デフォルトの名無しさん:2010/03/16(火) 17:22:52
1.9.2はまだですか?
432デフォルトの名無しさん:2010/03/16(火) 17:32:33
>>425
ルビーでしょ?だったらカーバンクルっしょ

とさっきASR落としたばかりの人間が言ってみる
433デフォルトの名無しさん:2010/03/16(火) 17:42:15
もうmatzたんでいいよ。
434デフォルトの名無しさん:2010/03/16(火) 17:50:56
connect(angle, SIGNAL('valueChanged(int)'), cannonField, SLOT('setAngle(int)'))
なんで、rubyなのにこんなこと出きるんだよ〜
435デフォルトの名無しさん:2010/03/16(火) 17:54:36
>>431
ちょうど昨日1.9.2のロードマップが出たよ。

436デフォルトの名無しさん:2010/03/16(火) 19:15:22
JKのコスプレしたmatzたん人形とか(ry
437デフォルトの名無しさん:2010/03/16(火) 19:16:37
MatzはPythonの回し者だからだめだ
438デフォルトの名無しさん:2010/03/16(火) 19:28:16
>>435
ありがとうございます

ぐぐって確認しましたが正式なものというより、強い提案という感じですか?
3末の仕様フリーズというのは驚きました
昨年末くらいがリリース予定だったように思うので
preview1までは順調だったように思ったのですが、ちょっと欲張っちゃったんですかね
439デフォルトの名無しさん:2010/03/16(火) 19:28:50
>>432
その手があったか
440デフォルトの名無しさん:2010/03/16(火) 19:31:18
ピッケル日本語初版みたいにウサギでよかったんだよ
目まっかだし
441デフォルトの名無しさん:2010/03/16(火) 20:29:42
もうRuby自体がマスコットだろ
442デフォルトの名無しさん:2010/03/16(火) 20:39:49
>>440
目が赤いのは可愛くないのでちょっと
声が齋藤彩夏だったら考える
ttp://www.tv-osaka.co.jp/jewelpet/chara/images/rubi_01.gif
443デフォルトの名無しさん:2010/03/16(火) 20:46:09
ああそっか、ルビーにすればいいのか
名前いっしょだし宝石が元ネタだしそのまんまだな
444デフォルトの名無しさん:2010/03/16(火) 20:47:55
でそのうち宝石を擬人化しはじめるんだろう
窓も擬人化されていることだし
445デフォルトの名無しさん:2010/03/16(火) 20:49:04
ウサギの目が赤いと思ってるのは日本人だけって聞いたことがある。

それはさておき、RMagickって、ruby1.9 win32で使える?
446デフォルトの名無しさん:2010/03/16(火) 20:49:47
>>443
いや一応カーバンクルもルビーで元ネタ一緒なので
447デフォルトの名無しさん:2010/03/16(火) 20:50:32
>>445
な、なんだってー

で、ここまで宍戸留美なし
448デフォルトの名無しさん:2010/03/16(火) 21:01:14
>>445
目が赤くて体が白いウサギは江戸時代からいるジャパニーズホワイト(カイウサギのアルピノ)くらいだから
学校でよく飼われてるアレな
日本白色種以外はいわゆるピーターラビットみたいな褐色の毛並みが普通なので、
外国の人向けに赤目白ウサギのピクトグラムを描くと不思議な顔をされる
449デフォルトの名無しさん:2010/03/16(火) 21:03:08
擬人化Opera(おぺらたん)に惚れてOperaを使い始めた俺としては
Rubyが擬人化されるのなら素敵だと思う

でもガチガチ硬派のプログラマにとってはどうなんだろう……
450デフォルトの名無しさん:2010/03/16(火) 21:08:56
というかRubyも擬人化されてた気がする
いまはインターネッツの闇に紛れてしまっているかもしれない
451デフォルトの名無しさん:2010/03/16(火) 21:09:37
>>449
AutoCADのイメージキャラクターが秀逸だったとして、じゃあAutoCAD使おうかとなるか?
452デフォルトの名無しさん:2010/03/16(火) 21:12:33
>>451
それはガチガチ硬派のプログラム
453デフォルトの名無しさん:2010/03/16(火) 21:13:45
ガチムチ硬派なプログラマーに見えた
454デフォルトの名無しさん:2010/03/16(火) 21:18:50
動物だとハチドリとかヒツジとかハトが古の ruby-list で挙がっていたような
455デフォルトの名無しさん:2010/03/16(火) 21:41:44
>>453
特定しますた
456デフォルトの名無しさん:2010/03/16(火) 22:28:51
宝石商してた高田純二あたりが適任じゃね?
Rubyの文法の雰囲気にもあってる気がする。
457デフォルトの名無しさん:2010/03/16(火) 23:00:05
>>456
右上あたりに高田純二のシルエットが載ってる
プログラミング言語の公式サイト……クールすぎるw
458デフォルトの名無しさん:2010/03/16(火) 23:04:44
話は変わるけどさ、Rubyはこの先生きのこるには教育機関に売り込めば良いと思うんだ。
459デフォルトの名無しさん:2010/03/16(火) 23:37:46
刑務所でRUBY採用されてると言うのはどこかで見た
460デフォルトの名無しさん:2010/03/16(火) 23:47:18
またそうやってロンダリングする
461デフォルトの名無しさん:2010/03/17(水) 00:28:51
>>438
Yuguiさんが承認して、正式なプランも流れてる
462デフォルトの名無しさん:2010/03/17(水) 00:44:10
どっちかってと1.9.1のパッチレベルが上がることのほうが重要なふいんき
1.9.2を「待って」いる人なんてそんなにいるもんかね
463デフォルトの名無しさん:2010/03/17(水) 00:45:33
東大のどっかで教えてなかったっけ?
あとどこぞの高校だとか。MLで見たような気がする
464デフォルトの名無しさん:2010/03/17(水) 00:47:23
>>460
結局アレはアレだったな
465デフォルトの名無しさん:2010/03/17(水) 00:48:12
1.9になってから開発版と安定版のナンバリングがかわったんだよね?
末尾偶数が開発版で奇数が安定版になったんだっけ
466デフォルトの名無しさん:2010/03/17(水) 00:51:44
>>465
いや全部安定版です
467デフォルトの名無しさん:2010/03/17(水) 00:53:06
あー、結局何が確定なんだったか
文書化されたものがないんだよな
468デフォルトの名無しさん:2010/03/17(水) 01:00:03
マニュアルの RUBY_VERSION には
1.9においては3つめの数字(TENNY)が0なものが開発版になる予定ときちんと書いてあるぞ

…いまだに予定かよ
この期に及んで確定じゃねえのかよ

るびま(RubyistMagazineの略)には一応記述がある
ttp://jp.rubyist.net/magazine/?0025-FirstStepRuby191
> Ruby 1.8 までは、2 番目の数字が偶数なら安定版、奇数なら開発版だった。
> Ruby 2.0 は、いつか手に入る理想の Ruby としてバージョン番号を出し惜しんでいるので、
> Ruby 1.9 については、1.9.0 が開発版、1.9.1 以降は安定版という位置付けになる。
469デフォルトの名無しさん:2010/03/17(水) 01:02:00
本スレで>>465の認識なことに強い危機感を感じる
470デフォルトの名無しさん:2010/03/17(水) 01:27:16
>>462
Rails3.0は1.8.7と1.9.2をサポートの予定だったような
一番割合が大きいところかもしれないぞ
471デフォルトの名無しさん:2010/03/17(水) 01:29:29
あれは「あっちょっと待ってあのあれだそうそう1.9.2、あれが出たら考えるからうん」というのにしか見えない
472デフォルトの名無しさん:2010/03/17(水) 03:44:59
安定版て言われてもライブラリとか整ってないみたいだし。
現状開発版みたいなもんじゃない?
473デフォルトの名無しさん:2010/03/17(水) 06:34:48
受刑者からRubyよりJavaの方がいいって
クレームがついたとか
474デフォルトの名無しさん:2010/03/17(水) 08:15:27
じゃあ、JRubyをやりましょうか(笑)
475デフォルトの名無しさん:2010/03/17(水) 08:51:52
>>472
ライブラリは整っている
1.9.1公開から1年以上経ってる今でも対応しない外部ライブラリがあるのだとしたら
それはその作者が対応する気ないだけ
476デフォルトの名無しさん:2010/03/17(水) 08:55:20
プリズニーズは企画した香具師がとんずらしたんじゃなかったっけ?
477デフォルトの名無しさん:2010/03/17(水) 09:03:18
>>476
そう
いわゆる逃走系ベンチャー
478デフォルトの名無しさん:2010/03/17(水) 11:41:29
未だに1.9に対応していないライブラリは
これから対応すると宣言しているものでない限り
今後メンテナンスされず廃れていくライブラリなので
1.8でもなるべく使わない方がいい
479デフォルトの名無しさん:2010/03/17(水) 11:44:21
mingw32をWindowsとみなさないようなライブラリも同じだね
1.6時代のスクリプトと同じような感じになるのだろう
480デフォルトの名無しさん:2010/03/17(水) 12:33:01
Apache CommonsみたいなRuby Commonsみたいなのほしいな、みたいな。
481デフォルトの名無しさん:2010/03/17(水) 14:47:08
>>475
mswin32に関しては、バイナリが公開が1.8.7で止まっている外部ライブラリが多い気がするよ。
482デフォルトの名無しさん:2010/03/17(水) 14:52:26
1.9.2のロードマップ見つからないんだけど、どこにあるの?
483デフォルトの名無しさん:2010/03/17(水) 15:56:34
>>482
ML
484デフォルトの名無しさん:2010/03/17(水) 17:43:38
PHP6開発 UTF-16化を断念、5.3へロールバック
ttp://journal.mycom.co.jp/news/2010/03/17/053/index.html
485デフォルトの名無しさん:2010/03/17(水) 17:53:54
>>256
Addressableはなんか1.9だと遅いとか聞いたけど
486デフォルトの名無しさん:2010/03/17(水) 18:08:32
>>485
マシン買い換えろ
487デフォルトの名無しさん:2010/03/17(水) 21:19:51
乗り遅れたが、Xtal (ttp://code.google.com/p/xtal-language/) の作者が
自分でマスコット描いてた。
ttp://twitpaint.com/6dpli5
かわいい。
488デフォルトの名無しさん:2010/03/17(水) 21:32:25
あざとい
489デフォルトの名無しさん:2010/03/17(水) 21:35:07
マスコットとか高田純次とか
そういうのは10レスくらいにしてほしいのだが
490デフォルトの名無しさん:2010/03/17(水) 21:43:20
>>485
$ time ruby19 -e "require 'addressable/uri'; Addressable::URI.parse('http://ruby-lang.org/')"
real 0m0.421s
491デフォルトの名無しさん:2010/03/17(水) 21:45:39
>>490
さすがにそれは起動時間に埋没してしまうのではないか?
492デフォルトの名無しさん:2010/03/17(水) 21:49:32
>>490
それはそもそも実行環境が速過ぎて話に参加できないレベル
gem update の展開とか一瞬で終わるだろ
493デフォルトの名無しさん:2010/03/17(水) 21:52:03
>>492
いや一瞬で終わるだろ
何もアップデートがなければ gem update は2秒くらいで終わる
494デフォルトの名無しさん:2010/03/18(木) 09:49:12
irb19> Benchmark.bm{|b| b.report{require 'addressable/uri'}}
   user   system    total    real
 7.291000  0.050000  7.341000 ( 7.570887)

早くはないな
まあ、標準の URI に比べれば絶望的に遅い
このまま標準添付になったら Ruby が衰退するレベル

irb19> Benchmark.bm{|b| b.report{require 'uri'}}
   user   system    total    real
 0.160000  0.250000  0.410000 ( 0.590849)
495デフォルトの名無しさん:2010/03/18(木) 10:23:10
rubyの初心者。watirつかってるんだけど
ie = Watir::IE.new
ie.goto(url)で無限ループになる現象発生。
もちろん、不定期に(2日に一回ぐらい?)
なるので始末がわるい。
そこで自動的にタイムアウトで例外に飛ばす
仕組みてない?rubyで。
496デフォルトの名無しさん:2010/03/18(木) 10:30:54
require 'timeout' ではダメなの?

497デフォルトの名無しさん:2010/03/18(木) 10:35:27
無限ループだと判断した理由がむしろ知りたい
498デフォルトの名無しさん:2010/03/18(木) 10:55:19
70パーセントくらいの割合でサーバーのタイムアウト待ってるだけだと思うが…

Watir には Watir::Waiter という字面紛らわしい機能がある(つまりウェイター)
引数秒内にブロック内部が真を返さなければ例外 Watir::Exception::TimeOutException を出す
ie.goto(url) は成功すればアクセスにかかった秒を返すから、Watir::Waiter(10){ ie.goto(url) } とかしとけ

irb> Watir::Waiter.wait_until(3){puts "hello"}
hello
hello
hello
hello
hello
hello
hello
Watir::Exception::TimeOutException: Timed out after 3.00432 seconds.

irb> Watir::Waiter.wait_until(3){sleep(1); "yes!"}
=> nil
499デフォルトの名無しさん:2010/03/18(木) 11:25:58
Ruby Best Practices - Full Book Now Available For Free!
ttp://blog.rubybestpractices.com/posts/gregory/022-rbp-now-open.html
なん…だと…

付録まで全部ある模様
日本語版書籍は>>399で25日発売
500デフォルトの名無しさん:2010/03/18(木) 11:33:14
なんだ、仲悪いのか?
…いや、日本語版買った直後に原文公開されたほうが微妙な気持ちになるな

翻訳具合はどんなもんなのかね
日本特有部分の突っ込みとかあるのか
501デフォルトの名無しさん:2010/03/18(木) 11:37:03
>>499
すでに>>203が紹介してくれてる

ちなみに書籍の電子版を無料公開すると紙版の売上が一時的に増加するらしい
ttp://wiredvision.jp/news/201003/2010031122.html
ttp://quod.lib.umich.edu/cgi/t/text/text-idx?c=jep;view=text;rgn=main;idno=3336451.0013.101

電子書籍には未だに慣れないな。
どうしても印刷してしまうから紙版買った方が手間暇紙墨トータルで安い。
kindle を触ってみれば変わるのだろうか。
502デフォルトの名無しさん:2010/03/18(木) 11:43:12
>>501
全章公開というニュースだと思う(丸々1つのPDFがある)
本質的にはもう買う必要がない

…英語だとやっぱ読みにくいけどな

ディスプレイで技術文書読むのが辛いのはなんなんだろう
PDF表示で英語でディスプレイという三重苦
503デフォルトの名無しさん:2010/03/18(木) 11:47:42
>>502
バックライト光ってるのがまずいんだそうだ
だからiPadよりもKindleのほうが目視性はよい
504デフォルトの名無しさん:2010/03/18(木) 11:51:57
あどべりーだーのデフォルト背景色が白なのは殺人的
環境設定から背景色変えとくべき
505デフォルトの名無しさん:2010/03/18(木) 11:57:06
>>無限ループだと判断した理由がむしろ知りたい
前後にコンソールでメッセージ出力。
調子のいいときは3日ほどなにもないのだが。
前のメッセージをだして後のメッセージが出力できないので。
ie.goto(url)で止まる。
496,497,495様のレスを参考にします。
どうもです
506デフォルトの名無しさん:2010/03/18(木) 12:07:10
日本語版読んだあと英語版を読むようにしてる。
興味ある本で内容も頭に入ってる状態だと結構サクサク読める。
いきなり英語版はちょっとキツイけど。

いつか英語版だけで
507デフォルトの名無しさん:2010/03/18(木) 12:13:04
何のために英語版読むんだよ
508デフォルトの名無しさん:2010/03/18(木) 12:34:33
最終的にはいきなり英語版を読めるようになりたいってことだろう
509デフォルトの名無しさん:2010/03/18(木) 12:36:51
教科書準拠の英語参考書(教科書の訳文つき)を事前に読んでおいたうえで
授業で当たってその場で英訳するとかそんな感じと予測
510506:2010/03/18(木) 13:00:17
書きかけで投稿してしまったすまん
最終的に英語のリソースを直接解釈できると有益だと思って勉強中です
翻訳を待ってる間に情報が古くなってしまったりするので
511デフォルトの名無しさん:2010/03/18(木) 13:23:03
説明が英語かどうかは別にいいけど、
向こうの資料はソースの変数名やメソッド名の付け方が参考になるな
ささいなことだが結構迷うから
512デフォルトの名無しさん:2010/03/18(木) 13:32:06
hogeじゃなくてblah使おうねみたいな何か

名前付け方参考書みたいなのが出れば5000円でも買う
参考にしてたソースが外国では少数派の書き方だったとか泣く
513デフォルトの名無しさん:2010/03/18(木) 15:13:40
>>494
本当に遅かったらそのように報告があるはず
ないんだったらその人の環境依存
OSの再インストールなり新PCの購入なりを勧める
514デフォルトの名無しさん:2010/03/18(木) 15:26:58
いや結構マジな話だけど、最低限の実行環境ってあるだろ
それの記述すらないって正直どうよ
Core2とメモリ1Gとか、目安くらい書いたほうがいいと思う
515デフォルトの名無しさん:2010/03/18(木) 15:33:01
>>514
ビルドはメモリが512MBくらい必要だけれど、実行は MMX Pentium レベルでも行ける気がする
で、そんな環境は本当にそうか試すのは結構手間なので
516デフォルトの名無しさん:2010/03/18(木) 15:36:15
条件式がfalseの時に、スクリプトを強制的に終了させたいんだけど
何かいい方法ない?
「if false then; exit(1);end」は却下
517デフォルトの名無しさん:2010/03/18(木) 15:38:53
>>516
隠蔽してでもどこかで条件分岐してexit(1)する必要がある
条件分岐をしてはいけないのならできない
518デフォルトの名無しさん:2010/03/18(木) 15:44:06
exit unless <条件式>

でいいんじゃないかい
519デフォルトの名無しさん:2010/03/18(木) 15:45:32
てか「条件式がfalseのときに」とう前提条件を実現する時点で

if (式) then     end

が(あるいは類似の判断構造が)必要だと思うんだが、
exit(1) と書くと呪われるとかそういう難儀な家系だとかそういうの
520デフォルトの名無しさん:2010/03/18(木) 15:48:08
>>516
def assert(c, msg)
c or raise SystemExit.new(1, msg)
end

assert(false, "foo")
とかは? あとは $DEBUG の値によって定義を変えたりとかお好きなように。
521デフォルトの名無しさん:2010/03/18(木) 15:50:05
毎回 if ... end と書くのが面倒だとかいう意味にエスパーしてみるとか
522デフォルトの名無しさん:2010/03/18(木) 15:53:47
なんかどう見ても「Rubyのコアな操作」というよりは単に「Rubyがわかってない」だけのような
523デフォルトの名無しさん:2010/03/18(木) 15:56:15
>「if false then; exit(1);end」は却下
の理由が分からないからどうしようもない
524デフォルトの名無しさん:2010/03/18(木) 16:00:45
exit がいやなら raise 使うとか
if ... end がいやなら unless 修飾子使うとか

raise "強制終了" unless <condition>
でいいんじゃないの?
525デフォルトの名無しさん:2010/03/18(木) 16:01:26
unless を知らないだけだと思う。
526デフォルトの名無しさん:2010/03/18(木) 16:38:52
ttp://pc12.2ch.net/test/read.cgi/tech/1267668057/769
で列挙型が欲しいというのがあったんだけど、そういや列挙型がないのはなんで
527デフォルトの名無しさん:2010/03/18(木) 16:44:44
Rubyとしては必要ないから

外部から列挙型がやって来るとかそういうときだけだろ、いるの
528デフォルトの名無しさん:2010/03/18(木) 16:46:43
列挙型ってシンボルとかでできること以下の表現能力しかないんじゃない
529デフォルトの名無しさん:2010/03/18(木) 17:01:33
Symbol を使えばだいたい足りるからじゃね。
KEYS = [:foo, :bar, :baz]
...
KEYS.include?(key)
とかすれば妥当な値が渡ってきたかもチェックできるし
C みたいに数値にマップしたければ、
配列じゃなくてHash にして対応を管理すればいい。
静的に型検査ができる場合だとエラーを検出しやすくなるんだろうけど Ruby では無理。
R6RS Scheme だと、標準ライブラリの機能を使って
(define-enmumeration color (red green blue) color-set)
(color red) ;; => red
(color ree) ;; => エラー
みたいにしてコンパイル時に書き間違いを検出してくれる列挙型を定義できるけど。
530デフォルトの名無しさん:2010/03/18(木) 17:29:00
531デフォルトの名無しさん:2010/03/18(木) 17:33:02
>>530
マルチ爆発しろ
532デフォルトの名無しさん:2010/03/18(木) 18:14:08
そういえばgtkのTreeViewを使うときに、インデックスを指定する必要があって
列挙型が欲しいなぁとちょっと思ったことはあった。
でも、できれば拡張ライブラリ側でインデックスを隠蔽する方が望ましいんだろうなぁ。
列挙型って、本で読んだことしかないけど
モジュール内の定数で代用できないの?
534デフォルトの名無しさん:2010/03/18(木) 19:10:55
単なる数値だから代用できます。
連番振るのを、ちょっと面倒に思っただけです。
535デフォルトの名無しさん:2010/03/18(木) 19:51:47
本当に連番それぞれに名前を付けたいのか、それがお前のやりたいことなのか、
と小一時間問い詰めたい。

名前に別々の値が付いていてほしいだけならSymbolで十分だし、
連番じゃないといけないものに個別の名前を付けたいというのも不自然だし。
強いて例を考えると、527の言うように外部から来るときくらいだよなあ。
536デフォルトの名無しさん:2010/03/18(木) 20:06:45
外部から来るときって何?
537デフォルトの名無しさん:2010/03/18(木) 20:13:53
    うーす
[列挙型] ノシ
538デフォルトの名無しさん:2010/03/18(木) 20:14:03
C 風に連番をつけたいんなら
enum :a, [:b, 5], :c
とかすると a, b, c というメソッドが定義されるような enum メソッドを定義するとかかなあ
C のライブラリとのインタフェースで欲しい場合は
C のヘッダファイルをパースしてごにょごにょするのが理想かな
539デフォルトの名無しさん:2010/03/18(木) 20:16:44
dl使うときじゃない? < 外部から来るとき
540デフォルトの名無しさん:2010/03/18(木) 20:23:40
なおかつ、Rubyに慣れてないときだな
541デフォルトの名無しさん:2010/03/18(木) 20:26:47
インクリメント演算子みたいなもんだな
542デフォルトの名無しさん:2010/03/18(木) 21:28:15
連番が必要なわけじゃないが Hash で値を管理するのが面倒臭いっていう時はあったな。
シンボル間に順序が定義出来さえすればそれでいいんだとかで。

結局

Priority = [:foo, :bar, :baz]
symbols.sort_by {|sym| Priority.index(sym)}.each {...}

みたいなコードでごまかした。
543デフォルトの名無しさん:2010/03/18(木) 21:32:16
ごまかすも何もRubyでは正当なコードだと思う
544デフォルトの名無しさん:2010/03/18(木) 21:57:00
わかいときからごまかすことを覚えないほうがいい
545デフォルトの名無しさん:2010/03/18(木) 22:02:10
ロギングライブラリでログレベルをシンボルで表すとかね。
546デフォルトの名無しさん:2010/03/18(木) 22:12:41
個人的には、列挙型のようなことをSymbolでやるのはまずいと思う
スペルミスがあったときや、後で仕様変更があったときにカオスなことになる

柔軟さが売りのRubyでそんなことを言っても……という感じではあるが
547デフォルトの名無しさん:2010/03/19(金) 02:35:26
Rubyの不幸は利用者がカオス
548デフォルトの名無しさん:2010/03/19(金) 04:06:47
Hash#compactが無いのはなんで?
hash.reject{|k,v|v.nil?}と同等品で。
549デフォルトの名無しさん:2010/03/19(金) 07:10:23
産まれたときからruby弄ってましたってのは、まだ皆無だしな。
大抵他所の言語からの乗り換えだから、元の言語の癖が出て来るし。

東京が田舎者ばっかでカオスなのと同じ。

と{-}とbegin-endの混在で嵌った漏れ。orz
550デフォルトの名無しさん:2010/03/19(金) 09:19:46
>>542
Hashの値追加時に symbols.size を一緒にいれておく
ってのを俺は良くやるな
551デフォルトの名無しさん:2010/03/19(金) 10:19:12
{-} は do-end であって begin-end とは別の物
552デフォルトの名無しさん:2010/03/19(金) 10:27:33
>>551
同じものだったら混在ではまらないだろ
よく考えろ
553デフォルトの名無しさん:2010/03/19(金) 12:30:03
UNIXServer のバックログを変えようと listen(1) みたいにやっているんだけど、
実際の挙動は変化してない。どうすればいいでしょうか?

UNIXServer.open(path){ |s|
  s.listen(1)
   :
}

ruby 1.8.5 です。
554デフォルトの名無しさん:2010/03/19(金) 15:17:52
syslogで十分じゃね。
555デフォルトの名無しさん:2010/03/19(金) 15:39:46
>>554
? 何の話 ?
556554じゃないよ:2010/03/19(金) 15:52:26
>>555
syslogってのはUnix系のツール
システムのログを/varあたりに、書き込んでくれるデーモン
557デフォルトの名無しさん:2010/03/19(金) 15:59:33
いや、それは分かってるんだけど。
listen(2)のバックログとは関係ないでしょう。
558デフォルトの名無しさん:2010/03/19(金) 17:16:15
いまだに不安定版の1.8.5使ってるのってどこだろう
listen再設定不可な環境とかじゃないよね
559デフォルトの名無しさん:2010/03/19(金) 17:35:30
たしか、またクラック騒ぎを起こしたxreaが1.8.5
560デフォルトの名無しさん:2010/03/19(金) 21:07:04
553 です。バージョン書き込んでから気づきました。
ごしてきありがとうございます。 
1.8.7 にしてとりあえず出直してきます・・・・・・
561デフォルトの名無しさん:2010/03/19(金) 22:19:00
うえ、Ruby 1.9.2 は $LOAD_PATH にカレントディレクトリが含まれないのか
562デフォルトの名無しさん:2010/03/19(金) 22:27:42
553=560です。 1.8.7 で試しました。

UNIXServer.open('/tmp/test'){ |s|
  sock = s.accept
  sleep 30
  sock.close
}

30秒間にクライアントをぼこぼこ立ち上げたら
デフォルトにすると初めの1個がCONECTED、次の6個が CONNECTING 状態、以降は connect の待ち
s.listen(1) にすると初めの1個がCONNECTED、次の2個がCONNECTING、以降 connect 待ち
s.listen(0) にすると初めの1個がCONNECTED、次の1個がCONNECTING、以降 connect 待ち

バックログ 0 にしても connection refused にならないんですね・・・・
listen(1) によって、最初に connect したクライアント以外は refused になることを期待してたのですが・・・
563デフォルトの名無しさん:2010/03/20(土) 00:47:47
>>505
>>>無限ループだと判断した理由がむしろ知りたい
>前後にコンソールでメッセージ出力。
>調子のいいときは3日ほどなにもないのだが。
>前のメッセージをだして後のメッセージが出力できないので。
>ie.goto(url)で止まる。
Rubyというよりは内部で呼ばれてるCOMの問題だろうなあ
Watirに限らずWin32OLEでのExcel操作でも類似の事象は発生するはず
564デフォルトの名無しさん:2010/03/20(土) 00:56:03
>>550
や、順序ってそういうことでなく。

例えば「終了条件を満たした時に各人にどんな基準で勝利したかと思うかを申告させる。
一番優先度の高い勝利基準を満たした人が真の勝利者」なんていうのを考えた時に、
バランスの調整上ちょくちょく優先順位を入れ替えたくなるから具体的な値はシンボルが
何番目に登録されたかだけで決まるようにしておくのが楽そうに思えた、と。

irb(main):001:0> def priority_table
irb(main):002:1> count = 0
irb(main):003:1> Hash.new {|h, k| h[k] = count; count += 1}
irb(main):004:1> end
=> nil
irb(main):005:0> t = priority_table
=> {}
irb(main):006:0> t[:a]
=> 1
irb(main):007:0> t[:b]
=> 2
irb(main):008:0> t[:c]
=> 3
irb(main):009:0> t
=> {:c=>2, :a=>0, :b=>1}

こんなんでもいいかしらんが。
565デフォルトの名無しさん:2010/03/20(土) 01:12:53
ゴルファーはここにいらっしゃる?
566デフォルトの名無しさん:2010/03/20(土) 02:34:42
ワイは猿や!
567デフォルトの名無しさん:2010/03/20(土) 06:03:33
うーんなんつーかタケルンバがPHP始めるからもうruby苦しいわ
これ以上普及しない
役割は終わった
568デフォルトの名無しさん:2010/03/20(土) 06:31:38
>>565
いないことはないんじゃね
Rubyは割とゴルフ向きの言語らしいし
569デフォルトの名無しさん:2010/03/20(土) 06:54:36
おはようございます
ゴルファーがいらっしゃるかもしれないということで

ランダムな大小英数16文字を手短かに生じさせたいのですが
この長さで躓いております。アドバイス頂きたく候。
Rubyは1.9.1です

(0..15).map{[*48..57,*65..90,*97..122][rand 62].chr}*''
570569:2010/03/20(土) 07:05:14
自己レスですみません。
今chrが必要ないことに気づいて少し短くなりました。

(0..15).map{[*?a..?z,*?A..?Z,*0..9][rand 62]}*''
571デフォルトの名無しさん:2010/03/20(土) 10:52:50
ついったーで教わってきたバージョン
[*?a..?z,*?A..?Z,*0..9].sample(16)*''
572デフォルトの名無しさん:2010/03/20(土) 10:59:10
うおきめえ
573デフォルトの名無しさん:2010/03/20(土) 11:04:04
1.9って短くできていいよね
574デフォルトの名無しさん:2010/03/20(土) 11:16:34
>>553
{TCP,UNIX}Server.openは内部でlisten(5)をしているので、複数回listen()し
て変更できないようなプラットフォームでは無意味。
575デフォルトの名無しさん:2010/03/20(土) 11:24:33
いや、そりゃRubyを経由しない場合は普通に動作するんだろ
Rubyでだけ動作しないという話のはず
576デフォルトの名無しさん:2010/03/20(土) 11:27:49
http://twitter.com/n0kada/status/10753378765
(?0..?z).grep(/\w/).sample(16)*""
577デフォルトの名無しさん:2010/03/20(土) 11:29:46
>>575
だから、rubyのTCPServerやUNIXServerがそういう風になってるという話
578デフォルトの名無しさん:2010/03/20(土) 11:38:24
>> 576
\wはアンダースコアにもマッチしちゃうだろ
579デフォルトの名無しさん:2010/03/20(土) 11:58:48
1.8.7だと、このくらいかな
(0..15).map{[?a..?z,?A..?Z,?0..?9].map(&:to_a).flatten[rand 62]}.pack('c*')
sampleとか1.8.7にも欲しいな
580569:2010/03/20(土) 12:25:20
>>571
おおすばらしい。
Array#sampleは盲点でした。
やはりゴルファーは違いますね。

>>576
短いですね。
希望する条件には合いませんが大変参考になりました。

名のある方々にお答えいただけるとは恐縮至極に存じます。
ありがとうございました。
まださらに短い表現があればお願いいたします。
581デフォルトの名無しさん:2010/03/20(土) 12:29:01
strarray*'' の代わりに strarray*p が出来ないかと思ったら
TypeError: no implicit conversion from nil to integer

strarray.join(nil) は出来るんだけどなー。
582デフォルトの名無しさん:2010/03/20(土) 12:38:45
Array#* は rb_ary_times (array.c) で、
引数をnilでない文字列に出来れば rb_ary_join する、なのか。
583デフォルトの名無しさん:2010/03/20(土) 14:06:14
ttp://doc.okkez.net/192/view/class/Net=HTTP を使ってプログラミングをしています

Net::HTTP.start('www.google.com', 80) {|http|
 result = http.get('/mobile')
 result = http.get('/mobile')
}

ってやると、セッションが2つ確率されるんですかね?
584569:2010/03/20(土) 14:08:42
自分の頭で考えつく限りでは 2byte しか短くなりませんでした。
(0..15).map{rand(123).chr[/[^_\W]/]||redo}*''

>>576のn0kada氏の表現を参考に改良すると
>>571の長さと同じになりました
(?0..?z).grep(/[^_\W]/).sample(16)*''
[*?a..?z,*?A..?Z,*0..9].sample(16)*''

自分の頭ではここが限界のようです。
修練が足りませんな。
585デフォルトの名無しさん:2010/03/20(土) 14:14:32
>>583
Keep-Aliveはそのまんまだと思う
586583:2010/03/20(土) 14:18:23
>>585
なるほど、Keep-Aliveなんてものがありましたね
ありがとうございます
587デフォルトの名無しさん:2010/03/20(土) 14:39:39
高々数バイト惜しむくらいならさっさとマシン新調しろよ。
メモリ4GB1万もしない時代に何ケチってんだ。
高性能なマシン上でどれだ高度な事をやるかがソフトウェアの仕事だろ。
588デフォルトの名無しさん:2010/03/20(土) 14:44:14
まあたまにはいいと思うけど
仕事でやられたらたまらんけどな
589デフォルトの名無しさん:2010/03/20(土) 14:55:19
ゴルフに向かって何言ってるんだ…
590デフォルトの名無しさん:2010/03/20(土) 15:01:16
>>587は誤爆・・・だろ?
591569:2010/03/20(土) 15:03:53
>>587, 588
休日の頭の体操ということでご容赦ください
592デフォルトの名無しさん:2010/03/20(土) 17:06:08
他人のソース読むと、近頃はHashのキーはStringよりなるべく
Symbolを使うのが主流なんだね。実際どの程度速度違うの?
593デフォルトの名無しさん:2010/03/20(土) 17:23:02
ペンを出していちいちフルネームをサインするのと浸透印をぽんぽん押すぐらいの違い
594デフォルトの名無しさん:2010/03/20(土) 17:41:19
>>Rubyというよりは内部で呼ばれてるCOMの問題だろうなあ
COMの問題か?それとも相手方のサーバ?
長期でまわすとNG。USWCではCOM例外がでるのでやはりそうか?
watirがエラー処理をきちんとしていないようにも感じる。
(例外にするなりをしていない)
595デフォルトの名無しさん:2010/03/20(土) 18:07:45
>>592
100まんこくらい作ると違う
596デフォルトの名無しさん:2010/03/20(土) 18:24:34
「固定」のキーはSymbolであることが多くなったね
HashのキーはAかBかCかDの4つのうちどれかです、という場合はその4つはほとんどの場合Symbol
あとキーワード風引数のとき
597デフォルトの名無しさん:2010/03/20(土) 20:55:21
え、昔からHashのキーはシンボルでしょ?
いつの時代からいらした方ですか
598デフォルトの名無しさん:2010/03/20(土) 20:57:36
「シンボル?なにそれおいしいの?」の時代から来ますた
599デフォルトの名無しさん:2010/03/20(土) 20:58:55
せっかくなんのオブジェクトでもキーにできるようになってるのにw
まあ文字列かシンボル以外での使い道ってあんまりないけどな
普通のオブジェクトなら、そいつ自身に値を持たせる方が素直な場合が多そうだし
600デフォルトの名無しさん:2010/03/20(土) 21:00:59
hashメソッドがいまいち信用ならんのだな
これをきちんと再定義してるユーザー作成のクラスは稀だ
601デフォルトの名無しさん:2010/03/20(土) 21:37:04
いや、昔よりシンボル派は確実に増えてるよ。
DBプログラミングの影響?

プロパティ付きオブジェクトが手軽に欲しい時、Hash派かStruct派かって議論はどう?
602デフォルトの名無しさん:2010/03/20(土) 21:41:14
>>600
基本的にそのままで問題ないと思うけど、#==だけでeql?は放置っていう話?

class Point
 attr_accessor :x, :y
 def initialize(x, y)
  @x, @y = x, y
 end
 def ==(other)
  @x == other.x and @y == other.y
 end
end

p1 = Point.new(1, 2)
p2 = Point.new(1, 2)
h = {}
h[p1] = true
p p1 == p2 #=> true
p h[p1] #=> true
p h[p2] #=> nil
603デフォルトの名無しさん:2010/03/20(土) 21:43:23
>>601
クラス作るよ!派

一回しか使わないならStruct含めてクラス作るまでもないからHash
604デフォルトの名無しさん:2010/03/20(土) 22:52:24
なるべくクラス定義省くのが、LL流でしょ?
605デフォルトの名無しさん:2010/03/20(土) 23:08:08
いやそれほどでもない
606デフォルトの名無しさん:2010/03/20(土) 23:17:46
またまたご謙遜を
607デフォルトの名無しさん:2010/03/20(土) 23:23:18
メソッド5つくらい作るとクラス作れそうな気がしてうずうずする
608デフォルトの名無しさん:2010/03/21(日) 00:38:58
向こうの>>897
goto使うな制御構文使え => goto絶対禁止!
switch/case使うな多態使え => switch/case絶対禁止!
という思考停止的教条主義者だろただの
609デフォルトの名無しさん:2010/03/21(日) 00:41:38
向こうってどこだよw
897か?894じゃなく?
610デフォルトの名無しさん:2010/03/21(日) 01:01:12
Integer (or Symbol)がキーのHashの代わりに使えるような、
スパースなArrayの実装ってRubyに有る?
611デフォルトの名無しさん:2010/03/21(日) 01:05:39
Narrayではどうでしょう?

Rubyist Magazine 29号
Ruby Library Report 【第 5 回】 数値計算と可視化
http://jp.rubyist.net/magazine/?0006-RLR
612デフォルトの名無しさん:2010/03/21(日) 01:18:49
>611
思ってたのとはちょっと違うが、これはこれで便利そうだ。
紹介ありがとう。
613デフォルトの名無しさん:2010/03/21(日) 01:31:32
格納するデータが単純なものならRubyInlineで書いちゃうのも良いかも

http://itpro.nikkeibp.co.jp/article/COLUMN/20080125/292086/?ST=oss&P=5
614デフォルトの名無しさん:2010/03/21(日) 07:01:27
大学の講義でRuby使おうとしたら他の教員に「んな言語しらんし、使ってる奴いんの?」と反対されたでござる。
Rubyがいかに教育に適しているかといても聞く耳もたず。
物わかりの悪いジジーはあんまり出しゃばらないで欲しいなぁ。
などと愚痴をこぼしてみる。
615デフォルトの名無しさん:2010/03/21(日) 07:51:08
      ,―ヽ____、―
   ,/  ノ       ヽ  ~\
  /   ノ   IPA    ヽ   ~\
/   ノ           ヽ、  `ヽ
|    ノ / ̄\   / ̄~ヽ ヽ    i
|   ノ              |  ノ
\  |  <●>  <●>  (  )
 \ |      | |       i /
    |      /  ヽ       レ
   i     (●_●)      /  
    i、    ,-――-、   ・ /
    i、  <(EEEEE)> ∵/    IPA Rubyは日本国公認言語。使わない奴は非国民。
      i、  \   ./  /
       \   ーー   ,ノ       
  ,,.....イ.ヽヽ、ー-―一ノ゙-、.
  :   |  '; \_____ ノ.| ヽ i
      |  \/゙(__)\,|  i |
      >   ヽ. ハ  |   ||
616デフォルトの名無しさん:2010/03/21(日) 07:52:47
>>615 うぜーんだよ人間の屑
617デフォルトの名無しさん:2010/03/21(日) 07:57:12
こういうときにRuby公式サイトに企業や教育機関での採用実績が載ってたら楽なのにね
618デフォルトの名無しさん:2010/03/21(日) 08:24:26
>>615
もうちょっと小さいAAにしてくれ。
顔面がでかくて邪魔だ。
619デフォルトの名無しさん:2010/03/21(日) 08:42:43
>>616
>>618
いまだに表示してるのお前らだけだぞ
620デフォルトの名無しさん:2010/03/21(日) 10:08:34
watirで更新ツールを作ってるんだけど
Basic認証がでるときとでないときがあるんだけど
これてなんで?サーバ側の問題?
毎回パスワード入れるのうっとしいのでBasic認証の窓がでてるか
どうかを判断したいんだけでなにかいい知恵ないかな?


621デフォルトの名無しさん:2010/03/21(日) 10:18:51
622デフォルトの名無しさん:2010/03/21(日) 11:05:13
ttp://wiki.openqa.org/display/WTR/Basic+Authentication
は見たよ。これは単にBASIC認証のコードを書いているだけよ
ような気がする。やりたいのはPOPUPウィンドウが開いているときの
の判断。(BASIC認証の窓が開いているかどうかの判断)
UWSCならできたような気が・・・
623デフォルトの名無しさん:2010/03/21(日) 11:36:06
>>614
そのアホな教員に許可取る必要あるの?
無いんだったら無視して進めれば良いのに
624デフォルトの名無しさん:2010/03/21(日) 12:09:30
evalが引数にブロックを取らないことには何か理由があるの?
625デフォルトの名無しさん:2010/03/21(日) 12:15:45
それとwatirてHTTPヘッダーにパスワード埋め込みできないの?
そうしてもbasicのあるなしを区別しないとスクリプトがURL
の場所にパスワードを書いてします。
だれか教えて
626デフォルトの名無しさん:2010/03/21(日) 12:16:33
Perlでの例外をキャッチするってやつのこと?
627デフォルトの名無しさん:2010/03/21(日) 13:43:02
やはりだめか?
Javaならhttpリクエストをサポートしてそう。
actiwateなんかよさそうだけどこれでするか
628デフォルトの名無しさん:2010/03/21(日) 20:41:17
狂死自体が社会経験なくて常識無いからなあ。

http://pc12.2ch.net/test/read.cgi/tech/1255459388/
ネットワークプログラミング相談室 Port25
http://pc12.2ch.net/test/read.cgi/tech/1086238859/
Java ネットワークプログラミング 【教えて!】
629デフォルトの名無しさん:2010/03/21(日) 21:53:03
検索しても良く分からないんだが
本家以外から出ているRuby(例えばJRuby)とかは互換性は大丈夫なんですか
630デフォルトの名無しさん:2010/03/21(日) 21:58:14
>>629
JRuby は 1.8.7 なら「そこそこ」動く
これは第三者ライブラリの対応も含めた評価

組み込みライブラリと添付ライブラリだけしか使わない
ピュアなプログラミングだけしかしないのなら
631デフォルトの名無しさん:2010/03/21(日) 22:03:37
>>630
そうですか
JRubyとかの方が実行速度が速いと聞いていたのですが、
やっぱり本家を使った方が良いみたいですね
ありがとうございました
632デフォルトの名無しさん:2010/03/21(日) 22:09:27
Rubyとして不得意なところは豊富高速なJavaのライブラリにブン投げればいいので
プログラミング総体的にはとても高速だしJavaを知っていれば制作期間も短くて済む

ただしこの場合はRubyでなくてもよくね最初からJavaで書けばよくね的なモヤモヤが
633デフォルトの名無しさん:2010/03/21(日) 22:24:00
>>632
Railsを試してみたいと思ったので
634デフォルトの名無しさん:2010/03/22(月) 00:41:24
(´・ω・`)ノシ     (´∀`)ノ       (´・ω・`)ノシ     (´∀`)ノ         (´・ω・`)ノシ     (´∀`)ノ
【おっさん】     【ヤング】      【おっさん】     【ヤング】        【おっさん】     【ヤング】
アベック       カップル       チャック       ジッパー         サジ         スプーン
ズボン         パンツ        ズック        スニーカー        汽車        電車
ジーパン       デニム        ラッパズボン    ブーツカット       国鉄        JR
割ぽう着       エプロン       喫茶店       カフェ           寝巻        パジャマ
コールテン      コーデュロイ    チャンネル回す  チャンネル変える    シャッポ      帽子
えもん掛け     ハンガー       Ruby        Python          前掛け       エプロン
レコード       CD          デザート      スイーツ         突っかけ      サンダル
スパゲッティ     パスタ        パンティ       ショーツ         トレパン       ジャージ
とっくりセーター   タートルネック    ビフテキ      ステーキ         ランニング     タンクトップ
セコハン       ユーズド       ハイヤー      タクシー         チョッキ       ベスト
635デフォルトの名無しさん:2010/03/22(月) 01:45:44
意外と役に立ちそうなリストだな
ただこうやって並べると、その「ヤング」の方が語彙が少ないだけな気がしてくる不思議
636デフォルトの名無しさん:2010/03/22(月) 01:49:13
ジッパー → ファスナー
ショーツ → パンツ
かなぁ

タクシーとハイヤーはそもそも別モンなんじゃないの?
637デフォルトの名無しさん:2010/03/22(月) 01:54:39
Ruby2.0には

String#ossan
String#yangu

が追加されます。
638デフォルトの名無しさん:2010/03/22(月) 02:01:18
"something".ossan.to_english.to_kana == "somethig".yangu
639デフォルトの名無しさん:2010/03/22(月) 02:32:47
ハイヤーは hire で、営業所待機してるのを呼びつけて使う。
タクシーは流しで客待ちするもの。

高級だから higher なんだと思っていた中学生の頃の思い出。
640デフォルトの名無しさん:2010/03/22(月) 04:29:19
誰か突っ込んでやれ
641デフォルトの名無しさん:2010/03/22(月) 08:34:56
何かと思ったら、rubyとpythonを混ぜてあるのか
それはともかく、たいそうエプロンが好きなようだから、「駐機場」とかも入れときゃいいのにな
642デフォルトの名無しさん:2010/03/22(月) 08:45:39
643デフォルトの名無しさん:2010/03/22(月) 17:52:47
Rubyプログラマはイケメンが多い気がする。
洋服のセンスも良くて人当たりも良い感じ。
自分はJavaプログラマだがRubyプログラマが羨ましい。
644デフォルトの名無しさん:2010/03/22(月) 17:59:16
Rubyって実用になる範囲が限られているから
Rubyだけって人はいないだろうね。
Javaの欠点は何でもできそうでどれもイマイチな器用貧乏さ
645デフォルトの名無しさん:2010/03/22(月) 18:15:52
そうなんですか。やっぱりRubyプログラマはカッコイイですね。
自分もいつかRubyプログラマになれるように頑張ります。
646デフォルトの名無しさん:2010/03/22(月) 18:16:00
javaは元々大規模業務向けだしね。日本刀で鉛筆削りしてもしょうがないし。
rubyは小刀なんだから、鉛筆削りに向いてる分、railsとかで業務サイト作ろうとするとかなり無茶する羽目に成る。
647デフォルトの名無しさん:2010/03/22(月) 18:21:31
対象の規模の話だとC#ってどうなの?Javaと同じく大規模向け?
648デフォルトの名無しさん:2010/03/22(月) 18:40:28
年明けくらいからrvmを使っているが、便利だなこれ。
更新ペースが速すぎるのでついていけないところもあるが。
649デフォルトの名無しさん:2010/03/22(月) 19:58:28
>javaは元々大規模業務向け

都市伝説だろ
650デフォルトの名無しさん:2010/03/22(月) 20:09:54
やはりJavaよりRubyの方が頼りにされていた大規模業務向けの案件で
おれは遅れて開発に参加したんだがちょうどバグがわきはじめたみたいでなんとか
耐えてるみたいだったどうやらJavaが頼りにないらしく「はやくきて〜はやくきて〜」と
泣き叫んでいる開発メンバーのためにおれはワンライナーで普通では作れない速度できょうきょリリースすると
「もうできたのか!」「はやい!」「きた!メインリリースきた!」「これで勝つる!」と大歓迎状態だった
651デフォルトの名無しさん:2010/03/22(月) 20:13:04
汚いなさすがJavaきたない

とか書いて欲しいのか?
652デフォルトの名無しさん:2010/03/22(月) 20:23:11
typoも検出できない言語で開発する能力があったら、何だって出来そうなものだが
653デフォルトの名無しさん:2010/03/22(月) 20:24:35
javaが大規模開発向けといわれるのは
大規模開発だと色んなレベルのプログラマが集まるから
どうしてもレベルの低い層に合わせたルールが必要で
そのルールをうまく(本当か?)提供しているのがjava
だからjavaはどうしても駄作みえてしまう
654デフォルトの名無しさん:2010/03/22(月) 20:49:53
ruby大好きで、javaで開発したことがない人間だけど、
rubyで少人数開発で、javaの案件をリプレースできるの?
javaで雑兵が大量に混じった100人で開発する案件を、
rubyで少数精鋭で10人で開発出来るの?
655デフォルトの名無しさん:2010/03/22(月) 20:50:28
>>653
>javaが大規模開発向けといわれるのは

*Java PackageとJavaArchive
*静的型付け

これに尽きると思ふ。
656デフォルトの名無しさん:2010/03/22(月) 21:00:16
>>654
おまえが一番良く知ってるだろう
657デフォルトの名無しさん:2010/03/22(月) 21:01:32
>>656
普通にそれを知らないから質問になってんじゃないの
658デフォルトの名無しさん:2010/03/22(月) 21:37:07
j2eeみたいなのがrubyには無いからね。
1ライナ言語で大掛かりな仕組みが必要に成るとも思えないし。
659デフォルトの名無しさん:2010/03/22(月) 21:38:28
>>658
2てん
660デフォルトの名無しさん:2010/03/22(月) 21:41:42
>>659
ガンツ先生より優しいですね
661デフォルトの名無しさん:2010/03/22(月) 22:17:31
Rubyプログラマは本当にカッコイイですね
662デフォルトの名無しさん:2010/03/22(月) 22:23:55
>>657
あらかじめ答えを想定した質問する香具師は嫌い
答えたらそれは違うんですとか言うのが見えてる
>>659 とかね

一言で言うと「釣り」
663デフォルトの名無しさん:2010/03/22(月) 22:59:17
>>662
香具師って死語じゃないのか?
最近、またよく見るようになってきた
664デフォルトの名無しさん:2010/03/23(火) 00:05:44
一旦でもメジャーになった単語は、完全に死ぬことは無い
かと言って再流行することも珍しいけどな、COBOLみたいなもんさ
665デフォルトの名無しさん:2010/03/23(火) 00:37:32
rubyは、まだ枯れてないからな。業務系に使われるのには、まだ時間が必要。
666デフォルトの名無しさん:2010/03/23(火) 00:40:41
>>647
Javaよりは大規模開発にも向いてるんじゃないか。さすが後発というか。
つっても、WindowsならC#、そうじゃないならJava、って程度の差しかないけどな。
667デフォルトの名無しさん:2010/03/23(火) 00:42:57
rubyは枯れるのは、ユーザーが減ってシオシオになった時だと思う。
668デフォルトの名無しさん:2010/03/23(火) 00:48:24
普通に使うぶんには問題ないと思うんだが

「普通のプログラミング案件」にRubyが向かないのは
枯れてないとかそういうのではなく言語仕様レベルの話

仮にJavaがオープンクラスで継承いっこでmix-in前提でeval可能だったらたぶん誰もビジネスで使わない
669デフォルトの名無しさん:2010/03/23(火) 00:53:03
なんで?
670デフォルトの名無しさん:2010/03/23(火) 00:59:13
Ruby はマイナーなエディターのように生き残る
671デフォルトの名無しさん:2010/03/23(火) 01:24:34
腕が悪いのを言語のせいにするなよ
672デフォルトの名無しさん:2010/03/23(火) 02:00:55
言語使用以前にベンチマーク性能とか配布形式とかさまざまな問題ある。
だけどユーティリティとしては現状のままが使いやすいかもしれない
673デフォルトの名無しさん:2010/03/23(火) 02:08:05
>>671を見て思ったのは、「腕が悪い」って、優しい言い方だなってことだ
いや全く流れに関係ないんだがふと

言われてきつい方から行くと、適正が無い、頭が悪い、ずっと優しくなって経験不足、
かなとか思った
うん、これからは腕が悪いって言おう
674デフォルトの名無しさん:2010/03/23(火) 02:43:41
rubyだとj2eeのjmxみたいな監視タスクも組めないしなあ。
ibmの汎用機とかでもrubyで処理してる実績は少ないと思うよ。
675デフォルトの名無しさん:2010/03/23(火) 03:31:31
>>673
立場が悪いひとですね
676デフォルトの名無しさん:2010/03/23(火) 05:13:41
頭が悪い>>>>>>適正が無い>腕が悪い>>>>>>>>経験不足
677デフォルトの名無しさん:2010/03/23(火) 13:02:22
×適正が無い
○適性が無い
678デフォルトの名無しさん:2010/03/23(火) 23:15:58
適正がないとか、頭が悪いとか普通言わんだろ
頭が悪いは、ものすごくむかついたときとか言いたくなるが
679デフォルトの名無しさん:2010/03/24(水) 02:58:48
「適性がない」は悪意のない客観的な意見を装った嫌味に使う。
680デフォルトの名無しさん:2010/03/24(水) 14:08:00
たまに真顔で言う性格悪いのもいるけどな。
681デフォルトの名無しさん:2010/03/24(水) 14:40:47
適性が無いと言ってくれる友人は大事に汁
682デフォルトの名無しさん:2010/03/24(水) 18:13:42
シンボルって何がおいしいんですか?
683デフォルトの名無しさん:2010/03/24(水) 18:17:25
lispな人のお気に入り
684デフォルトの名無しさん:2010/03/24(水) 22:48:26
>>682
高速な等価比較。
685デフォルトの名無しさん:2010/03/24(水) 22:51:26
おれは文字列とは区別するという意思を示せるところが好きだが
686デフォルトの名無しさん:2010/03/24(水) 22:55:49
いわゆるキーワードの役目だね
意味のある固定の文字列
キーワード風引数に多用されるのもむべなるかな
687デフォルトの名無しさん:2010/03/25(木) 09:27:44
シンボルの利点が直感的に分かるようになったら初心者卒業
688デフォルトの名無しさん:2010/03/25(木) 11:06:39
一番の利点はタイピングが楽だからでしょうが
689デフォルトの名無しさん:2010/03/25(木) 11:12:29
>>688
いやいやいや
690デフォルトの名無しさん:2010/03/25(木) 15:19:56
遠い将来、キーワード引数が導入されると
foo(bar: 23, buz: 'hello') はキーワード引数
foo({bar: 23, buz: 'hello'}) {}の省略をしなければもちろんハッシュ
foo(:bar => 23, :buz => 'hello') は従来どおりの{}を省略したハッシュ
という感じになるのですかね
691デフォルトの名無しさん:2010/03/25(木) 15:26:36
そこら辺はPowerShellが300歩くらい先を行っているな
692デフォルトの名無しさん:2010/03/25(木) 15:28:19
誰もついていってない感じなのがなんとも
693デフォルトの名無しさん:2010/03/25(木) 15:47:36
foo({
 bar: 23,
 buz: 'hello'
})
のほうが好みだ。

さらにインスタンス生成もこれでやりたい。
foo = {
 class: Foo,
 bar: 23,
 buz: 'hello'
}
foo.bar #=> 23
foo.baz #=> 'hello'
694デフォルトの名無しさん:2010/03/25(木) 16:03:45
他所様のサイトから150ページくらい取得したHTMLが全部同じページだった
データたくさん集まったかな抽出スクリプト書こうかなと思って確かめた今日気づいた
3回やって500ページぶんくらいあるんだが(全部その日の1ページ目でそれが150ファイルずつある)
やっぱりセンスないな俺
やめようかな
695デフォルトの名無しさん:2010/03/25(木) 16:50:18
やめちゃいなYO!楽になるYO!
696デフォルトの名無しさん:2010/03/25(木) 17:07:16
んー、わかった

ブログ全削除じてGitHubからも引き上げた
Twitterはアカウント消す方法がわからんがパスワードファイル捨てたのでもう書けない
消して初めてわかったが.git ディレクトリは中に細かいファイルありすぎだろ
697デフォルトの名無しさん:2010/03/25(木) 19:23:58
おつかれ!生きる道なんてほかにいくらでもあるYO!
698デフォルトの名無しさん:2010/03/26(金) 03:09:31
それなんの話?
699デフォルトの名無しさん:2010/03/26(金) 03:13:52
人間関係に疲れたとあるコミッタが去っていったという、この業界ではよくある話

ではないと思う
700デフォルトの名無しさん:2010/03/26(金) 07:58:18
mw
701デフォルトの名無しさん:2010/03/26(金) 09:50:51
まあでもリリースほか、あの当時奴が主張してた話があらかた実現してるのをみるに、
あの辺については「言っていることはわかるがお前が気に入らない」って話だったんだろうな。

いい加減スケジュール決めないとリリースマネージャ解任動議出す

と言って荒れないようになっただけコミュニティも進歩したというか、
口のききかたって重要というか。
702デフォルトの名無しさん:2010/03/26(金) 12:47:24
「言ってることはわかるが口だけのやつは要らない」が正確。
Yuguiさんのように自分で手を動かし、やって見せる必要があった。
バグトラッカ設置してリリースマネジメントして交渉して広報して。
メンテナ解任のプロセスを決めたのもYuguiさんだから、今回の解任
動議は本望だろう。
703デフォルトの名無しさん:2010/03/26(金) 13:04:04
みんなこっちでやれよ…
あんなやり取りは質問者は微塵も興味ないんだからさ
704デフォルトの名無しさん:2010/03/26(金) 13:09:27
Windowsの話はされたくない、
だけど俺の高説は好き勝手に垂れ流すよってどんな説教ジジィだよw
705デフォルトの名無しさん:2010/03/26(金) 14:23:48
コマンドのオプションを簡単に解析できるライブラリーって無いですか?
706デフォルトの名無しさん:2010/03/26(金) 14:28:39
optparseとか他にもあった気がするけど忘れた
707デフォルトの名無しさん:2010/03/26(金) 14:28:42
スレ違い
708デフォルトの名無しさん:2010/03/26(金) 14:34:35
Rails方面でthor というのも最近よく見るけど、
これを使うとオプション解析だけに収まらないな。

709デフォルトの名無しさん:2010/03/26(金) 17:50:01
なになに、Rubyの開発陣営って仲間悪いの?
710デフォルトの名無しさん:2010/03/26(金) 23:34:09
Yes, offcourse.
711デフォルトの名無しさん:2010/03/27(土) 00:44:15
誰と誰の仲が悪いんだろう?
712デフォルトの名無しさん:2010/03/27(土) 00:48:20
小児性ヒステリーが多い感じ
713デフォルトの名無しさん:2010/03/27(土) 01:07:03
of course ->もちろん
offcource ->コースアウトした
714デフォルトの名無しさん:2010/03/27(土) 01:12:12
>>710
それだと日本のニューミュージックグループじゃ
道を外れる(off course)

もちろんあなたは正しい
Of course, you are right.
715デフォルトの名無しさん:2010/03/27(土) 03:53:31
開発者コミュニティーってのはな、もっと殺伐としてるべきなんだよ。
スレッドの反対意見にまわった奴といつ喧嘩が始まってもおかしくない、
刺すか刺されるか、そんな雰囲気がいいんじゃねーか。二ちゃんねらーは、すっこんでろ。
716デフォルトの名無しさん:2010/03/27(土) 04:05:27
yugaiの性別疑惑も有るしなあ。
隠し事を無くさない限り、みんな仲良くってのは無理と思う。
オープンソースの合宿なんて遣るか遣られるか出しな。fork回避ならゴム必須。
717デフォルトの名無しさん:2010/03/27(土) 04:07:37
疑惑なの?
718デフォルトの名無しさん:2010/03/27(土) 07:55:28
そもそも観点によって性別が変わるトランスセクシャルに対して、疑惑もクソも
719デフォルトの名無しさん:2010/03/27(土) 09:04:05
>fork回避ならゴム必須。

教祖や皇帝が自分の子孫を沢山残そうとするのは世の常
720デフォルトの名無しさん:2010/03/27(土) 09:11:43
>>716
MtF-TSって明言してるだろぼけ。
721デフォルトの名無しさん:2010/03/27(土) 09:51:08
モビルスーツの機体番号みたいなだなと俺が勇気ある発言
722デフォルトの名無しさん:2010/03/27(土) 14:36:15
NetBeansを入れればJRubyが動きますが、
他のマシンではJREだけあれば大丈夫ですか?
723デフォルトの名無しさん:2010/03/27(土) 16:51:45
JRuby はいるんじゃね?
724デフォルトの名無しさん:2010/03/28(日) 08:21:58
>>716
yugai って誰だ。

yugui は隠してはいないな。
ttp://yugui.jp/about/author
725デフォルトの名無しさん:2010/03/28(日) 12:51:44
有害わらたw
726デフォルトの名無しさん:2010/03/28(日) 13:44:08
よく思う事なんだけどさ、おまえらならどっちで書く↓?
str = nil
if !str; return; end

str = nil

if !str
 return
end
727デフォルトの名無しさん:2010/03/28(日) 13:46:18
str = nil
return unless str
728デフォルトの名無しさん:2010/03/28(日) 13:53:17
if !str

これは酷い
729デフォルトの名無しさん:2010/03/28(日) 14:03:54
そんな書き方あったのか、知らんかったorz
感謝するよ
730デフォルトの名無しさん:2010/03/28(日) 14:04:21
if ! は else/elsif が不要なら unless を使うかな。
支配される指揮が1つなら後置形式で。
731デフォルトの名無しさん:2010/03/28(日) 14:50:04
str に nil 入れてるんだから
return だけで良いんじゃね
732デフォルトの名無しさん:2010/03/28(日) 14:56:37
unlessが使いがたい場合でも、単項ならif notのほうが好み
733デフォルトの名無しさん:2010/03/28(日) 14:56:51
unlessって長くない?
そんくらいなら、if !strの方がいいんだけど
734デフォルトの名無しさん:2010/03/28(日) 15:04:13
長さは気にならなくて、どっちかてーと読みやすさかなー。
735デフォルトの名無しさん:2010/03/28(日) 15:04:27
!str && return
ってのは良くない?
最近、こう書いてしまうことが多いんだけど。
736デフォルトの名無しさん:2010/03/28(日) 15:10:59
良い悪いで言うと悪いと思う
737デフォルトの名無しさん:2010/03/28(日) 15:17:12
str || retun
ならあり
738デフォルトの名無しさん:2010/03/28(日) 15:24:15
理由を先に。
str || retun

結論を先に。
retun unless str

下のほうが良い。
739735:2010/03/28(日) 15:25:54
自分の中で、読み返すときに
str || retun
は、理解するのがワンテンポ遅れる感じがして
!str && return
だと、「○○がなければreturn」と理解しやすい感じがしちゃうんだけど
慣れですかね?
740デフォルトの名無しさん:2010/03/28(日) 15:29:11
>>739
俺の場合、どっちも論理演算の流れを考えてしまうからワンテンポ遅れる
後者は演算子一個増えるからさらに遅れる
741デフォルトの名無しさん:2010/03/28(日) 15:29:59
完全に慣れです。
どちらかというと前者を使う方が多い。
or dieのようなコードはよく見る。
742デフォルトの名無しさん:2010/03/28(日) 15:31:04
foo || puts "bar"
がエラーになるバグはいつ直りますか?
743デフォルトの名無しさん:2010/03/28(日) 15:34:42
安易に return するとかすでに設計がおかしい兆候なんで
unless str
  return
end
と書いて、なんでこんなことに3行も使ってしまったのかと自分を戒めるようにしてるわ
744デフォルトの名無しさん:2010/03/28(日) 15:36:59
優先順位やand/orとの違いに気づけないやつはif/unless使えよ
745デフォルトの名無しさん:2010/03/28(日) 15:38:54
def foo(x)
 if x
  :
  ;
 end
end

def foo(x)
 return unless x
 :
 ;
end

おかしいか?
746デフォルトの名無しさん:2010/03/28(日) 15:40:19
難しい質問はOKWebにすれば園田裕貴さんが直接答えてくれるからいいね
747デフォルトの名無しさん:2010/03/28(日) 15:46:20
記述スタイルの話題はもう良いよとうちの猫が(ry
ぽち「どれが良いかなんてBOSSが決めることさ。」
748デフォルトの名無しさん:2010/03/28(日) 15:51:14
人間、チンコと頭の切れが鈍ってくるとループネタで暇をつぶしたくなるものなのさ
749デフォルトの名無しさん:2010/03/28(日) 17:06:19
>>742
どこがバグ?
750デフォルトの名無しさん:2010/03/28(日) 17:17:05
perlのopen(...)||dieみたいなことがしたいんだろ
751デフォルトの名無しさん:2010/03/28(日) 17:22:59
ボクの考えた書き方でエラーになる = バグ
752デフォルトの名無しさん:2010/03/28(日) 18:06:57
なら、バグだな
753デフォルトの名無しさん:2010/03/28(日) 18:09:34
優先順位こっちのがいいんじゃね?て話ならともかく
バグと言われるとちょっとね
754デフォルトの名無しさん:2010/03/28(日) 18:11:45
糖衣構文まぶしすぎて一貫性のないちぐはぐな表記になってしまう
よくある仕様バグの一つです
755デフォルトの名無しさん:2010/03/28(日) 18:42:17
ぼくちんの書き方だとエラーになるんでちゅ!!
絶対バグでちゅ!!

756デフォルトの名無しさん:2010/03/28(日) 19:14:13
藁 はガチで久々に見た
757デフォルトの名無しさん:2010/03/28(日) 20:05:37
内部moduleを作っているのですが、
javaのHoge.thisみたいなことをやりたいのですが
やっぱり、無理ぽ?

class Hoge {
class Sub {
public Sub(){
Hoge.this ← これ
758デフォルトの名無しさん:2010/03/28(日) 20:06:52
unless !!!!!!!!!true
 puts "uho"
end
759デフォルトの名無しさん:2010/03/28(日) 20:15:17
>>757
Rubyのモジュール内のモジュールは、特定の外側のクラスの
インスタンスに結びつくわけではない。
Javaでいうと、static inner classが近いか。

760デフォルトの名無しさん:2010/03/28(日) 20:17:36
書きわすれ。
用途によってはクロージャでやれることかもしれん。
761757:2010/03/28(日) 20:24:25
>>759
わざわざ、ありがとうございます
762デフォルトの名無しさん:2010/03/29(月) 07:59:34
str || retun

!str && return
を薦める香具師は perler
763デフォルトの名無しさん:2010/03/29(月) 10:12:16
Perl好きなら、
str or return
じゃないのか?
せっかく || じゃない or が用意されてるんだから
764デフォルトの名無しさん:2010/03/29(月) 10:17:11
Perl4で時間が止まってるんじゃない?
765デフォルトの名無しさん:2010/03/29(月) 13:00:46
JRubyでjavaのAPIを使うと、コードが汚くなるな
Rubyの命名規則を使っちゃダメだね
766デフォルトの名無しさん:2010/03/29(月) 13:18:00
!演算子って再定義できるんだっけ?
767デフォルトの名無しさん:2010/03/29(月) 13:26:00
1.9ではできる
768デフォルトの名無しさん:2010/03/29(月) 19:54:21
Ruby Summer of Code 2010
http://www.ruby-lang.org/ja/news/2010/03/26/ruby-summer-of-code-2010/

* 採択された方には期間中、フルタイムの開発のため $5,000 の奨学金が支給されます。
* Ruby guru が mentor (訳注:未踏で言えば「PM」) となって助言を行います。
* 開発結果は実用性と Ruby コミュニティへの貢献度、オープンソースでの活動履歴を基準に mentor によって評価されます。
769デフォルトの名無しさん:2010/03/30(火) 00:50:51
頑なにunlessを使わない上司がいる
empty?も嫌いらしい

こういう訳のわからないこだわり持ってる人と仕事するとすごくやりにくい
770デフォルトの名無しさん:2010/03/30(火) 01:28:34
脳みその中で真偽判定を変化させるのが苦手か遅いんじゃないか?

unless xxx and xxx

unless xxx or xxx
のどっちが正しいんだ?みたいな

確かに基本は if でやるのがわかりやすいとは思うけど
全く使わないというのはね
771デフォルトの名無しさん:2010/03/30(火) 01:37:00
unlessはただでさえ馴染みが無い言葉なのに、untilを連想させて、使う使わないの前に面倒くさい
おまいらもuntilを使ってないとすれば、unlessイラネってのを叩くのもどうか
772デフォルトの名無しさん:2010/03/30(火) 01:41:51
俺もunless苦手だわ
脳内でif !に変換する
unlessがある言語って結構あるの?
773デフォルトの名無しさん:2010/03/30(火) 01:54:06
そうえば、オレは unless はかなり使っているけど until はぜんぜん使わない。
てゆーか、while を使わないから until は存在さえ忘れている。
774デフォルトの名無しさん:2010/03/30(火) 02:15:37
原因の @messsage を探すのに30分くらいかかった
寝よう
775デフォルトの名無しさん:2010/03/30(火) 02:18:28
return unless init
形式は大して読みやすくも書きやすくもないんだよな実際のところ
積極的に使う事でルビィストである事の表明になるって程度の効能しかない
776デフォルトの名無しさん:2010/03/30(火) 02:26:08
条件式がよく考えられた名前のメソッドか変数である場合は有効
unless 前提で設計しろということになるな
if にしようか unless にしようか迷う、というようなことはない
明らかにどっちか向け
777デフォルトの名無しさん:2010/03/30(火) 03:38:16
unlessを使えば読みやすくなるというなら迷わず使う。
けどifの方が短いし目立つしでunlessの出番はほとんどないなあ
778デフォルトの名無しさん:2010/03/30(火) 04:37:24
andやorが出てきたらunless使わないだろ普通
779デフォルトの名無しさん:2010/03/30(火) 06:58:19
ttp://d.hatena.ne.jp/otn/20091103/p1
--------------------
# (1)
url = a["href"] if a.text == "次を表示"
# (2)
if a.text == "次を表示" then url = a["href"] end
# (3)
if a.text == "次を表示"
url = a["href"]
end
やっぱり、(1) は良くないよね。
--------------------

の意味が解らない。
(1)の何がよくないんだ?
780デフォルトの名無しさん:2010/03/30(火) 07:25:50
>>779
最近は、1行にまとめるときに ; を使うようになった
if a.text == "次を表示"; url = a["href"]; end
これで (3) と同じなんだけど。
(1) の場合、vim の matchit が誤作動して、% が対応する識別子に
ジャンプできなくなる。
781デフォルトの名無しさん:2010/03/30(火) 07:54:08
>>779
記事の中にちゃんと主張が書かれているじゃない
782デフォルトの名無しさん:2010/03/30(火) 09:45:06
def hoge; foofoofoofoo; end

と書くとEmacs では 「hoge;」 と5文字で着色されるから

def hoge ; foofoofoofoo ; end

と分けて書く、とかと同じようなもんか
783デフォルトの名無しさん:2010/03/30(火) 10:00:13
Emacs の ruby-mode ではインデントされないから別の書き方する、ということはある
784デフォルトの名無しさん:2010/03/30(火) 10:11:51
ruby watirでbasic認証のpopupが起動する。
checkいれてもまたuserid,passwordを聞いてくる。
なにかいい解決策はないのかな?
IEが悪い?プログラムに直接ユーザIDとパスワードを書けないかな?
785デフォルトの名無しさん:2010/03/30(火) 10:16:29
Basic認証ならURLにUserIDとパスワード埋め込めるけどそういうことじゃなくて?
786デフォルトの名無しさん:2010/03/30(火) 10:17:45
AutoIt入れてもできなかったらまたおいで
いちいちポップアップが出る上にスレッドで分けて入力してjoinする、というしょうもない技を使わないといかんが
787デフォルトの名無しさん:2010/03/30(火) 11:08:00
メソッドの引数の初期値が true ってキモいかな

def hoge(foo, bar, flag=true)

普通の人はこれを使うはずなんだけど、
場合によっては無効にしたいことがあると想像可能な機能の初期値
788デフォルトの名無しさん:2010/03/30(火) 11:30:46
ぜんぜんきもくありませんお
789デフォルトの名無しさん:2010/03/30(火) 17:59:44
京キャビのRubyバインディングできたんだ
790デフォルトの名無しさん:2010/03/31(水) 00:09:30
.gem/ruby/1.8/gems/yard-0.5.3/lib/rubygems_plugin.rb:9: warning: method redefined; discarding old has_yardoc=
.gem/ruby/1.8/gems/yard-0.5.3/lib/rubygems_plugin.rb:22: warning: discarding old has_yardoc?

文句言うわけじゃないんだけどやっぱ文句なんだけどさ、Yard って本気で不安定だよね
全く関係ない Yard が警告出したりインストール中に Yard 部分で SEGV で落ちたり
入れたくないんだけどいつのまにか入ってる
一度も自分から使ったことないんだけど
791デフォルトの名無しさん:2010/03/31(水) 01:11:41
コードはこう(サンプルより)
url = "http://localhost/basic_auth/"
username = "ccc"
password = "ddd"
ie = Watir::IE.new
a = Thread.new {
ie.goto(url)
}
sleep 5
ie.send_keys(username)
ie.send_keys('{TAB}')
ie.send_keys(password)
ie.send_keys('{ENTER}')
a.join

確かに動くけど問題点は2つ。
ie.goの後ろに処理を書くとプログラムがとまる。
basic認証にCheckが入っているとURLにUID、PWDが書かれてしまう。

UWSCのコードではBASIC認証のダイアログボックスがあるかどうかの
処理判断のコードがあったのだがWatir(AutoIT)では不明。
AUToiT勉強するしかないか?
それとwATIRを長くループしているとかならぶWIN32oleのところで
落ちる。例外処理を書いてもライブラリの中なので困る。
(ライブラリに例外処理を書けばいいのだが。当方ruby初心者)
どうしたものか?困る




792デフォルトの名無しさん:2010/03/31(水) 01:22:39
なんだかよくわかんないけど処理を書くならa.joinの後に書くべきなんじゃないかな
793デフォルトの名無しさん:2010/03/31(水) 03:56:00
ねーねー、autospec 使おうと思ってたんだけど

$ autospec
loading autotest/rspec
/usr/local/bin/ruby spec --autospec hogehoge_spec.rb
46464646464646464646464646464646464646464646464646464646
46464646464646464646464646464646464646464646464646464646
70464646701010494110397710199104971101051221018080461051
10115112101991163210510232771019910497110105122101808046
10599111110118326132739911111011832105115321151011164432
99111110118101114116393270657376696810101011201121019911


という感じに数字になるんよ
たぶんテスト結果の表示が何らかの理由で数字になってるんだと思うんだけど
原因とか思いつく方いますか
.autotest は全部コメントで空です
rspec-1.3.0
794793:2010/03/31(水) 10:09:29
原因がわかったよー

cmd = "ruby spec --autospec spec/hoge_spec.rb"
open("| #{cmd}", "r") do |f|
 until f.eof? do
  c = f.getc or break
  print c
 end
end

こんな処理をしてる
IO#getc の結果をそのまま画面に表示されても超困る

# ZenTest-4.3.0/lib/autotest.rb, L246
- print c
+ print c.chr
795デフォルトの名無しさん:2010/03/31(水) 10:18:15
print c であった理由とか考えないんだな
796デフォルトの名無しさん:2010/03/31(水) 10:22:26
>>795
それはいちおう考えてた

open("| ls"){|f| until f.eof? do; print f.getc; end}

の結果が Ruby1.8 と Ruby 1.9 で違う、という以上の意味はないと思う
1.8 だと整数のまま表示される
797デフォルトの名無しさん:2010/03/31(水) 10:31:33
798デフォルトの名無しさん:2010/03/31(水) 10:41:20
ハイランダーは1.8なんてもさいものはもう普段使ってないのだという事実がどんどん明らかに
799デフォルトの名無しさん:2010/03/31(水) 10:43:41
[ANN] ZenTest 4.3.1 Release Fixed autotest output on 1.8.
800793:2010/03/31(水) 10:49:29
>>798
テストに使用されることが多いライブラリの人はもうしばらく踏ん張って欲しいとあたし時々おもうの

>>797 >>799
$ gem install ZenTest
Successfully installed ZenTest-4.3.1
1 gem installed
$ autospec
loading autotest/rspec
/usr/local/bin/ruby spec --autospec spec/hoge_spec.rb -O spec/spec.opts
..........................

Finished in 0.853637 seconds

26 examples, 0 failures
^CInterrupt a second time to quit
$

ワーイワーイ
801デフォルトの名無しさん:2010/03/31(水) 11:02:24
標準出力への自動テストを普段使ってなくて気づけなかったらしいな
文字列として利用するほうは pack してあるから問題がなかったんだろう
screen 対応がオフィシャルから抜けたときのと似たような感じか
802デフォルトの名無しさん:2010/03/31(水) 15:16:07
ZenTest つくってるひとにバグの報告をしてくれる超すごい優しい人がいるスレと聞いて

>>794で open されてる、 ruby に渡される引数を作るのに使う
GEM_HOME かテスト対象スクリプトパスかテストコマンドオプション引数のどれかに
ファイルパス中の文字列としての空白が入ってるとシェル実行に失敗して autotest できないよ
超具体的には
C:/Program Files/ruby-1.8/lib/ruby/gems/1.8/gems/rspec-1.3.0/bin/spec
とか
C:/Documents and Settings/俺/デスクトップ/hoge/spec/hoge_spec.rb
とかが

>autospec
loading autotest/rspec
C:\Program Files\ruby-1.8\bin\ruby C:/Program Files/ruby-1.8/lib/ruby/gems/1.8/g
ems/rspec-1.3.0/bin/spec --autospec C:/Documents and Settings/俺/デスクトップ/h
oge/spec/hoge_spec.rb -O spec/spec.opts
C:\Program Files\ruby-1.8\bin\ruby: No such file or directory -- C:/Program (LoadError)

というエラーを出す
"" で引数括ってない云々のあれですな
空白入ってるパス上で Ruby 使うなよというのはまあ実際問題としてその通りかもしれなくもなくもない
803デフォルトの名無しさん:2010/03/31(水) 17:47:57
公開前提のライブラリ作ってるんだけど、ユーザー固有の設定を読みたいです
どこにどう置くべき?
環境変数 HOGE_DATA?
ホームディレクトリの .hoge みたいなドットファイル?
カレントディレクトリの hoge.yml みたいなファイル?
804デフォルトの名無しさん:2010/04/01(木) 00:31:40
「ユーザー固有の設定」クラスを作ってread_from_fileとかなんとかメソッド提供しとけ。
ファイル置く場所はライブラリじゃなくてアプリに任せた方が無難。
805デフォルトの名無しさん:2010/04/01(木) 11:27:11
やっぱBasic認証のダイアログが出てくる。
記憶しているのチェック入れているのにダイアログボックスがでてくる。
Basic認証のダイアログ出てきたときと出てこない判断の処理が
わかる人います?
内部的にはAutoItを使っているのでそれを勉強しなければならない?

806デフォルトの名無しさん:2010/04/01(木) 11:41:43
わかります
807デフォルトの名無しさん:2010/04/01(木) 13:57:52
>>804
ホームにある超細かいドットファイルってけっこう邪魔だよね
せめて ruby 関連は ruby でまとまってて欲しいもんだが
808デフォルトの名無しさん:2010/04/01(木) 14:49:16
>>807
JavaのPreferences APIが1ディレクトリにまとめてますな。WindwowsだとRegistryになったり。
809デフォルトの名無しさん:2010/04/01(木) 15:45:39
>>わかります
じゃあ教えてw
嫌なのはbasic認証のボックスがCheck入れても出てくること。
IEの設定?も考えたけど不安定なのでボックスがあるかどうかで判断したい
確かに教えてくれたとおりJoinの後ろに処理を書けば動くけど
なんとかならないものかと。できるときとできないときがあるのは
非常に困る。

810デフォルトの名無しさん:2010/04/01(木) 16:38:56
require 'net/http'

Net::HTTP.version_1_2

req = Net::HTTP::Get.new("/admin/")
req.basic_auth "uid","pwd"
Net::HTTP.start('xxxx.com', 80) {|http|
response = http.request(req)
puts response.body
}
とこんな感じで書けば動くんだがWatirとgoto(url)をどう絡めれば
いいかわからない。だれか教えてbasic認証を出したくないので

811デフォルトの名無しさん:2010/04/01(木) 16:52:25
違いを理解してないようなので初心者スレ行きの刑
812デフォルトの名無しさん:2010/04/01(木) 17:02:41
>>どう考えても初心者スレじゃないだろ。茶化すならレスするな
813デフォルトの名無しさん:2010/04/01(木) 17:51:12
IEでBASIC認証がどう動作するかの知識すらないのに?
814デフォルトの名無しさん:2010/04/01(木) 18:02:40
>>IEでBASIC認証がどう動作するかの知識すらないのに?
ヘッダーにUIDとPWDを入れるんだろ。
それぐらいしってる。だから出るときと出ないときがあるから
こまっている
815デフォルトの名無しさん:2010/04/01(木) 18:10:13
>>811
初心者スレでも男割りだ
816デフォルトの名無しさん:2010/04/01(木) 19:15:38
お前らって心が狭いな
817デフォルトの名無しさん:2010/04/01(木) 19:42:50
2ちゃんは取り扱い難しいからな。
ヘソ曲げたらあきらめることよろし。
818デフォルトの名無しさん:2010/04/01(木) 19:52:11
分かる人だけレスしてください
819デフォルトの名無しさん:2010/04/01(木) 20:15:53
>>814
違う
HTTP AuthorizationについてとIEにおける実装(の推測値)を調べろ
基本的に全てIEが管理していて内部動作には関与できないし相手のサーバの挙動の制御もできない
820デフォルトの名無しさん:2010/04/01(木) 20:26:45
ま、基本、IEさんの奴隷だからな
821デフォルトの名無しさん:2010/04/01(木) 21:38:47
分かる人だけ質問してください
822デフォルトの名無しさん:2010/04/01(木) 22:42:46
ダイアログ出てこないケースに決め打ちしていいなら
401返してきたら認証しといてくれるようなプロキシを
IEと対象サイトとの間に噛ませてやればいいんじゃねえの
823デフォルトの名無しさん:2010/04/02(金) 00:56:06
WebProg板かWindows板かソフトウェア板かのどこかで基礎知識を
授けてもらうのが先ってことでいいのかな。よくわからんけど。
824デフォルトの名無しさん:2010/04/02(金) 00:58:17
そもそもwatirに負荷を求めるのが無理。
2日ぐらい続けているとwin32oleで落ちる。
812のコードは普通に動く。
825デフォルトの名無しさん:2010/04/02(金) 01:37:47
解決しました。
scriptBrowserKを使うことにしました。
rubyは(watir)使い物にならない(テスト用は別ですよ)
ことがわかりました。
お騒がせしました。
826デフォルトの名無しさん:2010/04/02(金) 13:29:07
ageに気付いてないんだろうなあ
827デフォルトの名無しさん:2010/04/04(日) 07:11:24
age/sageなんてどうでもいいじゃんと思うのは俺だけかいな?
828デフォルトの名無しさん:2010/04/04(日) 11:46:52
未だにsageろなんて言ってる煩い人は専ブラ使ってないのかな?
sageろだageろだ言ってる2ch廃人の癖に
829デフォルトの名無しさん:2010/04/04(日) 11:49:28
そういう意味じゃないと思うが

ageてると目立つのは確かだ
830デフォルトの名無しさん:2010/04/04(日) 11:51:30
変なのが来ちゃうからだろう

しかし大規模規制中でム板もIPv6板も閑古鳥だお
831デフォルトの名無しさん:2010/04/04(日) 11:57:04
V6板は平常営業だろw
先日のDDoSアタックの時には生存鯖としてちょっと賑わったがw
832デフォルトの名無しさん:2010/04/04(日) 15:38:51
iPadならRubyもサクサク動くのかなぁ。
脱獄できるかが問題だがw
833デフォルトの名無しさん:2010/04/04(日) 17:03:40
> しかし大規模規制中でム板もIPv6板も閑古鳥だお

いまくらいの方がちょうど良いです
834デフォルトの名無しさん:2010/04/04(日) 18:34:00
>>824が自演失敗(=ageは釣り)って話でいいのかな
835デフォルトの名無しさん:2010/04/07(水) 15:58:16
マカってホント情報弱者だな。
836デフォルトの名無しさん:2010/04/07(水) 16:19:29
835のボットこんなスレにまで来るようになったのか。
837デフォルトの名無しさん:2010/04/09(金) 10:12:33
> NameError: uninitialized constant FIle

イライラ
838デフォルトの名無しさん:2010/04/09(金) 10:50:19
SHiftキーはすばやく離せ、それくらいできるだろ初心者か
839デフォルトの名無しさん:2010/04/09(金) 12:03:18
>>837は自嘲を込めてレスしたのさ、きっと
840デフォルトの名無しさん:2010/04/09(金) 16:48:12
今日だけニートやめようと思ってハロワに行ってきたらRubyでの求人があった
東京でもないのに珍しい
841デフォルトの名無しさん:2010/04/09(金) 16:57:59
幾ら?
842デフォルトの名無しさん:2010/04/09(金) 17:21:35
16万円
843デフォルトの名無しさん:2010/04/09(金) 17:44:27
こちらで良いのかわかりませんが、質問させてください。

TokyoCabinetのRuby用APIをDebian上で使いたいと思っています。
http://blog.livedoor.jp/sasata299/archives/51322051.html を見ながら設定したのですが、以下のようなLoadErrorになってしまいます。

/usr/local/lib/site_ruby/1.8/i486-linux/tokyocabinet.so: /usr/local/lib/site_ruby/1.8/i486-linux/tokyocabinet.so: undefined symbol: tccmpint32 - /usr/local/lib/site_ruby/1.8/i486-linux/tokyocabinet.so (LoadError)
from text.rb:2

text.rbでは、
  require 'tokyocabinet'
として、tokyocabinetを呼び出しているだけです。
どこが悪いのかわかる方がいらっしゃいましたら、ご教授お願いします。
ちなみに、 /etc/ld.so.conf に "/usr/local/lib" を追記しましたがダメでした。
844デフォルトの名無しさん:2010/04/09(金) 18:01:04
sudo ldconfig した?
845デフォルトの名無しさん:2010/04/09(金) 18:04:37
ldconfig は?
846デフォルトの名無しさん:2010/04/09(金) 18:12:17
レスありがとうございます。
# ldconfig しましたがダメでした・・・
847デフォルトの名無しさん:2010/04/09(金) 18:32:30
ldconfig -vとすると使えるようになったライブラリ名がずらっと出る。
これに tokyocabinetのライブラリが出てないならtokyocabinet自体の
インストールの問題、出てくるならruby拡張のほうの問題かなぁ。
848デフォルトの名無しさん:2010/04/09(金) 19:39:02
なるほど、ldconfig -vですか。
知りませんでした。

実行した結果、以下の2箇所に引っ掛かりました。
tokyocabinetインストール時も特にエラーらしきものはなかったと思います。

/usr/local/lib:
libtokyocabinet.so.9 -> libtokyocabinet.so.9.6.0
/usr/lib:
libtokyocabinet.so.3 -> libtokyocabinet.so.3.2.0

tokyocabinet-ruby も特にエラー吐かれてなかったので問題ないと思うのですが・・・
ん〜、うまくmakeできてないのだろうか・・・
849デフォルトの名無しさん:2010/04/09(金) 20:00:07
いわゆるRuby関係ないという奴だな
850デフォルトの名無しさん:2010/04/09(金) 20:03:45
関係あるかないかといえばあるほうだな
851デフォルトの名無しさん:2010/04/09(金) 20:07:48
Rubyが関係あるかどうかを判断するだけのスキルがあったらこんな聞き方しねえというのは確かだな
852デフォルトの名無しさん:2010/04/09(金) 20:10:48
undefined symbol: tccmpint32
853デフォルトの名無しさん:2010/04/09(金) 20:16:48
Ruby使用中にぶち当たるならとりあえずはスレ担当でいいじゃねーかとも思う
854デフォルトの名無しさん:2010/04/09(金) 21:19:34
切り分けができてない段階で持ってくるのはしゃーないべ。
できれば切り分けてから来てほしいのはその通りだけどさ。
855デフォルトの名無しさん:2010/04/09(金) 22:01:32
tcというプレフィックスのシンボル(関数)が見つからないわけだが、
これは名前から分かるようにTokyoCabinetが提供している関数。
ということは tokyocabinet-ruby から libtokyocabinet.soが見えて
いない状態。

たぶん
ldd /usr/local/lib/site_ruby/1.8/i486-linux/tokyocabinet.so
とすると libtokyocabinet.so とリンクできていないんじゃないかね。

ところで、libtokyocabinet.so が /usr/lib と /usr/local の両方に
あるってことは、古いほうとリンクしちゃってて、そっちには
tccmpint32がない、とか。
856デフォルトの名無しさん:2010/04/09(金) 23:40:44
とりあえずですが、TokyoCabinetのrequireが通りました。

>>855さんの言うとおり、
ldd /usr/local/lib/site_ruby/1.8/i486-linux/tokyocabinet.so
としてみたら
libtokyocabinet.so.3 => /usr/lib/libtokyocabinet.so.3 (0xf7db9000)
となり、古い方にリンクが張られているようでした。

ただ、この動的リンクの修正方法がよくわからなかったため、とりあえず
ln -s /usr/local/lib/libtokyocabinet.so.9 /usr/lib/libtokyocabinet.so.3
として静的リンクに置き換えてみたらErrorLoadは無くなりました。
やはり、おっしゃっていたように古いものだからtccmpint32が無かったようです。

よくよく考えれば、これはLINUXのシステム的な問題でしたね・・・
スレ違いな質問で申し訳ありませんでしたが、親切に答えて頂けて凄く助かりました。
>>844-855の皆様、ありがとうございました。
857デフォルトの名無しさん:2010/04/10(土) 00:58:31
他の部分で libtokyocabinet.so.3 が古い方を期待してるものが動かなくなってないかどうかが心配w
858デフォルトの名無しさん:2010/04/10(土) 03:58:24
mime_responds.rb---
def self.generate_method_for_mime(mime)
sym = mime.is_a?(Symbol) ? mime : mime.to_sym
const = sym.to_s.upcase
class_eval <<-RUBY, __FILE__, __LINE__ + 1
def #{sym}(&block) # def html(&block)
custom(Mime::#{const}, &block) # custom(Mime::HTML, &block)
end # end
RUBY
end

railsのソースに以上のようなメソッドがあります。
このメソッドでは、symの値をメソッド名としてを新しいメソッドを定義していると思うんですが、
その前後にある、"<<-RUBY, __FILE__, __LINE__ + 1"-"RUBY"は何をしてるんでしょうか?
859デフォルトの名無しさん:2010/04/10(土) 04:15:11
class_evalの第一引数にヒアドキュメント(RUBYから下のほうにあるRUBYまで)で文字列を渡して
第二引数に現在のファイル名(mime_responds.rb)
第三引数に現在のファイル中の行番号+1を渡してるんだろう

おそろしす
860デフォルトの名無しさん:2010/04/10(土) 04:24:53
普通に定型文じゃん
861デフォルトの名無しさん:2010/04/10(土) 05:58:51
>859
>860
ヒアドキュメントとそれと一緒に与える引数の与え方がわかってなかったです。
よくわかりました、有り難うございます。
862デフォルトの名無しさん:2010/04/13(火) 11:38:15
コマンドscript/dbconsoleでsqlite上のテーブルを確認したいのですが
以下のエラーが発生してうまくいきません。よろしくお願いします。

Couldn't find database client: sqlite3. Check your $PATH and try again.

[環境]
Windows Vista Home Premium SP2
ruby 1.9.1p378 (2010-01-10 revision 26273) [i386-mingw32]
Rails 2.3.5
sqlite3-ruby (1.2.5)






863デフォルトの名無しさん:2010/04/13(火) 11:44:34
>>862
ライブラリだけではなくコマンドとしてのsqlite3が必要。
864デフォルトの名無しさん:2010/04/13(火) 12:08:06
IronRuby 1.0出たのか。
865デフォルトの名無しさん:2010/04/13(火) 12:17:12
ようやく本命登場だな
866デフォルトの名無しさん:2010/04/13(火) 12:20:31
>>863
レスありがとうございます。
下記サイトよりファイルをダウンロードしてパスが通っているC:\Ruby19\binへ置きましたが
同じ現象のままです。他にしなければいけないことがあるのでしょうか?

サイト:
http://www.sqlite.org/download.html
ダウンロードして展開後、binフォルダへ配置したファイル
sqlite3.exe
sqlite3.def
sqlite3.dll
867デフォルトの名無しさん:2010/04/13(火) 13:33:23
Visual Ruby はまだか?
868デフォルトの名無しさん:2010/04/13(火) 14:24:01
to_yaml が超かっこ悪いのでなんとかしてください
YAML ファイルを読んでオブジェクトにする機能だけ欲しいです
869デフォルトの名無しさん:2010/04/13(火) 14:37:28
あるだろボケ
870デフォルトの名無しさん:2010/04/13(火) 14:52:11
>>866
cmd.exeからsqlite3を実行できてるの?
871デフォルトの名無しさん:2010/04/13(火) 15:02:29
>>868
require 'yaml/syck'
File.open(path){|f| YAML::Syck::Parser.new.set_resolver(YAML::Syck::DefaultResolver).load(f)}

たぶんこれが最短

>>869
用意されてるから簡単だよね!
872デフォルトの名無しさん:2010/04/13(火) 15:18:21
>>870
はい、sqlite3と打ち込んだ場合は起動しますね。
どうしてもうまくいかないんで、回避策としてFireFoxアドオンのSQLite Managerでテーブルの内容を確認してます。
873デフォルトの名無しさん:2010/04/13(火) 16:53:34
autotest に書いて便利な気がするスクリプトを作ってるんだけど、
これって autotest 内で組み込まれたときに何かエラーが出てても表示されなくね
autotest が即終了するから何か間違ってるっぽいんだけどどこがどう間違ってるのかわかんねwwwww
874デフォルトの名無しさん:2010/04/13(火) 19:44:55
YAML.load_fileじゃだめなの?
875デフォルトの名無しさん:2010/04/13(火) 19:47:08
Jrubyが必要なシチュエーションってなんだろうかね。
876デフォルトの名無しさん:2010/04/13(火) 19:48:16
Google App Engine は Ruby 対応していないから
Java で Jruby しかない
877デフォルトの名無しさん:2010/04/13(火) 19:54:50
Google App Engineが必要なシチュエーションってなんだろうかね。
878デフォルトの名無しさん:2010/04/13(火) 19:59:56
>>877
無料でサーバーサイドプログラミングで遊べる
879デフォルトの名無しさん:2010/04/13(火) 20:03:24
GAEは1日ごとのクォータが質の悪いソーシャルゲームみたいな感じだ
今日できるのはここまでーあとはまた明日ー

>>874
たぶん yaml.rb で読み込まれ定義されるようなヘルパーなメソッドが不要ということかと
いちいち Object とか再オープンすんじゃねーよとはちょっとだけ思う
880デフォルトの名無しさん:2010/04/15(木) 03:00:32
>>878
Herokuが無料だと5MBぐらいまでだっけか
881デフォルトの名無しさん:2010/04/15(木) 10:04:31
rake version:bump すると

 1. VERSION ファイルを更新する
 2. git commit する
 3. gemspec ファイルを更新する

という順番になるのはなんで?
gemspec ファイルを更新してから git commit して欲しいんだけど、なんか理由あるのかな
882デフォルトの名無しさん:2010/04/15(木) 15:54:47
rake version:bunp:patch
rake gemspec
git commit -m "and gemspec updated"
rake build
gem install pkg/hoge-0.1.2.gem

git commit -m "and gemspec updated" の代わりに git commit --amend して
コミットメッセージの 2行目に gemspec について書くのでもいいと思う
こっちのほうがめんどくさくないかも
883デフォルトの名無しさん:2010/04/16(金) 18:20:52
IronRuby1.0のオプションに -2.0 っていうのがあって
説明に"Ruby 2.0 mode"って書いてあるんだが
2.0の仕様で決まってるのなんかあったけ?
884デフォルトの名無しさん:2010/04/16(金) 18:25:44
1.9.1だだ滑りモードみたいなものの別名と推測
885デフォルトの名無しさん:2010/04/16(金) 19:20:51
2.0であんな仕様変更が起きるだなんてことは、まだ誰も知らないのであった……
886デフォルトの名無しさん:2010/04/17(土) 17:00:33
無理してメソッド説明とか英語の長文で書かなくてもいいだろうか
我ながらかなり怪しい文章なんだけど
887デフォルトの名無しさん:2010/04/17(土) 17:07:33
要点が2行以上に渡って書いてあるとキレる
引数が *params としか書いてない場合もやっぱ若干キレる
1行しか表示しない可能性を全く考慮してねえ

よって最近キレっぱ
メソッドの補完説明とかみんな使ってないのだろうか
888デフォルトの名無しさん:2010/04/17(土) 17:21:28
使ってないなあ
889デフォルトの名無しさん:2010/04/17(土) 18:04:23
ri とかで使われること全く意識してないというかどうすればいいのかすらわからん
890デフォルトの名無しさん:2010/04/17(土) 18:06:07
rspec -fs -c の結果コピペ
891デフォルトの名無しさん:2010/04/17(土) 19:38:40
ソースにドキュメントとしてのコメントをきっちり入れるとかのこだわりって、
あんまり受け入れられてない気がする。
みんながやらなきゃ意味が半減な割には、
全面に押し出して周知するということもなされてないように思うし。
892デフォルトの名無しさん:2010/04/17(土) 19:47:55
コメント入ってても書いた本人しか意味判らなかったりするからな
893デフォルトの名無しさん:2010/04/17(土) 19:58:47
必要なもの

 ・ メソッド解説コメントの簡易書式の策定(Yardは面倒すぎる)
 ・ メインとサブの言語でのコメント併記併用手段の提供
894デフォルトの名無しさん:2010/04/17(土) 20:02:35
>>891
モノが成熟してたり手を動かす人間が掃いて捨てるほどいるのなら
その方針の方がいいんだけど、
モノが未成熟というかまだまだ変えていきたいという気持ちがあって
人手が限られているのなら、そういう方針は諦めて敷居を低くする方に倒すのも仕方ないかもね
895デフォルトの名無しさん:2010/04/17(土) 20:09:39
def hoge(*params)
 p = Hash.new
 if p.kind_of?(Array)
  p[:title] = params[0]
  p[:body] = params[1]
 else
  p[:title] = params[:title] || params['title']
  p[:body] = params[:body] || params['body']
 end
 …



hoge(キーが:title, :bodyのHashかそれを意味する値2個)

というマニュアル表記に自動でする方法
896デフォルトの名無しさん:2010/04/17(土) 20:18:39
>>895
rdoc 生成後に rake task で置換すればできそうな気もする
897デフォルトの名無しさん:2010/04/17(土) 20:37:20
require 'HashMaker'

def hoge(*params)
keys = [:title. :body]
p = HashMaker.build(params, keys)

でメソッド中に HashMaker.build(メソッド引数名 を検知したら
マニュアルの引数表記を適当に書き換える

とかいうのはどう
898デフォルトの名無しさん:2010/04/17(土) 20:38:03
そもそものアレとして引数の変換クラスは既にあるような気がする
899デフォルトの名無しさん:2010/04/18(日) 09:07:56
英語のメソッド解説は日本語で最後まで書いて
推敲してからそれを訳すとわりとうまくいくことに最近やっと気づいた

最初から英語で書くと最終的によくわからん羅列の単語になる
900デフォルトの名無しさん:2010/04/18(日) 09:22:00
ネイティブじゃないんだし書く英文は高校生レベルで十分と思ってたら
高校生レベルの英作文すらできてなかったでござる
901デフォルトの名無しさん:2010/04/18(日) 14:53:56
真剣に書いた英語がネイティブに正直、幼稚園レベルといわれたから困るです…
902デフォルトの名無しさん:2010/04/18(日) 15:11:05
下手な英語解説を読ませられるくらいならソースコード見たほうがいいという指摘にぐぅの音も出ず
けっこう頑張ってたくさん書いたんだがちょっと涙
903デフォルトの名無しさん:2010/04/18(日) 15:14:26
おいやめろ
英語ドキュメントつけようとか思ってた心が折れる
904デフォルトの名無しさん:2010/04/18(日) 15:56:37
おれも英語はかなり苦手だが、コツは元の文章をすごくシンプルにすることだよ
関係代名詞のオンパレードみたいのは絶対ダメ
シンプルにすればそうそうおかしな訳にはならないしかなり伝わる
ドキュメントなら箇条書きとかを効果的に使うといいよ
905デフォルトの名無しさん:2010/04/18(日) 21:39:18
>>901
じゃあそのネイティブに清書してもらうといいんじゃね?
おめーらにもわかるように書いてやったんだくらいの勢いで
「幼稚園レベル」という言葉に悪意というか意味のない優越感を感じるので

「英語では普通こう書く」って感じで言ってくれる人なら、素直に聞けると思うんだ
906デフォルトの名無しさん:2010/04/18(日) 21:48:00
日本語でも幼稚園レベルだったってことはないだろうな
907デフォルトの名無しさん:2010/04/18(日) 21:56:51
実際は>>904の英文は大変な苦労をして気を利かせて空気読んで解読されているだけなのであった
908デフォルトの名無しさん:2010/04/19(月) 01:16:07
祝・2週間くらいかけてこつこつ作ったクラスがやっぱハッシュ連結した文字列作成で充分という結論到達
909デフォルトの名無しさん:2010/04/19(月) 11:48:36
ruby 1.8.7 (2010-01-10 patchlevel 249) [i386-mswin32]
require 'rubygems'
require 'pathname'
require 'hpricot'
require 'mechanize'
require 'kconv'
require 'optparse'
require 'image_size'
require 'parsedate'
require 'uri'
require 'net/http'


こんなファイルを
exerb ActiveScriptRuby 1.8.7(p249) with-winsock2 tcl-stub
でexe化したら、
プロシージャ エントリ ポイント rb_thread_join がダイナミックリンクライブラリ 〜.exe(自分で作ったファイル名)から見つかりませんでした。
って出ます。。。
同じ症状になった方がいらっしゃいましたら、ご教授願います。。。
910デフォルトの名無しさん:2010/04/19(月) 11:53:39
…とりあえず、 mechanize があるなら uri と net/http はいらないな…
require しただけのスクリプトを exerb しても同じエラーになるんじゃないのなら require は無関係
911デフォルトの名無しさん:2010/04/19(月) 13:44:54
わかるひとだけレスしてください
912デフォルトの名無しさん:2010/04/19(月) 14:50:38
>>909 です。
>>910さん、御回答有難うございます。
取り敢えず、uri net/http を削除して、requireだけの文にしてexe化してみました。
そして、同じエラーが出ました。

require文をいくつか削除してみたところ、
rubygemsをrequireしていると、このエラーが出るようです。

と、ここまで判別出来たところで解決方法が分かりません。。。
ダメな奴ですみませんが、おつき合い願います。
913デフォルトの名無しさん:2010/04/19(月) 14:57:37
rubygems exerb でぐぐるとなんぞ
914デフォルトの名無しさん:2010/04/19(月) 15:32:37
>>913さん、またまた有難うございます。
require 'rubygems' unless $Exerb
に変更したところ、
requireだけのファイルをexe化したやつは
何もエラーを吐かなくなりました。

が、いぜん、ガリガリに書いた自分のファイルのexe化後のやつは同じエラーが出てしましました。。。

引き続き、解決策を募集中です。
こちらでも色々ググってみます。
915デフォルトの名無しさん:2010/04/19(月) 15:39:05
仮に無事に exe 化が出来たとして
サイズが実用的じゃなかったりとか
916デフォルトの名無しさん:2010/04/19(月) 15:43:10
>>915さん、ありがとうございます。
ファイルサイズですが、現在5.05MBあります。

このサイズでは現実的では無いのでしょうか?
917デフォルトの名無しさん:2010/04/19(月) 15:44:36
>>916です。
書き忘れました。
exe後のサイズが5.05MBです。
rbの状態では21.2KBです。
918デフォルトの名無しさん:2010/04/19(月) 16:48:34
>>917です。
自己解決しました。
ttp://d.hatena.ne.jp/irohiroki/20100301/rails_to_exe
こちらのサイトを参考に、RubyScript2Exe で試してみたところ、なんのエラーもなくすんなり実行出来ました。

お騒がせして大変申し訳ありませんでした。
また、色々と御教授頂き有難うございました。
皆様に助言を頂き、とても勇気付けられました。
また何か有りましたらよろしくお願い致します。
919デフォルトの名無しさん:2010/04/20(火) 10:11:35
自作ライブラリを公開しようと思うんだけど、ライセンスはどうすればいいかな
正直、他人様相乗り型ラッパーで自分の名前消してもいいくらいのえいやーな感じのライブラリなんだけど
920デフォルトの名無しさん:2010/04/20(火) 11:10:26
ゆるいライセンスならXライセンスとか
http://www.opensource.org/licenses/mit-license.php
3項目BSDライセンスとか
http://www.opensource.org/licenses/bsd-license.php
921デフォルトの名無しさん:2010/04/20(火) 11:28:37
個人のライブラリなら揉めてから決めてもいいような気もする
が揉めてからだと期限切られてる状態で逆に面倒かもしれん
922デフォルトの名無しさん:2010/04/20(火) 12:37:13
Rubyは刑務所でも職業訓練に利用されているそうだが
そのうち刑務所出身者=>Ruby使いっていう図式が出来て
さらにRuby使い=>刑務所出身者って勘違いするひとが出そう
923デフォルトの名無しさん:2010/04/20(火) 12:47:08
>Rubyは刑務所でも職業訓練に利用されているそうだが
いいえ
924デフォルトの名無しさん:2010/04/20(火) 12:54:20
ベンチャー逃げたんだっけ
続報というか実施すら聞かないな
925デフォルトの名無しさん:2010/04/20(火) 13:01:06
福岡県の支援事業なのでこっちはたぶん逃げない
ttp://www.pref.fukuoka.lg.jp/d14/rubykoyou2010.html
> 福岡県では、生産性の高い国産プログラミング言語「Ruby(ルビー)」を活用して事業拡大を図る県内のIT関連企業が、
> ソフトウェア開発技術者、セールスエンジニア等を新規に雇用して実施するソフトウェア開発に対して支援する
> 「Rubyビジネス雇用創出支援事業」を実施します。
> 本事業はRubyの普及・発展に寄与するソフトウェア開発事業に対し、人件費の支援を行います。
926デフォルトの名無しさん:2010/04/20(火) 13:16:25
OSI認証のをゆるめなのから並べるとだいたい以下のとおり、
* zlib/libpng license
* ISC License/2-clause BSDL
* 3-clause BSDL (オレの名前で宣伝するな条項)
* 4-clause BSDL (宣伝条項) (GPL非互換)
* Ruby's (GPL互換、BSDL非互換) (OSI非認証)
* Apache License (Apache License 2.0とGPL3以外は非互換)
* GPL (2と3は非互換)

ISC Licenseが短いのでオススメです。
927デフォルトの名無しさん:2010/04/20(火) 13:24:57
文が長いと把握も大変だしなー
jeweler に gem 作ってもらうとくっついてくるライセンス条項くらいがわかりやすいと思う
928デフォルトの名無しさん:2010/04/20(火) 14:08:53
>>927
http://github.com/technicalpickles/jeweler/blob/master/lib/jeweler/templates/LICENSE
のことかな、これは MIT License ですな。ISC License/2-clause BSDLと意味としてはだいたい同じ
929デフォルトの名無しさん:2010/04/20(火) 15:41:44
GPLの無駄な長さは異常
あれは普通は読めない

まあ、ソフトウェア許諾なんてそもそもそういうもんだけどな
ブン投げ型の逃げ逃げライセンスのほうが不自然といえば不自然
930デフォルトの名無しさん:2010/04/20(火) 17:35:13
各ライセンスをまとめて、
わかりやすく説明・比較した本とか需要があると思う
読んでる内にわからなくなるし、すぐ忘れるし、ましてやほかと比較とかきつい
わかってると思ってるやつも結構誤解してることとかあるんじゃないだろうか
931デフォルトの名無しさん:2010/04/20(火) 20:52:11
>>930

こういうの?
Amazon.co.jp: ソフトウェアライセンスの基礎知識: 可知 豊: 本
http://www.amazon.co.jp/dp/4797347368/

932デフォルトの名無しさん:2010/04/20(火) 22:55:57
>>931
>可知 豊
 惜しいな 可也優多寡 とか 価値豊 だったら面白かったのに
933デフォルトの名無しさん:2010/04/20(火) 23:15:39
昔見かけた、matzの妄想ライセンス

Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:

1. DO NOT SUE ME.
2. DO NOT EVEN THINK ABOUT SUING ME.

誰にでも、以下の条件の元で、本ソフトウェアを商用アプリを含むあらゆる目的で
使用し、また自由に変更・再配布することを許諾する。

1. 私を訴えないこと
2. 私を訴えようと考えさえしないこと

ttp://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/24727
934デフォルトの名無しさん:2010/04/21(水) 00:43:19
>>931
サンクス。もうあったのか。本屋で良さそうか確認するよ
935デフォルトの名無しさん:2010/04/21(水) 09:21:46
map(:first) とか sort_by(:length) とか書けないのはなんで?
引数として渡されたシンボルからブロックへの変換を個々のメソッドで
やらないといけないのが面倒だから?
936デフォルトの名無しさん:2010/04/21(水) 09:28:25
$_ を再発明するのがヤだったのだろ
937デフォルトの名無しさん:2010/04/21(水) 09:45:47
>935

%w[a aa aaa aa a].sort_by(&:size) じゃダメなんですか?
938デフォルトの名無しさん:2010/04/21(水) 10:05:58
rake spec がどーしてもなんか微妙に失敗するのなんでかなと思ってたら
開発ディレクトリのファイルではなく自分でインストールしたパッケージのほうを読んでた
そのまま使える exsample だからその中では require 'hoge' するのが当たり前とか思ってた

$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '/../lib/'))
require 'hoge'

>>937
& を書くのが冗長に見えるんじゃないですかね
939935:2010/04/21(水) 11:42:57
>>937
別に & がダメとか冗長とか思ってるわけではないです。
なんというか、&:symbol を使うのって

各要素に適用するブロックを渡す というよりは
各要素に送るメッセージを指定する という方が感覚的にしっくりくるので(自分の場合)

渡したシンボルがそのように解釈されると嬉しいかなと思った次第
940デフォルトの名無しさん:2010/04/21(水) 12:42:10
ライセンスってことはライブラリ公開してる人がいるのか

今どこで公開するのがいいかな
GitHub? RubyForge? RubyGems.org?
941デフォルトの名無しさん:2010/04/21(水) 12:56:52
野良ライブラリが増えるのはいいことなのだろうかと最近少し思う
公開しないほうがノイズが減って世界は幸せなのではないかと
942デフォルトの名無しさん:2010/04/21(水) 13:07:00
>>941
それが実際に必要か不要かはシステムと世間があとで考えるので、
使用可能である程度形になってて場合によっては便利、というライブラリならガンガン追加してください

全然ダウンロードされず更新も外部参照もされないライブラリは検索一発目に出さずに
「その他○○件」に回すとか色々手はあるわけでして
ノイズが見えるのは単純にシステムの欠陥であって、要素自体の欠陥ではありませぬ

>>940
rubygems.org にあげて、詳細ページの Homepage のリンクを GitHub のアカウントページにする、というのが
現在の個人ライブラリでわりとポピュラーな形態に見えます
943デフォルトの名無しさん:2010/04/21(水) 19:28:50
395 nobodyさん [sage] 2010/04/21(水) 18:18:33 ID:??? Be:
    ■参考サイト
    <英語> http://www.robyonrails.com
    本家:http://www.rubyonrails.org
    API document:http://api.rubyonrails.com/
    開発者のblog:http://weblog.rubyonrails.org/
    参考wiki:http://wiki.rubyonrails.org/rails

    これ全部ドメイン失効で見れないんだけど
944デフォルトの名無しさん:2010/04/21(水) 19:35:41
>>943
http://rubyonrails.com/

どうしてこうなった、かは知らない
945デフォルトの名無しさん:2010/04/21(水) 19:40:43
http://rubyonrails.com/documentation

Rails: Complete API
とか全部だめになってる
946デフォルトの名無しさん:2010/04/21(水) 19:42:00
ttp://www.ruby-lang.org/
がクラックされたこともあったからな
いまさら何があっても驚かないぞ
947デフォルトの名無しさん:2010/04/24(土) 01:59:48
Ruby-GNOME2でThreadを使うとCPUを消費しまくるのは俺だけか。例えば
require 'gtk2'
Thread.start{ sleep 10 }
Gtk.main
とするとひどいことになってしまう
948デフォルトの名無しさん:2010/04/24(土) 03:32:56
生まれて初めてきちんとライブラリ公開して rubygems.org にあげた
ライブラリ名に騙されてしまったうっかりさんが半日で9人もいてダウンロードしてくれた模様
…なんだろう胃が痛む
特定の外部プログラム用ライブラリというニッチなとこだが便利に使ってもらえてるだろうか
949デフォルトの名無しさん:2010/04/24(土) 07:01:17
基本ユーザーな俺はおまえみたいな連中のおかげで助かってる
がんばってくれ
950デフォルトの名無しさん:2010/04/24(土) 09:04:51
951デフォルトの名無しさん:2010/04/24(土) 09:28:18
>ライブラリ名に騙されてしまったうっかりさん

素人動画ですねわかります
952デフォルトの名無しさん:2010/04/24(土) 12:10:40
>>950
サンクス。でも使ってるのはソースからコンパイルした0.19.4だった。
それにメインループが止まるわけじゃない(gtk/sample/misc/threads.rbも動くことは動く)からこれとは別な気がする。
953デフォルトの名無しさん:2010/04/24(土) 18:34:48
某氏がApple信者に総攻撃くらっててワロタ
954デフォルトの名無しさん:2010/04/24(土) 19:08:15
Appleのライセンスは綺麗なライセンス
955デフォルトの名無しさん:2010/04/24(土) 22:05:53
>>953
ただ氏?
でも見当違いな批判ばっかりだったような。

HTC Desireの方がiPhone 3Gよりキビキビ動く
なんて発売時期が大幅に違うんだからある意味当然の感想にすら
噛み付いてた信者が居たのにはちょっと苦笑w
956デフォルトの名無しさん:2010/04/24(土) 22:19:31
たださんのは個人の素直な感想に過ぎないよな。
それを信者が寄ってきて叩くから、Apple信者キモイという話になる。
957デフォルトの名無しさん:2010/04/25(日) 03:22:21
1000とったらmoonwolf
958デフォルトの名無しさん:2010/04/25(日) 06:53:17
単刀直入に聞くけど、Rubyって何でこんな遅いの?
とあるGPをJavaで書き直したら10倍速かったわ。
根本的に遅い原因があるのかどうか知らないけど、あるとして、その機能をOFFにするオプションとか実装出来ないの?
959デフォルトの名無しさん:2010/04/25(日) 07:15:52
スクリプトを沢山読み込むせい
バイナリにすればいいのに
960デフォルトの名無しさん:2010/04/25(日) 07:17:26
基本機能の多くがばいなりでうごいてないんだろ
961デフォルトの名無しさん:2010/04/25(日) 07:31:05
>>958
人間にとって読みやすくわかりやすく使いやすいことを第一義にしてあるから

人間にとって読みにくく理解困難で記述煩雑でもいいのならアセンブラで爆速プログラムを書くといいぞ
962デフォルトの名無しさん:2010/04/25(日) 07:43:55
空白頼りのどうとでも取れるあいまいな構文を廃し、
いちいちオブジェクト生成するのをやめれば大幅な速度向上が望める

DSLが不可能になってオブジェクト指向プログラミングができなくなるが、まあ速度向上の前には些細な問題だろう
963デフォルトの名無しさん:2010/04/25(日) 07:48:10
>人間にとって読みやすくわかりやすく使いやすいことを第一義にしてあるから
少なくともこれらの点に関してはJavaや他の言語と大差ないと自分は思うし、それにまつもとさんもそんなことは一言も言ってないが。
もし、そんな風にRubyを理解しているのなら、何か間違ってるとおもわれ。
964デフォルトの名無しさん:2010/04/25(日) 08:07:34
コンパイル済みでメソッド探索等が不要なjavaが(rubyと比べて)早いのは当り前
実行速度が必要ならrubyは選択肢に入らない、常識だろ
965デフォルトの名無しさん:2010/04/25(日) 08:37:23
JavaとRubyで速度比較ですか。。。
966デフォルトの名無しさん:2010/04/25(日) 08:42:27
むしろ10倍程度で済んだということはRubyが健闘してると思うのだが
967デフォルトの名無しさん:2010/04/25(日) 08:45:05
俺はむしろ読みやすさじゃなく、書きやすさだと思ってる。
メソッドチェーンしやすいお陰で「カーソルを戻す」操作が凄く少ないと思う。
処理順のまま右に継ぎ足し継ぎ足しで書けてしまうことが多いと感じる。
968デフォルトの名無しさん:2010/04/25(日) 10:07:17
Ruby は本家は遅いけど
別な所が作ったのは速いんじゃなかったっけ?
969デフォルトの名無しさん:2010/04/25(日) 10:13:02
Javaはちょっと曖昧ではあるけど
コンパイラ言語とインタプリタ言語で速度比較するのはナンセンス
970デフォルトの名無しさん:2010/04/25(日) 10:26:43
まあじゃあPerlやPythonあたりと比較してスクリプト全体が高速なのかというと別にそうでもないわけだがw
Pythonより5倍遅いと言われてもふーんという感じだけど、Javaより10倍遅いと言われるとツッコミが入る
971デフォルトの名無しさん:2010/04/25(日) 10:42:32
まぁ適材適所ってことでいいんじゃないの。
Rubyで済むところはRubyで書けばいいし、
速度面でどうしても問題がでる場合は、より高速な言語で書けばいい。
972デフォルトの名無しさん:2010/04/25(日) 10:46:38
>>965
というか、Javaが「速い方で」ベンチマークされる時代が来たことに感無量だわ。
JavaVMの進化って素晴らしい。


類似の例だと「コスト以外なら何でも知っている」とか揶揄されてたLisp系言語が
普通に実用言語として良し悪しを語られてたのを見た時とか。
973デフォルトの名無しさん:2010/04/25(日) 13:42:19
それらは単純に、比較対象としてさらに遅いものが新規登場したせいなだけでは
974デフォルトの名無しさん:2010/04/25(日) 13:45:28
ねー質問

rubygems
rubygem

どっちがどう正しいの? rubygem が正式名で、複数形として使われてるの?
975デフォルトの名無しさん:2010/04/25(日) 13:56:06
rubygem が正しい
日本語の文章で「rubygems の…」とか書いてる奴は情弱

という電波を受信
解析に回します
976デフォルトの名無しさん:2010/04/25(日) 14:18:19
rubygemsがパッケージマネージャーで、
gemがそのパッケージだろ?
977デフォルトの名無しさん:2010/04/25(日) 14:18:56
rubygemsというツールがあって、それに対応したパッケージがgem(複数形gems)。
978デフォルトの名無しさん:2010/04/25(日) 15:25:01
gemが凶悪すぎるというのは間違いない
979デフォルトの名無しさん:2010/04/25(日) 17:29:04
ここでオレ様がrubybemsを
980デフォルトの名無しさん:2010/04/25(日) 17:46:21
ゲムじゃないから間違えるなよな!
981デフォルトの名無しさん:2010/04/25(日) 18:18:02
>>980
次スレよろ
982デフォルトの名無しさん:2010/04/25(日) 19:09:43
gem install hogeとしたときのriとrdocの生成が重過ぎる。
生成済みのもんをパッケージに入れといてくれないかな。
なんか最近は--no-riや--no-rdocがデフォだわ。
使う側はgemの利用者であって開発者じゃないんだからさ。
自動生成したドキュメントはソースコードと内容が重複してるからうんぬんはSCM上でだけやっとくれと思うんだがー。
983デフォルトの名無しさん:2010/04/25(日) 19:18:57
マシン買い換えろ
984デフォルトの名無しさん:2010/04/25(日) 21:30:55
>>982
俺もだ

3年前のデスクトップPCですら20秒かかる有様だからな
ネットブック上でriやrdocを生成しようものなら、何分かかるものやら
985デフォルトの名無しさん:2010/04/25(日) 21:50:23
だからそんなへぼマシンは捨てろと
986デフォルトの名無しさん:2010/04/25(日) 22:09:16
>>982
同感
987デフォルトの名無しさん:2010/04/25(日) 23:49:26
>>982
それ何回繰り返してるんだよ
988デフォルトの名無しさん:2010/04/26(月) 01:35:51
普段実行速度は問題にしないとか偉そうなこと言っておきながら
自分の身に降りかかると遅いと文句を言う姿は大層滑稽

というかPCが遅過ぎるんだと思う
消費電力以外のデメリットないんだしきちんと2年くらいのサイクルで買い換えろ
989デフォルトの名無しさん:2010/04/26(月) 08:32:56
>>988
そんなサイクルで買い換えるのはPC好きだけだ
壊れてもないものを誰が買い換えるんだよ

しかもRubyGems以外のソフトウェアは、すべて十分な速度で動いてるのに
990デフォルトの名無しさん:2010/04/26(月) 08:33:05
どっかの誰か一人がやればいいことを、各自でやってるのが馬鹿馬鹿しいという話
991デフォルトの名無しさん:2010/04/26(月) 09:24:00
>>990
全くだ、ソースで配って各自のマシンでコンパイルだなんて無駄にもほどがある
コンパイル済みで配布すれば全世界の人間のマシン資源と時間が節約できるのに
992デフォルトの名無しさん:2010/04/26(月) 09:34:49
gemをそういう風に改造してみたら?
993デフォルトの名無しさん:2010/04/26(月) 09:46:58
>>991
してるだろ
994デフォルトの名無しさん:2010/04/26(月) 10:43:09
Thread.newマダー
995デフォルトの名無しさん:2010/04/26(月) 10:50:08
>>991
まあそういうことだな
HTMLなどという自由度が高くて再利用困難な最終形式に近い形態で配布するメリットは薄い
本当の問題は、コンパイル済みで配っていないということではなくコンパイルシステムが鈍重なことだ
それを「コンパイル済みファイルの配布」という手段で逃げるのは問題の先送りに過ぎない
自前でRdoc作るときどうするんだって話だ
996デフォルトの名無しさん:2010/04/26(月) 11:22:45
997デフォルトの名無しさん:2010/04/26(月) 11:24:15
.rb 「おれがドキュメントだ !!」

のは冗談で
doxygen みたいので管理すれば
良くね?と思う春うららの吉宗であった
998デフォルトの名無しさん:2010/04/26(月) 11:42:22
rdoc は最初意図的にウェイト入れてるのかと思った
999デフォルトの名無しさん:2010/04/26(月) 12:11:27
1000デフォルトの名無しさん:2010/04/26(月) 12:17:45
1000
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。