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


184:デフォルトの名無しさん
10/05/14 20:42:35
しまった 8.10 か、ずいぶん古いなこれ

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

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

186:デフォルトの名無しさん
10/05/14 22:05:37
そんな古くねえよ

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

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

何の話だっけ

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

187:デフォルトの名無しさん
10/05/14 23:59:18
とても有用な報告だ

188:177
10/05/15 00:19:34
途中で切れてた
>>159
r27747以降でもやっぱり遅い?

189:デフォルトの名無しさん
10/05/15 00:31:51
>>181
ヴイスリャー

190:デフォルトの名無しさん
10/05/15 03:31:31
URLリンク(store.shopping.yahoo.co.jp)
ruby on matsue

191:デフォルトの名無しさん
10/05/16 00:08:09
>>180
ライダーマンdisってんのか、ぁあ?

192:デフォルトの名無しさん
10/05/16 03:54:42
PHPerだけどRubyラーメン食べてみた - あっきぃ日誌
URLリンク(d.hatena.ne.jp)

URLリンク(f.hatena.ne.jp)
URLリンク(f.hatena.ne.jp)
URLリンク(f.hatena.ne.jp)
URLリンク(f.hatena.ne.jp)
URLリンク(f.hatena.ne.jp)

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

193:デフォルトの名無しさん
10/05/16 04:15:06
Rubyとの関係が解らん
初音以外

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

195:デフォルトの名無しさん
10/05/16 11:14:53
開封すればするほどRubyと関係無くなっていく

196:デフォルトの名無しさん
10/05/16 11:18:38
Rubyロゴの海苔くらいは同封すべきだな

197:デフォルトの名無しさん
10/05/16 11:35:16
そうだねえ、プリント海苔の出番のはずなんだが

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

199:デフォルトの名無しさん
10/05/16 12:08:13

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



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

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

201:デフォルトの名無しさん
10/05/16 12:12:21
萌えRuby

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

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

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

204:デフォルトの名無しさん
10/05/16 17:37:59
>>199
出雲大社のなら欲しい

205:デフォルトの名無しさん
10/05/16 18:54:34
class C ; attr_accessor :data ; end

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

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


ピキッ

206:デフォルトの名無しさん
10/05/16 19:12:43
>>205
rspec 2.0.0.beta.8でもそうなった。

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

@before = evaluate_value_proc

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



207:デフォルトの名無しさん
10/05/16 19:14:39
チケットあった。
URLリンク(rspec.lighthouseapp.com)

208:デフォルトの名無しさん
10/05/16 19:37:18
うーん、テスト漏れだね

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

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

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

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

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

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

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

213:デフォルトの名無しさん
10/05/17 12:03:00
そもそもprivateってRubyではどんな意図でつけるもんなの?

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

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

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

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

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

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

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

220:デフォルトの名無しさん
10/05/17 23:44:33
微視的とはこのことだなw

221:220
10/05/17 23:45:38
>>218へのレスね。スンマソ

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

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

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

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

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

226:デフォルトの名無しさん
10/05/18 01:45:45
初心者スレ落ちそうなので立てて下さい・・・頼む
立てられない・・・

227:デフォルトの名無しさん
10/05/18 04:44:21
>>213に誰も答えない件について

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

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

229:デフォルトの名無しさん
10/05/18 05:04:52
Ruby 初心者スレッド Part 37
スレリンク(tech板)

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

231:デフォルトの名無しさん
10/05/18 07:52:13
>>227
1つ下の>>214ですでに書かれている件について

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

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

234:デフォルトの名無しさん
10/05/19 08:42:59
不完全にしておよそ正しくないプログラミング言語小史
URLリンク(www.aoky.net)

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

はは、わろすw

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

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

236:デフォルトの名無しさん
10/05/19 11:19:16
begin
end

237:デフォルトの名無しさん
10/05/19 13:01:32
>>236
無理だと思うなあ

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

239:デフォルトの名無しさん
10/05/20 03:54:44
ruby -d

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

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

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

241:デフォルトの名無しさん
10/05/20 07:50:01
>>240
Enumerable#each{ |e1|
 Enumerable#each{ |e2|
  Enumerable#each{ |e3|
  # 何か
end; end; end

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

242:デフォルトの名無しさん
10/05/20 07:50:51
>>241 訂正
Enumerable#each do |e1|
 Enumerable#each do |e2|
  Enumerable#each do |e3|
  # 何か
end; end; end

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

244:デフォルトの名無しさん
10/05/20 08:44:42
まあ好きにしろとしか言えんのだが


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


という形と


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


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

