[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/09 09:27 / Filesize : 208 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


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

Rubyについて Part 30



1 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 11:47:53 ]
オブジェクト指向スクリプト言語Rubyについて扱うスレッドです。

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

= 前スレ
Rubyについて Part 29
pc11.2ch.net/test/read.cgi/tech/1193668038/

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


193 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 01:27:48 ]
純粋な質問なのだけど、「CにRubyを組み込む」ってどういうときに
使う?CでRubyを拡張ならよくやるのだけど。いや、CにRubyを
組み込めるのはシッテルガ。いまいち用途がピンとこないのよね。

194 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 01:29:08 ]
Cで書いてあるアプリのプラグインをRubyで書けるように、とか

195 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 01:36:00 ]
Ruby じゃなくて Python の例になるけど、
Civilization IV には Python が組み込まれていて、ゲームの進行やルール、チュートリアルの流れはそれで記述してある。
体験版をダウンロードすれば、なかに python の DLL とライブラリ一式が入ってるのが分かる。

3D グラフィックスツールの Blender やベクター画像ツールの Inkscape では
プラグインを Python で書くようになってるよ。
編集中のデータが入ったオブジェクトがプラグイン側の関数に引数として渡されるので、
好きなだけいじくり回してやれば良い。



196 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 01:52:18 ]
>>187
○○がしたい

ドキュメントない

コードを読んで把握

○○できた

で終わるので。

197 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 01:56:16 ]
String#s
String#sg
String#sc
ダサさが加速して行く…

198 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 02:06:46 ]
愕然としたね

199 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 02:17:48 ]
あんだけ普段、「名前は重要」って言っておいて
これはないだろw

200 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 02:27:29 ]
袋だたき撤回パターン

201 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 02:28:16 ]
できないからこそ言ってるんじゃないか



202 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 02:39:09 ]
何でクソ仕様大会になってんだ。俺にも言わせろ。
StringIO#stringにしたやつ出て来い。何でto_sにしなかったのか100万回説明してもらおう。
Webでmultipart使うとき面倒ったらありゃしない。


203 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 02:40:36 ]
>>197
え、こんなメソッドできたの?
マジで名前を見ても何をするのか全然分からんぞ。

204 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 02:41:40 ]
よその言語のこといえないじゃんな

205 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 02:43:28 ]
いやこれはMatzの釣りかもしれん

206 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 02:44:05 ]
>>203
blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/33553
このことだろ

207 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 02:45:05 ]
一番痛いのはこいつだけどwww
blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/33554

208 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 02:48:21 ]
Airemixのなるせたんか。
この人も色々あれなんだよなあ。

209 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 03:59:00 ]
>>202
どういう風に面倒?

210 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 05:46:09 ]
>>179 は至言

211 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 07:20:56 ]
そして俺らはRubyを相手にする程度のプログラマか・・・



212 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 07:36:12 ]
>>187
公式のは見たことないなあ。
昔 C MAGAZINE に載ったのを見たことあるくらい。
shugo.net/article/cmagazine/3rd/
shugo.net/article/cmagazine/4th/

213 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 08:19:20 ]
CからRuby呼び出したことあるけど、ドキュメントが必要なほど難しいことでは
なかったな。初期化済んだらそのまんまメソッドの実装を呼ぶだけだったから。


214 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 08:21:41 ]
なんかCからRuby呼ぶってすげー逆な気がするんだがそういうニーズも有るんだな

215 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 08:48:39 ]
>>197
叩くよりもどんな名前がいいのか考えようぜ

>>202
あれはIOにto_sがないのに合わせてるんだろう

216 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 08:55:41 ]
>>187
vimのrubyインターフェースのソースが参考になったよ。


217 名前:デフォルトの名無しさん [2008/02/01(金) 09:03:32 ]
>>215
>あれはIOにto_sがないのに合わせてるんだろう
IO#stringもないので、そんなことが理由になるわけがない。


218 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 09:04:56 ]
to_matzはありますか?

219 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 09:50:57 ]
>>197
すげええええええええええええええwww

220 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 09:59:03 ]
浮気相手の趣味に影響を受けるのはよくある話。
きっと相手はプロゴルファーなんだろう。

221 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 12:01:18 ]
雲を裂き嵐を呼んで夢を勝ち取る人かな



