- 1 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 16:10:50 ]
- オブジェクト指向スクリプト言語Rubyについて扱うスレッドです。
Ruby Home Page www.ruby-lang.org/ja/ = 前スレ Rubyについて Part 32 pc11.2ch.net/test/read.cgi/tech/1215531152/ 過去スレ・関連スレは >>2-
- 116 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 02:37:54 ]
- Cyanのコメント
- 117 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 07:17:18 ]
- CLと同じでしょう。
=begin/=endでいいじゃんとは思うけど
- 118 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 08:07:57 ]
- >>110
そりゃプログラミング言語として与えられたままを使うだけに限った話。 DSLを考えるときには全然効かないんだよ。
- 119 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 08:12:19 ]
- >>116
さんきゅー
- 120 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 15:27:11 ]
- 引数がStringだった場合はキーを付け足してHashにする(param = {:name => param} みたいな)
引数がHashだった場合はてきとーにキーを見てぶん回す という最近よくある感じの処理をする場合、引数がStringかどうかみたいなのはどうやって判定すべき? is_a? とか instance_of? とか
- 121 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 15:31:20 ]
- is_a? kind_of?
- 122 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 19:31:51 ]
- www.rubyist.netおつとる
- 123 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 20:06:37 ]
- >>120
最近では respond_to? で、必要なメソッドの有無を調べるのも流行らしいぞ
- 124 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 20:23:01 ]
- each の存在を調べて String#each の存在でハマるのはもうお約束の域
そして 1.9 対応で悩む
- 125 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 20:25:44 ]
- case arg
when String when Hash
- 126 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 20:43:44 ]
- >>125
それは is_a? だ
- 127 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 21:00:35 ]
- 実体が is_a? でも、そう書くか case-when で書くかは大きな違いだ
- 128 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 21:25:49 ]
- 引数に(key => value)で特別扱いされるのはHashなんだから
is_a? 使うにしてもHashか、そうでないかっていう分岐にしたほうがよさげだと思う。
- 129 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 21:31:31 ]
- CodeZineにPythonカテゴリがないのっておかしくね?
お前らなんか妨害工作してるだろ。
- 130 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 21:35:25 ]
- ttp://codezine.jp/article/tag/223
- 131 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 21:38:42 ]
- 実体は === だろ
StringとHashでそれぞれ違う処理するなら俺も>>125にするかな でも>>120の場合ならこう書く param = {:name=>param.to_s} unless param.kind_of?(Hash)
- 132 名前:デフォルトの名無しさん mailto:sage [2008/10/29(水) 21:45:18 ]
- すまん、クラス、モジュールの === は kind_of?(つまり is_a?) と同じだった
- 133 名前:デフォルトの名無しさん mailto:sage [2008/10/30(木) 21:48:24 ]
- qb5.2ch.net/test/read.cgi/operate/1206636885/657
強制ID実装を駄目元で頼み込んでみた。 もし賛同してくれる人がいたら同意のレスつけてください。
- 134 名前:デフォルトの名無しさん mailto:sage [2008/10/31(金) 10:39:11 ]
- >>133
おまえがIDさらせや。
- 135 名前:デフォルトの名無しさん mailto:sage [2008/10/31(金) 17:45:48 ]
- p 133.id
- 136 名前:デフォルトの名無しさん mailto:sage [2008/10/31(金) 18:30:44 ]
- => nil\(^o^)/nil
- 137 名前:デフォルトの名無しさん mailto:sage [2008/10/31(金) 22:24:07 ]
- ext/dlのバグ修正、ruby-1.8.xにも入れてくれないかねえ。
- 138 名前:デフォルトの名無しさん mailto:sage [2008/10/31(金) 22:56:29 ]
- どのrevision?
- 139 名前:デフォルトの名無しさん [2008/10/31(金) 23:47:40 ]
- レポジトリでみてみたけど違いが生じたのがsubversionへの移行前らしくてリビジョンわかりません。
問題は1.9ではNUM2PTRになってるものが1.8.xの方はDLNUM2LONGのまま残ってて アドレス等の値を符号つき整数として扱ってしまっているところです。 これがために1.8ではDL::Symbol.newなどに最上位ビットが1のアドレス値を直接渡せません。
- 140 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 01:13:22 ]
- 1.9のってruby/dl2でしたっけ?
低レベルな書き方したら1.8と互換性無くて… ruby -rdl -e "DL.dlopen('user32')['EnumWindows', '0PL'].call( DL.callback('IL'){|hwnd2| puts '%08x'%[hwnd2];-1}, 0 )" みたいなの あと、mingw32版のruby1.8だと上のが落ちるんですよね mswin32版ruby1.8だと大丈夫なんですけど
- 141 名前:デフォルトの名無しさん [2008/11/01(土) 01:35:20 ]
- 1.9で1.8と違う添付ライブラリってリファレンスマニュアルとかドキュメントあるんですか?
- 142 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 02:18:00 ]
- Ruby会議での青木さんの話を聞くと、
来年のRuby会議までには標準ライブラリのリファレンスが完成しそうなんだとか というわけで来年には手が回るんじゃ…… そういえば、Programming Rubyの第三版に1.9対応リファレンスが付くのかね?
- 143 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 11:54:12 ]
- ほんと青木さんとるりまチームには頭が下がるな。
頑張って欲しい。
- 144 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 18:31:41 ]
- なにさまだよ
- 145 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 19:24:52 ]
- るりまです
- 146 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 19:59:51 ]
- そっか、「がんばって欲しい」は「ご苦労さま」と同じか。
- 147 名前:デフォルトの名無しさん [2008/11/02(日) 13:38:43 ]
- 設計の基本ができてねぇなぁ!!!!!
よいツール教えたる これでガンバリなぁ www.digitalassist.co.jp/pw/page010.htm
- 148 名前:ATOK mailto:sage [2008/11/03(月) 17:22:43 ]
-
ジャストシステム、スクリプト言語で「ATOK 2008」を拡張できる開発キット Perl/Ruby言語でプラグインを開発し、外部のソフトやWebの情報を直接利用可能に ttp://www.forest.impress.co.jp/article/2008/10/30/atokdirectapi.html 開発キットには、サンプルスクリプトや簡易的なスクリプトデバッガーなどが含ま れており、Perl/Ruby言語を一通り習得したユーザーならば、比較的容易に“ATOKダ イレクト”用のプラグインを作成可能だ。スクリプトの実装方法も同梱のPDFファイ ルや同社サイト上で参照できる。 ATOKダイレクト API for Perl/Ruby とは? ttp://www.atok.com/useful/developer/api/ ATOKがRubyやPerlで拡張可能に − @IT ttp://www.atmarkit.co.jp/news/200810/30/atok.html 「ユーザー自作のプラグインを作り、」〜「入力・変換するだけで情報を表示できる。」参照
- 149 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 18:31:56 ]
- >>148
試み自体は面白いと思うんだが 実際にプラグインで、どんな楽しいことができるのかピンとこない
- 150 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 18:53:40 ]
- 分野辞書をオンラインインストールとか
- 151 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 18:56:52 ]
- アドレス帳を叩いて名前の読みから住所とか引っ張れるのかな。
- 152 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 20:57:19 ]
- >>148
動作確認済みのPerl 、Ruby について 【Ruby】 Ruby 186-25 こんなバージョンのRubyは存在しないwwww
- 153 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 21:54:07 ]
- >>152
One-Click Ruby Installerのバージョンだね perlもActivePerlなんだし、そう明記すれば問題ないのに
- 154 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 23:36:03 ]
- >>153
それはないだろwww 186-25なんて1.8.6がリリースされた直後のバージョンでまともに動かなかったはずwww
- 155 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 23:44:48 ]
- >>154
rubyforge.org/frs/?group_id=167 55万ダウンロードで、歴代2位だ pathlevel 0 と表示される Windows 版 Ruby 1.8.6 を使っている人はまだ多い
- 156 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 04:08:26 ]
- >>155が的確すぎてわろた
- 157 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 21:49:51 ]
- ruby 1.9.1 preview1が出たけどruby-langのニュースにはならないの?
なんでもいいから更新しないと停滞してると思われるよ
- 158 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 22:09:05 ]
- previewやRCは下手に話題にすると変な人が手を出してネガキャンになってしまうので…
- 159 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 22:21:41 ]
- しかしユーザーが増えないとバグが取れて安定しないような
- 160 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 22:28:36 ]
- 変な人はバグ報告なんてしません
Firefoxのアルファやベータが一般人に広まっても一般人はバグ報告などしなかった ある一定以上の経験と知見を持った人間が使ってくれないとバグ報告は増えないというのが悲しい事実
- 161 名前:159 mailto:sage [2008/11/04(火) 22:32:07 ]
- なるほど。失礼した
そういえばFirefoxも普通のソフトになっちゃって、 コミュニティが苦労してるなんて話を聞いたような聞かないような
- 162 名前:デフォルトの名無しさん mailto:sage [2008/11/05(水) 02:19:20 ]
- 1.8系列って1.8.7でディスコン?いつまで{メンテされる|新しいリリースが出る}の?
- 163 名前:デフォルトの名無しさん mailto:sage [2008/11/05(水) 09:13:02 ]
- >>160
いいかげんな報告が増えるだけでも困るけどな
- 164 名前:デフォルトの名無しさん mailto:sage [2008/11/05(水) 20:01:16 ]
- 「自分の身に起こったことを、簡潔かつ客観的に説明する」
というのは、実のところ選ばれた一部の人間にしかできない行為だからな。
- 165 名前:デフォルトの名無しさん mailto:sage [2008/11/05(水) 20:37:12 ]
- そのへんは学校で習わないから仕方がないねえ
大学でいいゼミやいい一般教養にぶち当たると訓練になるんだけど
- 166 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 02:32:11 ]
- 見知らぬ人間に道を尋ねられて「私の家から北に100mです」って答えるみたいな説明を
本気でする奴がいるからな。
- 167 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 02:51:25 ]
- そんな極端な底辺を例えに出す奴もどうかと思うがな
- 168 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 08:51:26 ]
- >>167
「極端な底辺」ではなく、「まずあり得ないやりとり」としての例ね。 現実に居ることはまったく想定してない。 状況Aにおいて頻繁に見られる性質Bを、Bがまず起きない状況Cに置き換えて 「状況Cでいうなら、つまりこういう光景に等しいよね」と説明することで、 状況Aの中だけで語ってると、頻度が高すぎてそのダメさが大したことじゃないように思えてくる ニュアンスを消したかった。
- 169 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 10:35:30 ]
- なんだ、いないのか。
ちょっと面白いと思ったのにw
- 170 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 14:07:45 ]
- バグレポートする際に
たとえ話はなんの役にも立たない
- 171 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 14:08:49 ]
- しかしつまらんスレだな
- 172 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 00:48:33 ]
- ActiveRecordってどんな基礎理論から出来てるの?
O/Rっていってもいくつか種類とか制約あってそれぞれ 違うようですが
- 173 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 02:56:36 ]
- >>171
Rubyがつまらないんだからしょうがない。
- 174 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 04:47:24 ]
- Ruby/Pangoって絶賛放置中?
- 175 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 11:35:05 ]
- >>172
マッパーそれ自体に理論ってあったっけ? RDBとオブジェクト指向のモデルにはズレがあって・・・・・・ってな話は オブジェクト指向データベースの書籍とかで取り扱われてたような記憶がある
- 176 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 12:29:00 ]
- >>172
基礎理論というほどではないが、ActiveRecordというそのものずばりなpatternもとにしている。 ちなみにDataMapper patternをもとにしたのがDataMapperというライブラリ。 ttp://datamapper.org/ ActiveRecord patternやDataMapper patternについては capsctrl.que.jp/kdmsnr/wiki/PofEAA/?ActiveRecord capsctrl.que.jp/kdmsnr/wiki/PofEAA/?DataMapper をみるのがよかろう。
- 177 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 19:09:18 ]
- やっぱりこれファウラーさんが最初なの?
Railsの影響でPHPでもしばらく前にブームってたが、今ひとつわからんので放置 こればっかりではないが、連想配列のある言語と、Java等のオブジェクトでの 理論・概念の融合が今ひとつ上手く行ってない感じがして仕方がない
- 178 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 22:23:45 ]
- はいはい
- 179 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 00:56:10 ]
- Django使ってる人いますか?
- 180 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 12:42:18 ]
- ふつうGAE使うだろ
- 181 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 15:53:30 ]
- modruby.net/ja/index.rbx/news15.html
mod_rubyの新しいのがリリースされてる これ何ですか?
- 182 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 16:00:22 ]
- > これ何ですか?
大雑把な疑問だなオイ 書いてあるそのまんまだと思うぞ 自分の環境が該当するものでないのなら無理に導入しなくてもいい 1.9サポートって言っても文法エラー取り除いた程度だと予想
- 183 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 18:31:41 ]
- ついったーの様子だと、
とりあえず1.9で動くようにした程度かな。 twitter.com/shugomaeda
- 184 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 23:18:23 ]
- mod_ruby も、スクリプトごとにRubyインタプリタ起動すれば使う気になるのに。
- 185 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 00:11:15 ]
- >>182
> 1.9サポートって言っても文法エラー取り除いた程度だと予想 もっといろいろ大変だったんだよ つーか昨夜リリースできたのは驚異的
- 186 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 00:14:36 ]
- >>184
MVMが実装されるまで待て。
- 187 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 01:22:56 ]
- RubyキモいよRuby www
- 188 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 01:35:22 ]
- >>184
mod_rubyの意味ないじゃんじゃん?
- 189 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 15:01:28 ]
- >>184
>mod_ruby も、スクリプトごとにRubyインタプリタ起動すれば使う気になるのに。 それはCGIのことか?
- 190 名前:184 mailto:sage [2008/11/09(日) 16:16:31 ]
- >>189
スクリプトというか、アプリケーションごと? インタプリタはリクエストごとに起動するわけではなく、 Apacheとともに常駐するんだけど、 全部のスクリプトでそのインタプリタを共有するわけじゃなくて、 スクリプトごとに固有のインタプリタがあると良い。
- 191 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 16:28:55 ]
- グローバルな状態をアプリケーション単位で分けたいということですかね。
>>186が言うようにMVM待ちかなぁ。
- 192 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 16:42:41 ]
- FastCGI等のプロセス常駐じゃだめなの?
よくわからんけど
- 193 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 18:59:13 ]
- FastCGIはたしかにスクリプトごとにパーシステンスプロセスを起動するね。
CGIと違ってリクエストごとには起動しない。 >>184のやりたいことはこれかなあ。
- 194 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 20:09:18 ]
- Ruby 的には mod_ruby と FastCGI とどっちがおすすめなんでしょうか。
mod_ruby って実は mod_php や mod_perl とかと相性悪かったりしない?
- 195 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 21:07:16 ]
- rubyは汎用なんでおすすめApacheモジュールとか言われても困るんじゃないの。
オススメはwebrickかmongrel
- 196 名前:184 mailto:sage [2008/11/09(日) 22:10:00 ]
- うん、だからFCGIやmongrel使うことになって、
mod_ruby を使いたいんだけど使えないなあと。 ほんとは mod_wsgi みたいに mod_rack が欲しい。
- 197 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 22:49:25 ]
- Phusion Passengerってのが別名mod_rack/mod_railsらしいけど詳細は知らない
- 198 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 00:32:36 ]
- アプリがrackやrailsだったらpassengerが希望のものかと。
- 199 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 14:04:46 ]
- >>148
日本語SPAMフィルターでrubyのやつがあったね そういえば
- 200 名前:デフォルトの名無しさん mailto:sage [2008/11/13(木) 14:08:08 ]
- rubyのコードを書けるコマンドラインのリネーマーツールってない?
rren -recurse *.txt "$_.upcase!" で aaa.txt bbb.txt が AAA.TXT BBB.TXT になるようなのでもっと至れり尽くせりなやつ。
- 201 名前:デフォルトの名無しさん [2008/11/13(木) 14:13:02 ]
- >>200
> もっと至れり尽くせりなやつ。 単に ruby でワンライナー書くのが一番至れり尽くせり。
- 202 名前:デフォルトの名無しさん mailto:sage [2008/11/13(木) 14:20:37 ]
- 定型処理には、ワンライナーは不便かもしれない。
rename [-g "グロブ記述"] "正規表現" くらいのインターフェイスでコマンドを書けばいいんじゃね?Rubyで。
- 203 名前:デフォルトの名無しさん mailto:sage [2008/11/13(木) 14:55:57 ]
- for filename in *.txt; do echo $filename `mv $filename | ruby -n -e 'print $_.upcase'`; done
ファイル名に空白とか入ってておかしなことになっても知らん
- 204 名前:デフォルトの名無しさん mailto:sage [2008/11/13(木) 14:56:49 ]
- あ、間違えた
for filename in *.txt; do mv $filename `echo $filename | ruby -n -e 'print $_.upcase'`; done
- 205 名前:デフォルトの名無しさん mailto:sage [2008/11/14(金) 18:33:16 ]
- >>203 は、echo で一回テストしてみる慎重な人。
- 206 名前:デフォルトの名無しさん mailto:sage [2008/11/14(金) 18:53:48 ]
- mv はよく痛い目に遭うから。
mv <パターン> <ディレクトリ> で、ディレクトリを入力し忘れたら、パターンに マッチしたファイルが2つで、2つめのファイルが消えちゃったとか。
- 207 名前:デフォルトの名無しさん mailto:sage [2008/11/14(金) 21:42:08 ]
- echo で試した後、ヒストリ戻って | sh と付けたりする。
- 208 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 07:04:10 ]
- 1.9.1-preview1のバグ?
subの第二引数にSJISの文字列を渡すと、2バイト目の\に反応しちゃってる >ruby19 -Ks -ve "puts 'test'.sub(/test/,'表0')" ruby 1.9.1 (2008-10-28 revision 19983) [i386-mingw32] 付est 「+暗が gsub できない」のブログエントリを見て そりゃあJISコードを直接扱うのは無理があるだろっ でもSJISも2バイト目に\が来たら、-Ksとかでちゃんと$KCODEをSJISにしておかないと引っかかるよなぁ だがしかし、1.9ならば文字列のエンコードさえしっかりしておけば無問題だぜ! >ruby19 -Kn -e "puts 'test'.sub(/test/,%!\x95\x5c0!.force_encoding('SJIS'))" 付est だめじゃんorz
- 209 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 08:09:14 ]
- Rangeに
x < first ? first : x > last ? last : x なメソッドってないもんかね。あってもよさそうな気がするのだが。
- 210 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 09:31:27 ]
- いい名前がないからじゃないかな
ぴったりな名前ある?
- 211 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 13:02:14 ]
- limit か bound 辺りかな?
(1..10).limit(11) => 10
- 212 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 13:25:05 ]
- 俺は以前、こんなメソッド定義してた
(1..10).fold(11) #=> 10 11.fold_in(1..10) #=> 10
- 213 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 14:27:05 ]
- なんか fold っていうと inject を思い出すな
- 214 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 16:59:52 ]
- >>209-213
自分はclampってのを使ってるけど、何故その名前を 使い始めたか思い出せない。合ってるのか?
- 215 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 20:21:02 ]
- >>214
いまいちな感じ ━━ n., vt. 締め金(で締める); (駐車違反車を)車輪止め(wheel 〜)を掛けて動かせなくする. * clamp down (on) (…を)押えつける; (…を)厳重に取締る. * clamp・down 取締り.
- 216 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 20:41:36 ]
- 以下カードキャプター禁止
|

|