245:デフォルトの名無しさん
10/05/20 08:47:30
>>244

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

と書くと怒るタイプ

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

こう書く

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

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

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

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

248:デフォルトの名無しさん
10/05/20 10:12:11
前田さんの規約に従ってる

249:デフォルトの名無しさん
10/05/20 11:19:53
買います?

プログラミングRuby 1.9 ?言語編?: Dave Thomas with Chad Fowler and Andy Hun
URLリンク(www.amazon.co.jp)

250:デフォルトの名無しさん
10/05/20 11:27:49
やっと出るのか……

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

252:デフォルトの名無しさん
10/05/20 11:47:14
ピッケル本の1.9版か。

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

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

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

255:デフォルトの名無しさん
10/05/20 12:55:11
前田さんの規約狂ってる

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

257:デフォルトの名無しさん
10/05/20 22:07:01
>>255
どの辺が?
言うほどおかしな箇所は見当たらなかったが


258:デフォルトの名無しさん
10/05/21 00:20:02
JRuby良さげ

259:デフォルトの名無しさん
10/05/21 07:14:43
URLリンク(shugo.net)

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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


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

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

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

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

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

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

275:デフォルトの名無しさん
10/05/21 08:20:07
最近の一番大きな仕事はIPAのRuby言語仕様だろうね。




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

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


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

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

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

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

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

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

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

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


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

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

285:デフォルトの名無しさん
10/05/21 12:19:32
他にもいくつかあるよー

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

287:デフォルトの名無しさん
10/05/21 13:17:19
とりあえずはーいせんせーがこの上なくムカついた

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

288:デフォルトの名無しさん
10/05/21 13:18:07

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

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

290:デフォルトの名無しさん
10/05/21 22:37:43
>>288
URLリンク(twitter.com)

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

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

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

293:デフォルトの名無しさん
10/05/22 00:18:46
小人閑居してなんとやら

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

295:デフォルトの名無しさん
10/05/22 01:30:56
批評される側に立つなんてとんでもない!

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

297:デフォルトの名無しさん
10/05/22 07:02:44
訂正
×Wikipediaみたいに
○Wikipediaみたいなシステムで

298:デフォルトの名無しさん
10/05/22 08:40:06
>>296
気取るつもりはないけど典型的な自転車置場の議論
URLリンク(0xcc.net)
だからなあ。

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

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

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

300:デフォルトの名無しさん
10/05/22 10:20:18
未だにreturnを書くかどうか悩む

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

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

302:デフォルトの名無しさん
10/05/22 10:24:23
しかしつまらんスレだな

303:デフォルトの名無しさん
10/05/22 12:12:36
returnはメソッドじゃないのにカッコで囲む理由がないだろ

304:デフォルトの名無しさん
10/05/22 13:50:01
はい燃料投下きました〜

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

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

307:デフォルトの名無しさん
10/05/22 14:48:25
return自体をめったに書かない。


308:デフォルトの名無しさん
10/05/22 23:59:43
少なくともメソッドの最後には絶対に書かない

309:デフォルトの名無しさん
10/05/23 03:31:30
悪臭

310:デフォルトの名無しさん
10/05/23 10:47:18
ここの規約で return 書くって書いてあったから書くことにした。
URLリンク(shugo.net)

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

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

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

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

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

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

314:デフォルトの名無しさん
10/05/23 11:14:35
rubyで大規模開発となるとRails必須だから。

315:デフォルトの名無しさん
10/05/23 11:14:39
おまえがそう思うのならおまえはそうすればいいだろう。

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

317:デフォルトの名無しさん
10/05/23 12:12:00
Perlを踏襲、じゃないの?


318:デフォルトの名無しさん
10/05/23 12:25:32
lisp とかの流れでは?

319:デフォルトの名無しさん
10/05/23 12:28:03
単純に冗長だからとか
return 必須じゃ tap も魅力半減

320:デフォルトの名無しさん
10/05/23 12:31:20
tap関係ないぞ

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

322:デフォルトの名無しさん
10/05/23 13:19:49
Cも実はreturn不要

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

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

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

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

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

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

327:デフォルトの名無しさん
10/05/23 14:16:17
returnしたらどうなるかやってみりゃいいじゃん

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

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

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


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

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

330:デフォルトの名無しさん
10/05/23 14:30:23
クロージャだとnextで値返すんだっけ

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

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

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

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

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

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


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

337:デフォルトの名無しさん
10/05/23 15:01:31
まあそもそもみんな Rails 好きかというとそういうものでもないんだけどね

338:デフォルトの名無しさん
10/05/23 15:42:28
RailsというよりActiveSupportとかActiveRecordが好き