222 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 14:31:09 ]
>>202
> Webでmultipart使うとき面倒ったらありゃしない。
StringになったりStringIOになったりすることなんてあったっけ?
TempfileになったりStringIOになったりはあっても。


223 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 15:31:00 ]
>>193
Rubyなら、RPGツクールXP、VX か
本体でできない拡張に使われてる。
標準でできない、無限スクロールを実装したり、
あげくは、戦闘シーンを標準のものを使わず自前で実装したり。

別の言語だが、組み込みでよくつかわれる Lua なんかは、
FarCryというFPSで使われていた。
メニューなどのUI の 定義や、パラメーターの設定など。

ゲームだと Rubyは聞かないが、組み込み用にスクリプト言語がつかわれることが多い。

224 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 15:41:24 ]
DelphiにDMonkey(JScript)エンジン組み込んでアプリをユーザーに弄らせるというのはよくやるな。
RubyだとApolloでできるらしいが。
OOoやCivilization4はマクロ言語としてPython搭載だったか。

225 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 17:57:43 ]
変に独自言語搭載されると覚えるのだるいしな。

226 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 18:03:40 ]
組み込み系はもうちょっとドキュメント周りを整備して普及に努めたほうがいいかもな。
マクロ書く為に覚えればその延長で使うようになるかもしれないし。

227 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 18:45:52 ]
>>225
ウィンドウマネージャにlisp構文のスクリプト積むのやめて欲しい

228 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 20:29:55 ]
そういや1.9からRubyのスレッドってネイティブになった?

229 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 23:17:28 ]
> >222
multipartとそうじゃないのを同一視して受け取ってます。
こんなことやってるんだけど、他に良い方法あります?
@cgi = CGI.new
@cgi.content_type =~ %r|multipart/form-data| ? @cgi[key].string : @cgi[key].to_s

そういやTempFileの時の分岐もいるわな……

230 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 23:26:20 ]
StringIOにto_sをつければいいだけじゃねーの?


231 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 23:44:08 ]
>>228
なった



232 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 23:53:55 ]
>>231
拡張モジュールでRubyのスレッド以外から、RubyのAPIじっこうしても
大丈夫?

233 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 07:49:12 ]
>>230
だからそれを標準でやってくれよという話ダロ
よくよめ

234 名前:230 mailto:sage [2008/02/02(土) 10:43:38 ]
>>233
標準でやるべきというのに異論はないが

>>229みたいな条件分岐がたくさんあって面倒だというなら、
自前で拡張するのも手段としてはありじゃないの?


235 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 14:24:40 ]
だから“クソ仕様”だって。
matzも名前大事とか言いながらこれだからな。どうしようも無いな。

236 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 14:30:33 ]
>>235
ERBのresultもto_sであるベッキー?


237 名前:235 mailto:sage [2008/02/02(土) 15:55:20 ]
erb使ってないからシラネ。
erb自体がクソな感じがするので触ってない。自分でテンプレートエンジンでっちあげたし。

ただ、
・プロパティ的/定数的: to_sが良い
・メソッド的/手続き的: resultとかでいいんじゃね?
とは思う。


238 名前:デフォルトの名無しさん [2008/02/02(土) 22:34:57 ]
to_sとか便利だよねぇ。びっくりした

239 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 23:38:17 ]
>>229
CGI 自体が半ば deprecated 気味だからね。代替ないから残ってるけど。
改良して貢献すれば喜ばれると思うよ。

ちなみ俺はこうしてる。これで Tempfile と StringIO の分岐はいらない。
@cgi.multipart? ? @cgi[key].read : @cgi[key]

240 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 23:46:25 ]
>>217
>IO#stringもないので、そんなことが理由になるわけがない。

IO#string(またはIO#to_s)に何をして欲しいと思ってる?

241 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 23:50:12 ]
よくわからんが、すでにあるし、またディープに組み込まれているto_sという名前を
使わなかった点を言ってるんじゃないのか?>>202



242 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 23:56:21 ]
>>240
>IO#string(またはIO#to_s)に何をして欲しいと思ってる?
文字列を返す。それだけ。
おまえは何が言いたいんだ?

243 名前:240 mailto:sage [2008/02/03(日) 00:00:56 ]
>>242
どういう文字列を返して欲しいと思ってるかが重要なんだよ。
Stringのインスタンスならなんでもいいの?

244 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:01:59 ]
>242
ふむ。
じゃあ無条件に""を返してもいいんだな? Stringオブジェクトには違いないぞ。
それが嫌なら「IOが返すべき文字列」ってのを定義してみな。

