プログラミング言語Ruby 1.9.Xについてのスレです。
2007年12月26日にリリース!されたもののまだまだ不安定だし,
1.8.Xとの互換性の問題もあることだし,
かといって,メーリングリストはほとんどROMだし(参加してないし),
ということで,1.9.Xオンリーのインストールからスクリプトまでの話題などどうぞ。
エラー,バグ報告もどしどし
■質問,話題を振る人へ
ポチッとな,とする前に次の3つのリンクを確認。
・http://svn.ruby-lang.org/repos/ruby/tags/v1_9_0_0/doc/NEWS
・http://svn.ruby-lang.org/repos/ruby/tags/v1_9_0_0/ChangeLog
・http://eigenclass.org/hiki.rb?Changes+in+Ruby+1.9 (参考)
未完だけど,マニュアルページもね(^^)
・http://doc.loveruby.net/refm/api/
質問には以下を書くこと。
・インストール環境(OS名、configureオプションなど)
・インストールの問題なのか、スクリプト自体の問題なのかを区別すること
・エラーメッセージ(なるべくそのままで)
・1.8.Xとの違いをできるだけ確認すること(1.8.Xでは実行できたとか)
質問と回答は1.9.X(いずれはRuby2.0)に寄与発展することになる!筈だ(^^)
魁け! Ruby 1.9.X
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2008/01/29(火) 19:45:46176デフォルトの名無しさん
2009/05/08(金) 09:29:42 pythonみたいに移行したほうがいいよ
誰かが音頭を取るべきだ
誰かが音頭を取るべきだ
177デフォルトの名無しさん
2009/05/08(金) 15:35:51 今移行しようとしてるとこだよ、mingwに。
178デフォルトの名無しさん
2009/05/11(月) 16:10:22 お前ら、1.9.1のパッチレベルリリースが間近らしいぞ。
問題あるなら今のうちに報告しとけよ。
問題あるなら今のうちに報告しとけよ。
179デフォルトの名無しさん
2009/05/11(月) 16:14:26 わかりやすいいこうまにゅあるおつけてくださいo
とくにがいじんさんにもなっとくできるえんこーでぃんぐのかいせつおつけてくださいo
っていうかせっとくもうやだ
とくにがいじんさんにもなっとくできるえんこーでぃんぐのかいせつおつけてくださいo
っていうかせっとくもうやだ
180デフォルトの名無しさん
2009/05/11(月) 16:15:49 エンコーディングまわりは、その方面で痛い目にあった経験がある
日本人にすら難しいのに。
日本人にすら難しいのに。
181デフォルトの名無しさん
2009/05/11(月) 16:23:24 がいじんさんは
先頭に # -*- coding: utf-8 -*- つけとけ
しか理解すまい
先頭に # -*- coding: utf-8 -*- つけとけ
しか理解すまい
182デフォルトの名無しさん
2009/05/11(月) 16:29:41 force_encodingが大活躍なんだが、ほかの対処方法はある?
183デフォルトの名無しさん
2009/05/11(月) 18:24:46 どういうデータを扱おうとしてるのか分からんことにはなんとも言いようがない。
外部からエンコーディングとデータが別々に渡されるんならそれこそ
force_encodingするしかないだろうし。
外部からエンコーディングとデータが別々に渡されるんならそれこそ
force_encodingするしかないだろうし。
184デフォルトの名無しさん
2009/05/11(月) 21:28:27 openするときエンコーディング指定してないだけだったりしてな。
185デフォルトの名無しさん
2009/05/13(水) 02:24:50 1.9.1-p129 age
186デフォルトの名無しさん
2009/08/12(水) 13:58:55 Macで1.9.1をソースからインストールしたのですが、標準添付されている
gemが上手く動きません。Digest::MD5が何かおかしいんだと思いますが、
具体的にはどうすればよいのでしょうか?
以下は gem install hogeしたときの表示です。
/Users/xxx/lib/ruby/1.9.1/rubygems/digest/md5.rb:8:in `require': dlopen(Users/xxx/lib/ruby/1.9.1/i386-darwin9.8.0/digest/md5.bundle, 9): Symbol not found: _rb_Digest_MD5_Finish (LoadError)
Referenced from: /Users/xxx/lib/ruby/1.9.1/i386-darwin9.8.0/digest/md5.bundle
Expected in: flat namespace
gemが上手く動きません。Digest::MD5が何かおかしいんだと思いますが、
具体的にはどうすればよいのでしょうか?
以下は gem install hogeしたときの表示です。
/Users/xxx/lib/ruby/1.9.1/rubygems/digest/md5.rb:8:in `require': dlopen(Users/xxx/lib/ruby/1.9.1/i386-darwin9.8.0/digest/md5.bundle, 9): Symbol not found: _rb_Digest_MD5_Finish (LoadError)
Referenced from: /Users/xxx/lib/ruby/1.9.1/i386-darwin9.8.0/digest/md5.bundle
Expected in: flat namespace
187デフォルトの名無しさん
2009/08/12(水) 14:49:05 dlは互換性なくなってるのだけど、hogeは1.9対応なの?
188デフォルトの名無しさん
2009/08/12(水) 14:50:54 ああん、あげてもーた。
189デフォルトの名無しさん
2009/08/12(水) 15:03:18 dlもhogeが1.9対応かどうかも関係ないだろ。
190デフォルトの名無しさん
2009/08/12(水) 15:04:21191デフォルトの名無しさん
2009/08/12(水) 17:43:13 >>186
1.9.1のrevisionは?
あとext/digest/md5/extconf.hはどうなってる?
ちなみにCONFIGURE_ARGS=--with-bundled-md5で試してみたところでは、
ちゃんと定義されてるようだ。
$ nm ext/digest/md5/*.o | grep -e MD5 -e :
ext/digest/md5/md5.o:
00000ed7 T _rb_Digest_MD5_Finish
00000d60 T _rb_Digest_MD5_Init
00000da5 T _rb_Digest_MD5_Update
ext/digest/md5/md5init.o:
U _rb_Digest_MD5_Finish
U _rb_Digest_MD5_Init
U _rb_Digest_MD5_Update
1.9.1のrevisionは?
あとext/digest/md5/extconf.hはどうなってる?
ちなみにCONFIGURE_ARGS=--with-bundled-md5で試してみたところでは、
ちゃんと定義されてるようだ。
$ nm ext/digest/md5/*.o | grep -e MD5 -e :
ext/digest/md5/md5.o:
00000ed7 T _rb_Digest_MD5_Finish
00000d60 T _rb_Digest_MD5_Init
00000da5 T _rb_Digest_MD5_Update
ext/digest/md5/md5init.o:
U _rb_Digest_MD5_Finish
U _rb_Digest_MD5_Init
U _rb_Digest_MD5_Update
192デフォルトの名無しさん
2009/08/12(水) 18:39:56 >>191
ruby-1.9.1-p243を使いました。
ext/digest/md5/extconf.hは次のようになっています。
#ifndef EXTCONF_H
#define EXTCONF_H
#define HAVE_CONFIG_H 1
#define HAVE_OPENSSL_MD5_H 1
#define HAVE_SYS_CDEFS_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_UNISTD_H 1
#endif
ruby-1.9.1-p243を使いました。
ext/digest/md5/extconf.hは次のようになっています。
#ifndef EXTCONF_H
#define EXTCONF_H
#define HAVE_CONFIG_H 1
#define HAVE_OPENSSL_MD5_H 1
#define HAVE_SYS_CDEFS_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_UNISTD_H 1
#endif
193デフォルトの名無しさん
2009/08/12(水) 22:47:49194デフォルトの名無しさん
2009/08/14(金) 14:54:55 >>192
OpenSSLのMD5を使うようになってるが、それだとmd5.hはインクルードしないので
#define MD5_Finish rb_Digest_MD5_Finish
は無効のはずなんだが。
まっさらの状態からコンパイルしてもそうなった?
OpenSSLのMD5を使うようになってるが、それだとmd5.hはインクルードしないので
#define MD5_Finish rb_Digest_MD5_Finish
は無効のはずなんだが。
まっさらの状態からコンパイルしてもそうなった?
195デフォルトの名無しさん
2009/08/17(月) 03:32:02 rubyって1.9になってから速くなったよね。たいしたもんだ。
196デフォルトの名無しさん
2009/08/17(月) 17:37:53 節子…、それ違う。Matzの実装が異様に遅すぎたから、普通の速度に戻しただけだ。
197デフォルトの名無しさん
2009/08/17(月) 17:39:35 普通の速度にしたというか、安全側から高速側に倒しただけ
自動焼人 ★ = 自動保守 ◆KAWORUKOFI = 自動保守#K9K?_D[L
名言集 その4
『俺、100人規模の集団サイバーテロの主犯だったこともあるんだぜ』
http://yutori7.2ch.net/test/read.cgi/news4vip/1249830540/ のID:PVAf+dux0 = 自動焼人 ★
> 965 :以下、名無しにかわりましてVIPがお送りします [sage] :2009/08/10(月) 00:02:09.35 ID:PVAf+dux0
> まぁ何だ。
> 俺の過去の経歴に比べたら、割れ厨なんて鼻くそレベルなんだけどなw
> 100人規模の集団サイバーテロの主犯とか、いろいろとな。
----------------------------------------------
この自動焼人 ★メールマガジンの配信停止をご希望される方は
http://qb5.2ch.net/test/read.cgi/sec2chd/1250169591/
にて自動焼人 ★までご連絡ください
名言集 その4
『俺、100人規模の集団サイバーテロの主犯だったこともあるんだぜ』
http://yutori7.2ch.net/test/read.cgi/news4vip/1249830540/ のID:PVAf+dux0 = 自動焼人 ★
> 965 :以下、名無しにかわりましてVIPがお送りします [sage] :2009/08/10(月) 00:02:09.35 ID:PVAf+dux0
> まぁ何だ。
> 俺の過去の経歴に比べたら、割れ厨なんて鼻くそレベルなんだけどなw
> 100人規模の集団サイバーテロの主犯とか、いろいろとな。
----------------------------------------------
この自動焼人 ★メールマガジンの配信停止をご希望される方は
http://qb5.2ch.net/test/read.cgi/sec2chd/1250169591/
にて自動焼人 ★までご連絡ください
199デフォルトの名無しさん
2009/08/17(月) 21:22:23200デフォルトの名無しさん
2009/08/17(月) 21:45:47 どういう職種でどういう用途でどのくらいの期間使うのかによる。
医療系の仕事ならやめとけ。
医療系の仕事ならやめとけ。
201デフォルトの名無しさん
2009/08/17(月) 21:51:33202デフォルトの名無しさん
2009/08/17(月) 21:53:09 医療…原子力制御…
Java並の安定性があるんだね!よかった!
Java並の安定性があるんだね!よかった!
203デフォルトの名無しさん
2009/08/17(月) 21:59:31 よーし、宇宙開発で使っちゃうぞ
204デフォルトの名無しさん
2009/08/17(月) 22:01:46 あの文言は素敵だと思う
考えた人はアジの技能あり
考えた人はアジの技能あり
205200
2009/08/18(火) 00:43:35 原発も詰めとこうかと思ったけどめんどくなってやめた。
そしたら>>201から狙い澄ましたようなボディブロー
そしたら>>201から狙い澄ましたようなボディブロー
206デフォルトの名無しさん
2009/08/21(金) 10:14:44 tmpfileに何があったの?
207デフォルトの名無しさん
2009/08/21(金) 10:32:45 見てきた。
http://redmine.ruby-lang.org/repositories/diff/ruby-19/lib/tempfile.rb?rev=23494&rev_to=22784
Tempfile#unlinkすると勝手にcloseするようになっちまってたのか。
これはひどい。だいたい、
lib/tempfile.rb (Tempfile#unlink): close first for Windows. a patch from Florian Frank. [ruby-core:23505]
とあるけど、これ全プラットフォームでこの動作になってるような。
UNIX厨のmatzが、なんでこんなパッチ採用したんだ……
http://redmine.ruby-lang.org/repositories/diff/ruby-19/lib/tempfile.rb?rev=23494&rev_to=22784
Tempfile#unlinkすると勝手にcloseするようになっちまってたのか。
これはひどい。だいたい、
lib/tempfile.rb (Tempfile#unlink): close first for Windows. a patch from Florian Frank. [ruby-core:23505]
とあるけど、これ全プラットフォームでこの動作になってるような。
UNIX厨のmatzが、なんでこんなパッチ採用したんだ……
208デフォルトの名無しさん
2009/08/22(土) 18:36:27 ああああああ、String#size の返り値が 1.8 と違うのか
まあそりゃそうだわな
あああああめんどくさああああ
というか 1.8.6 に String#bytesize とか入れておいてくれればよかったのに
まあそりゃそうだわな
あああああめんどくさああああ
というか 1.8.6 に String#bytesize とか入れておいてくれればよかったのに
209デフォルトの名無しさん
2009/08/22(土) 18:50:47 ASCII_8BITにするのがそんなに手間かね
210デフォルトの名無しさん
2009/08/22(土) 18:54:05 >>209
はい
はい
211デフォルトの名無しさん
2009/08/22(土) 18:57:32 レスから考えて1.8と1.9の共用スクリプトだろうからな
sizeのためにforce_encodingするとかまあありえんわ
というかASCII_8BIT厨は早く絶滅してくれないかなと思う
sizeのためにforce_encodingするとかまあありえんわ
というかASCII_8BIT厨は早く絶滅してくれないかなと思う
212デフォルトの名無しさん
2009/08/23(日) 10:23:40 >>209
そんな腐った修正ですますなんて、おまえ土方だな?
そんな腐った修正ですますなんて、おまえ土方だな?
213デフォルトの名無しさん
2009/08/23(日) 12:09:39 具体的にどう修正すべきかも書けよ
214デフォルトの名無しさん
2009/08/23(日) 12:21:03 RUBY_VERSION で場合分けする
安全確実高利回り
コードが若干長くてやや複雑で記述が煩雑になるのだけが極めてごく些細微細な欠点
安全確実高利回り
コードが若干長くてやや複雑で記述が煩雑になるのだけが極めてごく些細微細な欠点
215デフォルトの名無しさん
2009/08/23(日) 12:30:47 >>208
> というか 1.8.6 に String#bytesize とか入れておいてくれればよかったのに
1.8.7 には入ってるよ。
1.9 用とソースを共通化したいなら 1.8.6 はいい加減捨てよう。
> というか 1.8.6 に String#bytesize とか入れておいてくれればよかったのに
1.8.7 には入ってるよ。
1.9 用とソースを共通化したいなら 1.8.6 はいい加減捨てよう。
216デフォルトの名無しさん
2009/08/23(日) 12:31:58 respond_to?(:bytesize)
の方がいいと思う
の方がいいと思う
217デフォルトの名無しさん
2009/08/23(日) 13:03:09 >>214
それはないw
それはないw
218デフォルトの名無しさん
2009/08/23(日) 13:21:00 >>216
実際問題として、それではダメだ
こういう場合、特定の名前のメソッドがあるかどうかが問題なのではなく、
メソッドが「どう」動作するかが重要だから
あらゆるメソッドを responed_to? しなければならなくなるし、バージョン差異を埋めるのには向かないと思う
実際問題として、それではダメだ
こういう場合、特定の名前のメソッドがあるかどうかが問題なのではなく、
メソッドが「どう」動作するかが重要だから
あらゆるメソッドを responed_to? しなければならなくなるし、バージョン差異を埋めるのには向かないと思う
219デフォルトの名無しさん
2009/08/23(日) 13:58:48 Pythonじゃないんだから互換性なんて無視してRubyらしさを追求すればいいと思う。
220デフォルトの名無しさん
2009/08/23(日) 14:10:47 responed_to? がなんのために存在するメソッドか考えれば、1.8/1.9 判定に使うのが不適当とわかるはず
defined?(Encoding) とかも同様
Ruby 本体のバージョンが違うことが問題なんだから、素直にバージョン比較すればいいのに
なんでそこでだけ頑なに「Ruby としての読み下しやすさ」を否定した処理をしようとするのがよくわからん
defined?(Encoding) とかも同様
Ruby 本体のバージョンが違うことが問題なんだから、素直にバージョン比較すればいいのに
なんでそこでだけ頑なに「Ruby としての読み下しやすさ」を否定した処理をしようとするのがよくわからん
221デフォルトの名無しさん
2009/08/23(日) 14:20:59 if RUBY_VERSION >= 1.9.0 then … else … end という記述がヤボったくてカッコ悪いと思われてるのでは
なんかこう、超クールな処理になるようにすればみんな使ってくれるかも
1.8 系列だと読み飛ばすけど 1.9 系列だと処理するブロックとか
なんかこう、超クールな処理になるようにすればみんな使ってくれるかも
1.8 系列だと読み飛ばすけど 1.9 系列だと処理するブロックとか
222デフォルトの名無しさん
2009/08/23(日) 14:25:55 > 1.8 系列だと読み飛ばすけど 1.9 系列だと処理するブロックとか
if RUBY_VERSION < "1.9.0"
... # for Ruby 1.8
else
... # for Ruby 1.9
end
if RUBY_VERSION < "1.9.0"
... # for Ruby 1.8
else
... # for Ruby 1.9
end
223デフォルトの名無しさん
2009/08/23(日) 14:46:04 $Rv = RUBY_VERSION < "1.9.0" ? {1.8 => true} : {1.9 => true}
というグローバル変数を設定してるスクリプトなら見たことがある
if $Rv[1.8]
... # for Ruby 1.8
else
... # for Ruby 1.9
end
とか
(Ruby1.9専用処理) if $Rv[1.9]
とか使うらしい
というグローバル変数を設定してるスクリプトなら見たことがある
if $Rv[1.8]
... # for Ruby 1.8
else
... # for Ruby 1.9
end
とか
(Ruby1.9専用処理) if $Rv[1.9]
とか使うらしい
224デフォルトの名無しさん
2009/08/23(日) 14:50:33 よし構文と専用演算子の導入だ。
225デフォルトの名無しさん
2009/08/25(火) 02:53:38 RUBY_VERSIONで分岐すんなよ。消すぞ。
226デフォルトの名無しさん
2009/09/18(金) 23:28:08 【extname.rbの中身】
# -*- coding: utf-8 -*-
a = "記録.txt"
b = "設定.txt"
p File.extname(a)
p File.extname(b)
【実行】
C:\Usr\Ruby>ruby --version
ruby 1.9.1p129 (2009-05-12 revision 23412) [i386-mswin32]
C:\Usr\Ruby>ruby extname.rb
".txt"
"" ←.txtにならない
何ぞこれ
# -*- coding: utf-8 -*-
a = "記録.txt"
b = "設定.txt"
p File.extname(a)
p File.extname(b)
【実行】
C:\Usr\Ruby>ruby --version
ruby 1.9.1p129 (2009-05-12 revision 23412) [i386-mswin32]
C:\Usr\Ruby>ruby extname.rb
".txt"
"" ←.txtにならない
何ぞこれ
227デフォルトの名無しさん
2009/09/19(土) 01:44:36228デフォルトの名無しさん
2009/09/19(土) 11:32:19 ちょっと調べてみた。
パス名関係はまだエンコーディングに対応してない。
常に外部エンコーディングと見なして処理してる。
より正確には、Windowsの場合はCharNextを使っているのでシステムのコードペー
ジの設定に依存する。
詳しく説明すると、UTF-8では「設定.txt」は
e8 a8 ad e5 ae 9a 2e 74 78 74
だが、
$ echo -e '\xe8\xa8\xad\xe5\xae\x9a.txt' | nkf -Swx
險ュ螳txt
\xadは半角ユなので1バイトずれて\x9a\x2eが一文字と認識されてしまう。
そして.が消えてしまってextnameは空になる。
パス名関係はまだエンコーディングに対応してない。
常に外部エンコーディングと見なして処理してる。
より正確には、Windowsの場合はCharNextを使っているのでシステムのコードペー
ジの設定に依存する。
詳しく説明すると、UTF-8では「設定.txt」は
e8 a8 ad e5 ae 9a 2e 74 78 74
だが、
$ echo -e '\xe8\xa8\xad\xe5\xae\x9a.txt' | nkf -Swx
險ュ螳txt
\xadは半角ユなので1バイトずれて\x9a\x2eが一文字と認識されてしまう。
そして.が消えてしまってextnameは空になる。
229デフォルトの名無しさん
2009/09/19(土) 13:37:15 なるほど。
しかも ruby -w で pathname.rb を読むと警告でる。
しかも ruby -w で pathname.rb を読むと警告でる。
230デフォルトの名無しさん
2009/09/19(土) 20:32:49 出ないぞ、と思ったら1.9.1か?
trunkでは直ってるようだ。
trunkでは直ってるようだ。
231デフォルトの名無しさん
2009/09/26(土) 21:11:40 へえ
232デフォルトの名無しさん
2010/01/03(日) 12:32:43 開けましておめでとうございます。
233デフォルトの名無しさん
2010/01/03(日) 12:45:41 空けましておめでとうございます。
234デフォルトの名無しさん
2010/01/03(日) 23:51:06 貫通けましておめでとうございます
姫初めはいかがでしたか?
姫初めはいかがでしたか?
235デフォルトの名無しさん
2010/03/21(日) 14:35:35 大量のオブジェクトが生成されるコードがあって、1.8.7で実行すると
非常に遅いんだけど、ちょっと手直しして1.9で実行すると大幅に
改善されたりしますか?
自分で試したいのはやまやまなんだけど、「ちょっと」の手直しが
どのくらいか不明なので、すいませんが教えてください。
非常に遅いんだけど、ちょっと手直しして1.9で実行すると大幅に
改善されたりしますか?
自分で試したいのはやまやまなんだけど、「ちょっと」の手直しが
どのくらいか不明なので、すいませんが教えてください。
236デフォルトの名無しさん
2010/03/21(日) 15:38:04 >235
DBから20万行取得するだけのスクリプトが3倍速になった。
DBから20万行取得するだけのスクリプトが3倍速になった。
237234
2010/03/21(日) 16:22:51 >236
本当ですか!?やっぱりスイッチする価値ありかなあ。
本当ですか!?やっぱりスイッチする価値ありかなあ。
238デフォルトの名無しさん
2010/03/21(日) 19:45:27 手直しが確実に必要なわけ?
試しに動かせないの?
試しに動かせないの?
239デフォルトの名無しさん
2010/03/21(日) 20:33:27 やってみないとわからないです(´・ω・`)
240デフォルトの名無しさん
2010/03/21(日) 21:08:44 手の施しようがないほど遅くなる場合もある
足し引きの結果が速くなるか遅くなるかは実際に動かさないと判断できない
足し引きの結果が速くなるか遅くなるかは実際に動かさないと判断できない
241234
2010/03/21(日) 21:25:53 >238
1.8系と1.9系の共存はできなくないらしいけど
なんかヘマをやってライブラリ関係が衝突しそうで怖いのです。
まあそんなこと言ってる時点で1.9は「待ち」ですかね。
>240
なんとそういうこともありますか。
ますます移行しにくくなりました。
Mac使いなんで、1.9がOSXにプリインストールされる
ようになったらまた考えます。
1.8系と1.9系の共存はできなくないらしいけど
なんかヘマをやってライブラリ関係が衝突しそうで怖いのです。
まあそんなこと言ってる時点で1.9は「待ち」ですかね。
>240
なんとそういうこともありますか。
ますます移行しにくくなりました。
Mac使いなんで、1.9がOSXにプリインストールされる
ようになったらまた考えます。
242デフォルトの名無しさん
2010/03/21(日) 22:36:36243デフォルトの名無しさん
2010/06/13(日) 23:32:10 エンコード指定uzeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
マジックコメンkimeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
あのスマートだったruby君が理屈っぽいピザになってしまった。。。Railsとか言う奴のせいだ。
マジックコメンkimeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
あのスマートだったruby君が理屈っぽいピザになってしまった。。。Railsとか言う奴のせいだ。
244 ◆rT33C51l9k
2010/06/14(月) 00:11:52 マジックコメントはこんなことやれば一応は省略できるな
ruby -Ka filename.rb
ruby -Ku filename.rb
つうかまさかこのままマジックコメント付けることを義務化し続けるゴミ言語で突き進む気はないだろうな?
なんだろう。OSの文字コードの標準をUTF-8にしやがれっていう見えないプレッシャーでもかけてるつもりかねwww
ruby -Ka filename.rb
ruby -Ku filename.rb
つうかまさかこのままマジックコメント付けることを義務化し続けるゴミ言語で突き進む気はないだろうな?
なんだろう。OSの文字コードの標準をUTF-8にしやがれっていう見えないプレッシャーでもかけてるつもりかねwww
245デフォルトの名無しさん
2010/06/14(月) 10:03:15 おまえは馬鹿か?
マジックコメントが示すのは、ソースコードのリテラルがどの文字コードで書かれているか、だけだぞ極端に言うと。
マジックコメントが示すのは、ソースコードのリテラルがどの文字コードで書かれているか、だけだぞ極端に言うと。
246デフォルトの名無しさん
2010/06/14(月) 17:13:31 と、馬鹿がもう一人
247デフォルトの名無しさん
2010/06/16(水) 02:06:16 JAVAのエクリプスみたいなソフトって無いの?
Windowsで動くやつで
Windowsで動くやつで
248デフォルトの名無しさん
2010/06/16(水) 07:48:16 NetBeansを使えばいいと思うよ
ていうか、Eclipseにも確かRubyプラグインある
ていうか、Eclipseにも確かRubyプラグインある
249デフォルトの名無しさん
2010/07/02(金) 20:20:12 Ruby 1.9.1-p429 アゲ
250デフォルトの名無しさん
2010/07/14(水) 01:08:41 結構、言語処理系に行くっていうのが、はまりポイントで、
確か、Rubyのまつもとゆきひろさんか誰かがおっしゃっていたんですが、
「エンジニアっていうのはだいたいOSを作るか、
言語処理系を作るかに分かれる」らしいんです。
私はどっちにも足をつっこんでしまった感じで、
これは泥沼なんじゃないのかなとも思いますね(笑)
確か、Rubyのまつもとゆきひろさんか誰かがおっしゃっていたんですが、
「エンジニアっていうのはだいたいOSを作るか、
言語処理系を作るかに分かれる」らしいんです。
私はどっちにも足をつっこんでしまった感じで、
これは泥沼なんじゃないのかなとも思いますね(笑)
251デフォルトの名無しさん
2010/07/14(水) 08:36:24 Matzの頭にはCPUを作る方への分岐はないんだな
252デフォルトの名無しさん
2010/08/09(月) 23:53:11 アニメにはまる道もあるぞ。
253デフォルトの名無しさん
2011/01/12(水) 17:47:24 モジュール関数を呼ぶ時、
MyModule::mymethodと::で繋ぐのが好ましいんでしたっけ?
それともMyModule.mymethodという風に「.」で繋ぐ方が望ましいんでしたっけ?
これは確かどっかに書いてあって、それでどっちかに統一しなきゃな、って思ってたんだけど、
ruby久々に触ったら忘れてしまってた…。
これどっちだったか分かりますでしょうか?ちなみに理由も添えて教えてほしい
更に言えばどこに書いてあった、という情報源も提示していただきたいのです
「昔自分が書いたコード見ればいいだろ」と思うかも知れないけど、
その時は仕事で使ってたもので、自分が書いたコードも手元に無いのです
MyModule::mymethodと::で繋ぐのが好ましいんでしたっけ?
それともMyModule.mymethodという風に「.」で繋ぐ方が望ましいんでしたっけ?
これは確かどっかに書いてあって、それでどっちかに統一しなきゃな、って思ってたんだけど、
ruby久々に触ったら忘れてしまってた…。
これどっちだったか分かりますでしょうか?ちなみに理由も添えて教えてほしい
更に言えばどこに書いてあった、という情報源も提示していただきたいのです
「昔自分が書いたコード見ればいいだろ」と思うかも知れないけど、
その時は仕事で使ってたもので、自分が書いたコードも手元に無いのです
254デフォルトの名無しさん
2011/01/12(水) 18:45:14 クラスオブジェクトの特異メソッドを呼ぶときは、それ用の特殊な記法よりも、
<オブジェクトを示す式> . <メソッド名> のほうが Ruby の一般的な記法なので
それに合わせて、MyModule.mymethod のほうがよい。
:: は定数専用でしか使わないようにする。
<オブジェクトを示す式> . <メソッド名> のほうが Ruby の一般的な記法なので
それに合わせて、MyModule.mymethod のほうがよい。
:: は定数専用でしか使わないようにする。
255デフォルトの名無しさん
2011/01/12(水) 20:06:22 なぜ、定数なら :: なの?
256デフォルトの名無しさん
2011/01/12(水) 20:23:51 ::はそもそも定数の区切りとしての用途のもの。
モジュール名やクラス名も、値としてClassクラスやModuleクラスの
インスタンスを持つ定数に過ぎない。
MyModule.mymethod は単なる特異メソッドの呼び出しなのだが、
クラスやモジュールの得意メソッドはC++を背景に持つ人にはstatic
メソッドに見えるので、便宜を図って::でも呼べるようになってるだけ。
モジュール名やクラス名も、値としてClassクラスやModuleクラスの
インスタンスを持つ定数に過ぎない。
MyModule.mymethod は単なる特異メソッドの呼び出しなのだが、
クラスやモジュールの得意メソッドはC++を背景に持つ人にはstatic
メソッドに見えるので、便宜を図って::でも呼べるようになってるだけ。
257デフォルトの名無しさん
2011/01/12(水) 20:28:51 と書いておいて申し訳ないが、定数の区切りというのは正しくないか。
r = Regexp
r::EXTENDED #=> 2
とかアリだし。
r = Regexp
r::EXTENDED #=> 2
とかアリだし。
258253
2011/01/14(金) 09:09:02 回答ありがとう。確かに「.」が正しかった気がします。
ついでにもう一つ、perlには配列の最後の要素の添字を求めるのに $#foo という記法がありますが、
rubyでは foo.size-1 するしかないんだっけ?
なんかこれが美しくないので専用の記法(あるいはメソッド)が無いか調べてたんだけど、
多分これは無かった気がしたので無いんでしょうね
インクリメント、デクリメントも無いしね
ついでにもう一つ、perlには配列の最後の要素の添字を求めるのに $#foo という記法がありますが、
rubyでは foo.size-1 するしかないんだっけ?
なんかこれが美しくないので専用の記法(あるいはメソッド)が無いか調べてたんだけど、
多分これは無かった気がしたので無いんでしょうね
インクリメント、デクリメントも無いしね
259デフォルトの名無しさん
2011/01/14(金) 10:25:49 >>258
多分、無い。
perlの記法が美しいとは全く思えないんだけど、
class Array
def -@
size - 1
end
end
-[1,2,3] # => 2
みたいなことは、やろうと思えば出来る。
でも、last_indexとかのメソッドを作った方がいいだろうね。
多分、無い。
perlの記法が美しいとは全く思えないんだけど、
class Array
def -@
size - 1
end
end
-[1,2,3] # => 2
みたいなことは、やろうと思えば出来る。
でも、last_indexとかのメソッドを作った方がいいだろうね。
260デフォルトの名無しさん
2011/01/14(金) 11:13:26 添え字アクセスのときなら、負の数なら末尾から数えるんだけど(-1が末尾)、
それが実際にいくつになるかはsizeと相談するしかなさそうだな。
それが実際にいくつになるかはsizeと相談するしかなさそうだな。
261デフォルトの名無しさん
2011/01/14(金) 18:23:41 そこって初心者に聞かれたらなんて答えればいいんだろう。
Object#contantsの戻り値がHashとかだったら、構文糖衣だぜって言って終わりなのだが。
まあ、実装はHashなんだろうけど。
Object#contantsの戻り値がHashとかだったら、構文糖衣だぜって言って終わりなのだが。
まあ、実装はHashなんだろうけど。
262261
2011/01/14(金) 18:28:47263デフォルトの名無しさん
2011/01/14(金) 18:32:03264デフォルトの名無しさん
2011/01/17(月) 08:42:21 >>260
あー、それ忘れてた。ただ「添字がマイナスの時は末尾から数える」って公式に決まってたっけ?
今オンラインリファレンスざっと見たけど書いてない。ウサギ本に載ってた気がしたが…
要するに将来のverUpなんかであっさりこの辺の挙動変えられると安心して使えないよね
そもそも、foo[-1]と書くよりfoo.lastと書いた方が美しいし読みやすいし、いい事尽くめではあるが
>>262
foo.size-1 より $#foo の方が美しいとは言わないが、(俺もどっちもどっちだと思う)
専用の記法があったらな、ないのかな、って思っちゃって
>>259案のlast_indexメソッドをArrayクラスに追加ってのが一番美しいと思う
ただそこまでする必要があるか?っていうと、
やはりこれは公式に標準搭載されていて全員に認知されていてこそ意味があると思うので、
個人的にこういうことするんだったら素直に foo.size-1 と書くのが平易で正しいと思う
あー、それ忘れてた。ただ「添字がマイナスの時は末尾から数える」って公式に決まってたっけ?
今オンラインリファレンスざっと見たけど書いてない。ウサギ本に載ってた気がしたが…
要するに将来のverUpなんかであっさりこの辺の挙動変えられると安心して使えないよね
そもそも、foo[-1]と書くよりfoo.lastと書いた方が美しいし読みやすいし、いい事尽くめではあるが
>>262
foo.size-1 より $#foo の方が美しいとは言わないが、(俺もどっちもどっちだと思う)
専用の記法があったらな、ないのかな、って思っちゃって
>>259案のlast_indexメソッドをArrayクラスに追加ってのが一番美しいと思う
ただそこまでする必要があるか?っていうと、
やはりこれは公式に標準搭載されていて全員に認知されていてこそ意味があると思うので、
個人的にこういうことするんだったら素直に foo.size-1 と書くのが平易で正しいと思う
265デフォルトの名無しさん
2011/01/17(月) 08:47:22 >>260
>あー、それ忘れてた。ただ「添字がマイナスの時は末尾から数える」って公式に決まってたっけ?
array.c
* Negative indices count backward from the end of the
* array (-1 is the last element).
>あー、それ忘れてた。ただ「添字がマイナスの時は末尾から数える」って公式に決まってたっけ?
array.c
* Negative indices count backward from the end of the
* array (-1 is the last element).
266デフォルトの名無しさん
2011/01/17(月) 08:57:08 >>264 だった。
IPAのFinal Draftによると
[](*args)
a) nをレシーバの長さとする
b) argsの長さが0のとき、ArgumentError
c) argsの長さが1のとき、
1) その引数がIntegerならその値をkとする。Integerでなければ未定義
2) k<0ならkにnを加える。まだk<0ならnilを返す。
3) k>=nならnilを返す。
4) k番目の要素を返す。
d) argsの長さが2のとき<以下略>
IPAのFinal Draftによると
[](*args)
a) nをレシーバの長さとする
b) argsの長さが0のとき、ArgumentError
c) argsの長さが1のとき、
1) その引数がIntegerならその値をkとする。Integerでなければ未定義
2) k<0ならkにnを加える。まだk<0ならnilを返す。
3) k>=nならnilを返す。
4) k番目の要素を返す。
d) argsの長さが2のとき<以下略>
267デフォルトの名無しさん
2011/01/22(土) 09:11:34 >>265-266
ほー。なるほど。サンクス
ほー。なるほど。サンクス
268デフォルトの名無しさん
2011/03/01(火) 12:21:59.04 ∩___∩ 未だ連絡ゼロクマー
| ノ ___ヽ
/。・゚・(____ `・゜゚・。 いつでも連絡するクマー
| u( _●_)ヽ 〉
彡、 |∪| / 誰か助けるクマー
. / ヽノ . /´
.____
/ ヽ、 _ノ\
/ (○)iji(○)\ 正義がキチガイ呼ばわりされたんだぞ。
/ (__人__) \
| |::::::| | 義憤に駆られることはないのかお?
\ l;;;;;;l /l!| !
/ `ー' \ |i Rubyistとして後ろめたさはないのかお!
/ ヽ !l ヽi
( 丶- 、 しE |そ 一生後悔することになるお!
`ー、_ノ 煤@l、E ノ <
レY^V^ヽl そこのあなた!勇気を出すんだお。
____
/ \ 助けて欲しいんだお・・・
/ _ノ ヽ、_ \ 同じ釜の飯を食ったんだお・・・
/ o゚((●)) ((●))゚o \ いつも一人で居残り残業してたんだお・・・
| (__人__) | あまりの悲しさに、むせび泣いたこともあったお
\ ` ⌒´ / そんなやる夫を見捨てるのかお?
____ このままだったら一生恨むお
/ \ たとえ誰がなんと言おうと、強烈な違和感なんだお
/ _ノ ヽ、_ \ 直観がモノ言ってんだお
/ o゚⌒ ⌒゚o \ えっぇっえ〜ん。え〜ん。
| (__人__) | えっぇっえっぇっ。うっぅっぅうー。。。
\ ` ⌒´ / うええ〜ん。。。えぐっぇぐっうっうっううぅー。。。
| ノ ___ヽ
/。・゚・(____ `・゜゚・。 いつでも連絡するクマー
| u( _●_)ヽ 〉
彡、 |∪| / 誰か助けるクマー
. / ヽノ . /´
.____
/ ヽ、 _ノ\
/ (○)iji(○)\ 正義がキチガイ呼ばわりされたんだぞ。
/ (__人__) \
| |::::::| | 義憤に駆られることはないのかお?
\ l;;;;;;l /l!| !
/ `ー' \ |i Rubyistとして後ろめたさはないのかお!
/ ヽ !l ヽi
( 丶- 、 しE |そ 一生後悔することになるお!
`ー、_ノ 煤@l、E ノ <
レY^V^ヽl そこのあなた!勇気を出すんだお。
____
/ \ 助けて欲しいんだお・・・
/ _ノ ヽ、_ \ 同じ釜の飯を食ったんだお・・・
/ o゚((●)) ((●))゚o \ いつも一人で居残り残業してたんだお・・・
| (__人__) | あまりの悲しさに、むせび泣いたこともあったお
\ ` ⌒´ / そんなやる夫を見捨てるのかお?
____ このままだったら一生恨むお
/ \ たとえ誰がなんと言おうと、強烈な違和感なんだお
/ _ノ ヽ、_ \ 直観がモノ言ってんだお
/ o゚⌒ ⌒゚o \ えっぇっえ〜ん。え〜ん。
| (__人__) | えっぇっえっぇっ。うっぅっぅうー。。。
\ ` ⌒´ / うええ〜ん。。。えぐっぇぐっうっうっううぅー。。。
269デフォルトの名無しさん
2011/03/01(火) 14:30:32.72 そういえばとっくにRuby 1.9.2出てるのに話題に上がってないようなのは何故だ
270デフォルトの名無しさん
2011/03/01(火) 16:53:25.81 本スレで出来るからじゃない?
271デフォルトの名無しさん
2011/03/01(火) 17:29:39.38 いまから Ruby を始めるのであれば 1.9.2 が妥当?
272デフォルトの名無しさん
2011/03/02(水) 01:11:46.83 >271
2.0を待て。
2.0を待て。
273デフォルトの名無しさん
2011/03/02(水) 13:17:28.52274デフォルトの名無しさん
2011/03/10(木) 16:44:21.82 Ubuntu 環境で 1.9.2 を使いたいのですが deb が提供されていないようので
rvm あたりを導入するのがよさげなのでしょうか。
rvm あたりを導入するのがよさげなのでしょうか。
275デフォルトの名無しさん
2011/03/10(木) 17:21:47.91 変なレイヤーがあるとトラブル時に原因が分かりにくくなるので、
まったくの初心者は
--prefix=/usr/local (デフォルト。要root)か --prefix=$HOME みたいな
引数でconfigureしてインストールするのを勧めたい。
けど、最近は rvm がトレンドなんだろうな。
まったくの初心者は
--prefix=/usr/local (デフォルト。要root)か --prefix=$HOME みたいな
引数でconfigureしてインストールするのを勧めたい。
けど、最近は rvm がトレンドなんだろうな。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「中国人の訪日熱は冷めた」 人気旅行先から日本外れる 14日で自粛呼びかけ1カ月 ★2 [蚤の市★]
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★7 [蚤の市★]
- 最新版Z級クソ映画ランキングが決定! [牛丼★]
- 【STARTO ENTERTAINMENT】SUPER EIGHTの横山裕、フジ『ドッキリGP』ロケで全治2ヶ月の重傷 [Ailuropoda melanoleuca★]
- 「1800万円の売り上げゼロに…」中国インバウンドに特化の宿の今 ★2 [蚤の市★]
- 公用車カーナビのNHK受信料「全額免除を」 千葉市議会、国に制度創設求める意見書可決 [少考さん★]
- 【安倍の実】大誤算!日本企業、円安で苦しむ、、適正為替より大幅に乖離。助けて高市 [219241683]
- 【朗報】南鳥島のレアアース、中国産の「20倍の純度」青山繁晴氏「日本は資源大国」日本復活のファンファーレが鳴り響く! [673057929]
- 愛国者「釘を使わない日本独自の伝統工法スゴイ!」X民「それ中国起源ですよ」→批判殺到 [834922174]
- 高市応援団の筆頭格「高市政権が誕生したのは12月1日だ!!!」 [931948549]
- 👊😅👊三☁😶‍🌫三⛅🏡
- コーヒー、来年3月から30パーセント値上げへ [709039863]