339:デフォルトの名無しさん
10/05/23 19:06:39
それって他の言語のフレームワークにはない機能なの?

340:デフォルトの名無しさん
10/05/23 23:12:43
Rails以外でRuby使う機会無いんだけど。価値も無いし。

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

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

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

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

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

345:デフォルトの名無しさん
10/05/24 11:16:09
ほう、ならばインデントはもう要らないな…

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

347:デフォルトの名無しさん
10/05/24 12:11:07
行頭以外でタブは使わない

348:デフォルトの名無しさん
10/05/24 13:13:18
Ruby 使ってるとスペース使っちゃうのでタブ使わなくなった


349:デフォルトの名無しさん
10/05/24 15:23:36
>>345
ワンライナーの時代と聞いて

350:デフォルトの名無しさん
10/05/24 19:49:28
そのうちタブじゃなくて1スペースしか空けなくなるだろう

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

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

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

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

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

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

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

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

357:デフォルトの名無しさん
10/05/24 21:54:54
diff -b とか -w とか知っとけ。


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

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

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

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

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

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

362:デフォルトの名無しさん
10/05/24 22:10:26
あーくだらね

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

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

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

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

367:デフォルトの名無しさん
10/05/25 02:24:30
男は黙って1タブ

368:デフォルトの名無しさん
10/05/25 14:14:48
Railsリリース早すぎワロタw

369:デフォルトの名無しさん
10/05/25 15:44:09
それだけRailsの進歩が早いということだな、うんうん

370:デフォルトの名無しさん
10/05/25 16:04:44
テスト駆動の限界をみた。極端な崇拝はよくないな

371:デフォルトの名無しさん
10/05/25 22:15:25
>>360
>svn diff か redmine の diff 使うし、

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

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

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

373:デフォルトの名無しさん
10/05/25 23:26:39
ハードタブとソフトタブがごっちゃになってないか?

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

375:デフォルトの名無しさん
10/05/25 23:35:35
この人10年以上同じことばっかり言ってそう

376:372
10/05/25 23:38:00
推敲したよ!

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


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

377:デフォルトの名無しさん
10/05/26 00:51:00
スペースをタブに変えてもいいような文章だな

378:デフォルトの名無しさん
10/05/26 00:52:56
ここの人らはエディタなにつかってるの?

379:デフォルトの名無しさん
10/05/26 01:00:12
男は黙ってEmEditor
4200円也

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

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

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

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

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

384:デフォルトの名無しさん
10/05/26 02:20:38
別に無理して雑談しなくていいんだよこのスレで

385:デフォルトの名無しさん
10/05/26 02:23:50
この流れワロタw

386:デフォルトの名無しさん
10/05/26 06:23:28
今日からお前はルビ夫だ。

387:デフォルトの名無しさん
10/05/26 08:33:05
>>382
geany

388:デフォルトの名無しさん
10/05/26 09:00:42
vim
いまくそはクソ

389:デフォルトの名無しさん
10/05/26 20:38:49
>>388
そんなに苛めないでよ、好みでいいじゃない。

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

391:デフォルトの名無しさん
10/05/26 22:57:36
TextMateとvim


392:デフォルトの名無しさん
10/05/26 23:05:43
emacs で viper-mode だなあ
vim script は書く気にならない

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

394:デフォルトの名無しさん
10/05/27 00:05:59
普通Eclipseだろ

395:デフォルトの名無しさん
10/05/27 00:14:13
いや全然

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

397:デフォルトの名無しさん
10/05/27 00:36:24
returnの次はタブ、その次はテキストエディタの話かよ

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

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

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

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

401:デフォルトの名無しさん
10/05/27 01:42:03
>>400
それもこれも1.9.2次第だな。期待せざるを得ない。

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

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

403:デフォルトの名無しさん
10/05/27 18:24:34
>>402
gem周りは最悪

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

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

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

406:デフォルトの名無しさん
10/05/28 06:45:39
RailsはRubyからみたら寄生虫だからなぁ

407:デフォルトの名無しさん
10/05/29 11:47:51
rubyなんてRailsが無ければ存在自体知らんかったわ

408:デフォルトの名無しさん
10/05/29 11:51:59
それは威張って言うようなことじゃなかろう

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

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

411:デフォルトの名無しさん
10/05/29 14:26:42
Ruby使いがお勧めする多言語ってなんだべ?

412:デフォルトの名無しさん
10/05/29 14:27:25
失礼
×多言語
○他言語

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

414:デフォルトの名無しさん
10/05/29 14:33:52
>>411
JRuby、IornRuby


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5249日前に更新/131 KB
担当:undef