245 名前:244 mailto:sage [2008/02/03(日) 00:02:44 ]
……煽りでケコーンするなんて何という恥
死のう 舌を噛んで死のう

246 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:04:07 ]
IOをくださ〜いおぅおう
IOをくださ〜い

247 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:07:45 ]
IOの話じゃねーだろ馬鹿

248 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:08:03 ]
>>243,244
なんでIOになるんだ?今はStringIOの話だろ。
StringIO#string の名前は String#to_s にすべきだったという話をしてるのに、
to_sは空文字を返してもいいとかバカじゃねーの。>>202をまず読めや。

249 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:10:23 ]
>>243
>どういう文字列を返して欲しいと思ってるかが重要なんだよ。
そんなもの、StringIO#stringと同じ文字列に決まってるだろ。
これだからゆとりは。

250 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:14:03 ]
to_sってのは型の変換に用いるもんでしょ。つまり、(Integerインスタンス).to_sとか

StringIOってのはストリングのIO化なんだから、IOをto_sしちゃったらおかしいでしょ。

251 名前:240 mailto:sage [2008/02/03(日) 00:14:44 ]
>>248,249
落ち着け、おれはオサーンだ。

StringIO#stringは確かにto_sでもいいかもしれない。だが、
お前が言ってるようにto_sはとても広く使われているメソッドだ。
StringIO#to_sがあるならIO#to_sもあるのが自然だと考える人も
多い。>>215はそれを言ってる。本当にmatzがそう考えたかどうかは
知らないけどね。

んで、IOでStringIO#stringと同じような挙動を実現しようとしたら、
何をしなきゃ行けないか考えてみよう。事実上無理なことがわかるから。



252 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:25:20 ]
一応言っておくと>>241>>242は別人だぞ、と
>>251は、:なるほど。でも>>215は端的すぎるんじゃね?とか

253 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:50:03 ]
だからIOじゃねーだろアホ

254 名前:240 mailto:sage [2008/02/03(日) 00:52:15 ]
>>252
おれも>>215ではないので、推測なんだけどね。

答えを言っておくと、読み込んだ文字列を全部保存しとかなきゃ
いけなくて、事実上Rubyでサーバとか書けなくなってしまうわけ
です(書いてもいつかNoMemoryErrorになってしまう)。

そもそも、StringIO#stringは特段の事情がなければ使わない方が
いいと思うよ。String"IO"なんだからIOらしくreadとかしとこう。


>>250
その論理でObject#to_sが説明できるのかな。

255 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 01:01:24 ]
今北産業
誰か三行でまとめて

256 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 02:28:56 ]
Rubyのto_sは
そもそも定義があいまいなので
おかしいとかおかしくないという以前の問題

257 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 03:12:17 ]
IOがなんでもto_sできたら怪しいけど、
StringをIO化したIOはto_sできてもいいんじゃね。
まあ、to_sじゃないからダメとは思わんけど。

>>235は「matzどうしようもない」とか言う前に
matzに意見を伝えて議論すべきだな。
政治家や芸能人と違ってMLで直接話せる相手だし。

258 名前:235 mailto:sage [2008/02/03(日) 03:28:32 ]
>251
IO#to_s は IO#readと同一視でも構わん気がする。
どうせmatzもセキュリティとか気にして設計しとらんだろうに。

逆にStringの方にreadを用意してもいいんだけどなぁ……。
matzは変なところばかり手を入れるんだから、ついでにここもやってくんないかな。

>254
>そもそも、StringIO#stringは特段の事情がなければ使わない方が
リファレンスのメソッドの筆頭にstringがあるのよ。
もし使わない方が良いなら、あのクソリファレンスをどうにかしないとな。


良く良く考えてみたら、フィールドによって戻り値がバラバラのCGI#[]の
仕様が腐ってんだよなぁ…………。PHPに文句付けるヒマがあったら
CGIどうにかしろよ。matz。


259 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 03:54:08 ]
CGI.rb作ったのは違う人だしなあ
ソース見るとわかるが「Ruby学んで超楽しい」時期に書かれたコードだ

てか、作った本人も含めて現行Rubyの癌だとはみんな認識してるはず
置き換えとなるモジュールがないだけの話

260 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 04:17:07 ]
PerlのCGI用モジュールってどんなんなんだろ
参考にならないかな

261 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 04:36:37 ]
>>258
Webrick::CGI

PerlのCGIはcgi.rb以上にカオス



262 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 04:44:33 ]
Webrickはプロクシサーバの作り方しか載ってねえよ

というか、CGI.rbでやってることと対比させた解説ページ誰か作ってくれ
CGI.paramsに該当することが探せなくて挫折した覚えがある

263 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 04:52:36 ]
>259
癌だと判っているのにもかかわらず、放置したままPHPをdisってるからたちが悪い。
1.9で少しはマトモになってると思ったんだけどなぁ。cgiはとっととobsoletedにしてほしい。

>261
Webrick::CGIはドキュメントが……良い感じだとは思うけどね。


264 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 04:55:59 ]
セッション管理が標準でできるようになったらWebrick::CGI使ってあげるよぉ

265 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 05:30:46 ]
>>264
それ以上になると、フレームワークつかえとしか

266 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 05:49:54 ]
セッション管理ごときでなんでフレームワークが必要になるほうがおかしい

267 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 05:56:09 ]
>>250
>to_sってのは型の変換に用いるもんでしょ。つまり、(Integerインスタンス).to_sとか
>StringIOってのはストリングのIO化なんだから、IOをto_sしちゃったらおかしいでしょ。

こいつほんとにバカだな。
StringIOをStringに変換するんだから、to_sで問題ないだろ
今議論してるのはStringIOであってIOじゃないって何回いったらわかるのか
だれもIO#to_sをつくれといってないだろ。IO#to_sなんかいらん、StringIO#to_sの話をしてる

>>251
>StringIO#to_sがあるならIO#to_sもあるのが自然だと考える人も
>多い。
そんなのお前だけ。子クラスでメソッドを追加したら親クラスにも追加しなきゃいけないと考えるほうがどうかしてる。
ほんとバカばっかだな。

268 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 06:00:25 ]
>>266
では、自前で組めばいいのでは?

269 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 06:09:34 ]
>>254
>
>答えを言っておくと、読み込んだ文字列を全部保存しとかなきゃ
>いけなくて、事実上Rubyでサーバとか書けなくなってしまうわけ
>です(書いてもいつかNoMemoryErrorになってしまう)。
これなんの話?StringIO#stringと何の関係もないよね。


>そもそも、StringIO#stringは特段の事情がなければ使わない方が
>いいと思うよ。String"IO"なんだからIOらしくreadとかしとこう。
本気でいってるのかね。StringIOはIOに見せかけたStringであって、Stringに見せかけたIOじゃない。
だいたい、seekとか関係なしに文字列を得るためにStringIO#stringがあるのに、
なんでreadとか使わないといけないの?アホか。
sio = StringIO.new
sio.write('foo')
sio.write('bar')
sio.read #=> ""
sio.seek(0)
sio.read #=> "foobar"


270 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 09:55:55 ]
>StringIOはIOに見せかけたStringであって、Stringに見せかけたIOじゃない。

IOに似てるならIOみたいなもんだよ。アヒルのように動いてアヒルのように鳴くなら
そいつはアヒルだ!


271 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 10:03:54 ]
StringIOでreadつかう馬鹿はいないだろ

>>254除いては。



272 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 10:11:16 ]
なるほど問題理解
StringIOのカッコいい使い方指南をすればいいんだな
「StringがIOになりましたって何じゃらほい」という疑問が根底にあると見た

273 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 10:12:04 ]
StringIO#string= なんてのもあるんだな。
アクセサだったのか。

274 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 10:37:18 ]
StringIO#readはIO#readを使ってる場所で代替で使われるものだろ
明示的に使うもんじゃないだろ
ファイルを読み込むプログラムだけど文字列を代入することもできるよという場合とか

275 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:04:06 ]
>>274
明示的に使うものかどうかなんて、今はまったく関係ないだろ
>>202>>229読めや、そこのゆとり

276 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:07:31 ]
「面倒だから。短くかけるから」ってだけ批難してるなら
golfscriptでもやってろよ。一貫性のほうが重要だろ。

自分の理屈も説明できずに受入れられると思ってるニートがいて困るな

277 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:09:53 ]
readメソッドの話をしているということにも気づけないほど何を怒ってるのかわからんな

278 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:16:31 ]
いやもうメーリングリストに書けよ

279 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:19:06 ]
>>276
Tempfileの分岐考えたら>>239の方が短いんじゃ?

280 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:24:54 ]
短いからいいという話をするなという主張なのでは

281 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:28:02 ]
Zlib圧縮データをInflateして返って来たバイナリデータを
StringIOにしてreadしてunpackとかよくやってるなあ
文字列そのままだとファイルポインタが無いから扱いづらいし



282 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:32:27 ]
>>258
> 良く良く考えてみたら、フィールドによって戻り値がバラバラのCGI#[]の
> 仕様が腐ってんだよなぁ…………。PHPに文句付けるヒマがあったら
> CGIどうにかしろよ。matz。

だから使う側が >>229 とか >>239 とかしてて、
その時にメソッド名に「一貫性」が無くて困ってるわけね。

ようやく俺にも状況が見えてきた。

283 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:34:07 ]
意味が違うものに違う名前を割り当てるのは当然。名前重要。

284 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:43:30 ]

Ruby開発者として発言しているとき:Ruby教祖まっつん

個人的なblogで個人的な発言をしているとき:モルモン教徒まっつん

名前重要


285 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:45:41 ]
>>276
>「面倒だから。短くかけるから」ってだけ批難してるなら
だれがそんな非難してるの。だからゆとりなんだよ。

>自分の理屈も説明できずに受入れられると思ってるニートがいて困るな
今までの流れをまったく理解せずに話をすり替えようとしているゆとりがいて困るな


286 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:47:27 ]
>>285
すまん。結局君は何がいいたいのか明示していただけないだろうか?
今まで発言とかしてないんだが、さすがにわけわからなくなってきた

287 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:48:14 ]
>>285
Rubyについて(アンチ専用) Part002
pc11.2ch.net/test/read.cgi/tech/1200210768/

遊び場はこちら

288 名前:202 mailto:sage [2008/02/03(日) 13:53:00 ]
おお、なんか話が進んどりますな。……グルグル回っている気もするけど。
おいらの結論としては
・フィールドを統一的に扱えないCGIはクソ仕様。
 - kind_of?とかソース記載の条件で分岐するのはオブジェクト指向らしくないとか
  言っときながら、それをせざるを得ない仕様になってるのはどういうことよ。
 - セキュリティとかオーバーフローの関係でTempfileとかを使いたかったら、
  統一的に&安全に扱えるラッパークラスぐらい用意しとけと。
・StringIOはStringとIOの性質を合わせ持つのだから、to_sぐらい用意しておいた方が
 親切だよね。多態もできるし。名前重要とか言ってるクセに、ろくに考えて無いだろ。matz
・IOはオーバーフロー(メモリ消費)のリスクもあるから、to_sの実装に慎重になるのも理解できる。

つまりPHPをdisるヒマがあったらcgi絡みをどうにかしろと。
Webrick::CGI移行でもいいけど、それならドキュメントをどうにかしろよ、と言いたいよな。

289 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 13:57:11 ]
>>288
>Webrick::CGI移行でもいいけど、それならドキュメントをどうにかしろよ、と言いたいよな。
その前にセッションなんとかしろよ。cgi.rbから移行したくてもできないだろ。

290 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 14:04:42 ]
>>288
>・IOはオーバーフロー(メモリ消費)のリスクもあるから、to_sの実装に慎重になるのも理解できる。

IOにto_sはいらん。誰もそんなもの必要としてない。いるのはStringIO#to_s。
『StringIO#to_sがいるならIO#to_sも必要』とかほざいてるのはゆとり。

291 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 14:08:27 ]
ドキュメント上は、StringIOは
IOのように扱えるString(Pseudo I/O on String object.)であって
Stringのように扱えるIOではないようだ。

なら StringIO#to_str (Stringを期待する箇所で呼ぶと規定されているメソッド)が
あるべきだな、と思った。




292 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 14:10:30 ]
>>276
>「面倒だから。短くかけるから」ってだけ批難してるなら

だれが非難してるの?ねえ誰がどこで非難してるの?

293 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 14:15:34 ]
>>292
「もしそうなら」という言い方はいわばif文であって、そうかもしれないしそうでないかもしれない言葉を
受けての言い方だから、その質問に対する回答は無いだろう。
そこで回答があったら、絶対に真とわかってる値をわざわざif文で判定するような文を書いていたことになる。






[ 続きを読む ] / [ 携帯版 ]

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

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