1 :
デフォルトの名無しさん :
2010/04/26(月) 11:16:19
,―ヽ_(((((_、―
,/ ノ ヽ ~\
/ ノ IPA ヽ ~\
/ ノ ヽ、 `ヽ
| ノ / ̄\ / ̄~ヽ ヽ i
| ノ | ノ
\ | <●> <●> ( )
\ | | | i /
| / ヽ レ
i (●_●) /
i、 ,-――-、 ・ /
i、 <(EEEEE)> ∵/
>>1 スレ立て乙ピョん☆
i、 \ ./ /
\ ーー ,ノ
,,.....イ.ヽヽ、ー-―一ノ゙-、.
: | '; \_____ ノ.| ヽ i
| \/゙(__)\,| i |
○
>>1 乙 もうお前に用はない
く|)へ
〉 ヽ○ノ
 ̄ ̄7 ヘ/
/ ノ
|
/
|
/
体が目当てだったのね
IronRuby1.0のおはなし button01 = System::Windows::Forms::Button.new() button01.Name = "button01" って感じでボタンを定義してやって ボタンを押したときに puts sender.name + "押した!\n" #=> button01ツ可淞つオツつスツ! puts "button01" + "押した!\n" #=> button01押した! puts sender.name.chomp + "押した!\n" #=> button01押した! puts sender.name == "button01" #=> ture って感じになるんだよな 日本語については、なんか使いずらそうだな
よくわからないけどとりあえず芸スポから来ましたオッスオッス
ねー質問 Mechanize のクラスを再オープンしてメソッド付け加えたり書き換えたりするライブラリを作ったんだよ require 'mechanize' require 'mechanize/plus' # ←こんなノリのやつ Mechanize は GPL だから、そのソースを動的に改変するこれを誰か第三者に公開するときは やっぱり GPL で公開「しなければならない」よね?
動的に改変するってそんな大層なことしてるわけじゃなかった えーと、GPL なクラスの構造を頼りにしたソースコードってやっぱ GPL だよねみたいなそんな質問
説明と解釈に迷うようなら親と同じライセンスにしておくのが超無難
お、じゃあMechanizeにメソッド足したりクラス継承したりしてるライブラリはみんなGPLか
GPLはそういうライセンス
>>14 class Mechanize
end
これが GPL ライセンスに感染するの?
それだけなら感染するわけがない
Mechanize クラスは既に GPL のもとにあるはずだが
GPLは著作権に依拠したライセンスである。
よって、GPLで保護できるのは著作権が発生するコードのみである。
classとendはRubyの予約語だから誰が書いても同じになる。
よって著作権が発生し得ない。
問題はクラス名であるMechanizeだが、クラスMechanizeにアクセスするためには
当然クラス名をコード中に記述することが必要なわけで、ゆえにクラス名自体は
一種のAPIであると考えられる。
ところが、API自体は著作権で保護されないとされている。
以上により、
>>15 のコード例には著作権は発生せず、よってGPLで保護される
こともない。
GPLはRubyスクリプトライブラリみたいなものにイマイチ合わない気がする
再オープンしてメソッドを追加したり上書きしたりするのはGPLの影響を受けないと思う 元のクラスのメソッド定義をコピペして改変した新メソッドで上書きするとGPLに従う必要が出てくると思う どんだけ改変すれば元のライセンスから逃れられるかは裁判所へGoだ
>>20 >メソッドを追加したり上書きしたりするのは
GPLの影響をうけるだろ
「元のプログラムから派生したもの」ではないと断言できる場合、 その「派生したものではない何か」は GPL の影響は自動では受けない たとえば、GPL のプログラムに対して BSD ライセンスのパッチを作ることは可能 クラス再オープンして中に何か書いた時点で元のコードのライセンスの影響を受けるとか怖過ぎるだろ 標準クラスにメソッド追加したら Ruby ライセンス?
ソースコードの履歴として追加や上書きされてるわけじゃないから問題ないと思う
>>10 動的に〜・・・とか問題にできるのはLGPLの話だからなあ
GPLだと再オープンも含めてGPLになるわな
>>24 クラスの再オープンに元のクラスのソースが必要になるとは思えない
Mechanize オブジェクトに引数渡してメソッド使って返り値を取得してるだけならセーフ メソッド追加したらその部分がアウト Mechanize オブジェクトに extend してもアウト WWW が Mechanize から無くなったのは、 require 'mechanize' したあとに 他のライブラリがたまたま WWW というモジュールを作って中にクラス作ると WWW::Mechanize のライセンスに引っかかるからな気がする
GPLのライブラリを利用しておきながらGPLを回避しようと考えること自体おこがましい 使いたい便利なライブラリがGPLだったなら、それはもう諦めてGPLとして公開すべき 自分の好みのライセンスを使いたいならゼロから自分で作るか、 好みのライセンスとかち合わないライセンスで公開されている類似のソフトウェアを使う
29 :
デフォルトの名無しさん :2010/04/28(水) 09:10:38
,―ヽ_(((((_、― ,/ ノ ヽ ~\ / ノ IPA ヽ ~\ / ノ ヽ、 `ヽ | ノ / ̄\ / ̄~ヽ ヽ i | ノ | ノ \ | <●> <●> ( ) \ | | | i / | / ヽ レ i (●_●) / i、 ,-――-、 ・ / i、 <(EEEEE)> ∵/ どういたしまして i、 \ ./ / \ ーー ,ノ ,,.....イ.ヽヽ、ー-―一ノ゙-、. : | '; \_____ ノ.| ヽ i | \/゙(__)\,| i |
require して agent 使うだけなら大丈夫
Mechanize クラスにメソッド追加したりしたら GPLv2
でいっすか
>>10 に対する回答としては「本体と同様 GPLv2 です」だな
>>28 適用可能なライセンスを正確に知るための調査、と
GPLを回避しようと考えることの間には随分飛躍があると思うが
なんかrubyって衰退する一方だね
無駄に盛り上がり過ぎただけだとは思うけどね Railsのブレイクがなければ、未だに魅力的な言語の印象が先行してそうな気はする 良くも悪くも実務に揉まれたって所じゃないのかな ユーザにとっては、正直PerlやPythonと同等に魅力有る言語だってことで十分 信者って言われても別にいい。慎ましく使わせてもらうさね
くまくまーの人がScala記事書いてたな
Scalaの記事なのでRubyスクリプト部分が不自然でへちょいというなんともアンバランスな というか使ってみればわかるがScalaは文法が変態だ 馴染みのない概念×変態な文法というハイレベル敷居
変態というか関数型なんかOCamlもF#もScalaもみんな同じ ラムダ式と呼ばれるごく一般的な文法だ エンタープライズ分野だとオブジェクト指向+関数型が主流になる日が遠くはないので ラムダ式理解できないと歯が立たないぞ
いや、PerlとRuby程度には違う Scalaはシンタックスシュガーの使いどころ絶対間違ってる OCamlのほうがなんぼか親しみやすい
実務に揉まれた結果Rubyは使用に耐えないと判断され(バレ)ました
ラムダ式って文法か?
純粋オブジェクト指向で静的型付けならC#で十分 明らかに黎明期にありがちな過大評価>Scala 同じ関数型ならF#の方が実用性は高いしC#との連携だって柔軟にできるし インタプリタ型としても使える 関数型だけで何かしようと思ってるストイックな人には向いてるかもしれんが Rubyと比較するのはアホもいいとこ
F#はWindows2000でインストールできないから嫌い いやサポート切れてるしワガママなんだけどねw
メソッド引数に対する respond_to? 地獄または kind_of? 地獄について本スレとして何かコメントでもあれば
口で「Ruby1.9の場合は…」と言っておきながら str.respond_ro?(:force_encoding) とか書く奴は池沼
そんなチェック書いたことないし、書く方がおかしいと思う。
case-whenでクラスのチェックは頻繁に使う
型チェックとか絶対いやだ。 そんなことするくらいならポリモーフィズムを使う。
Rubyに型なんてありませんよ
変数に型がないだけで、値には型があるんだが
スクリプト上からいわゆる「型チェック」をする機構は無いような気もする メッセージ応答性と所属クラスのチェックは型チェックとは違うような
型チェックをしたいならしたいで 新しい便利メソッドを1つ定義すればいいだけの話 わざわざrespond_toとかkind_ofとかを重ねる必要はないと思う
Rubyとしては 「妥当なオブジェクトを引数に指定しなかったユーザーが悪い」 「kind_of? とかするくらいなら受け付けるオブジェクトをマニュアルに書いと毛」 でいい?
ユーザーにメソッド名で選択させればいいじゃん? 「引数に何が来るかわからない」なんてのは多くの場合嘘だしさー def hoge_with_str(str) hoge_with_hash(:text => str) end def hoge_with_params(*arr) keys = [:text, :opt1, :opt2] hoge_with_hash(Hash[keys.zip(arr).flatten]) end def hoge_with_hash(h) ... end
>>55 次の日くらいにめんどくさくなって
def hoge(*arg)
case arg[0]
when String then hoge_with_string(arg[0])
when Hash then hoge_with_hash(arg[0])
else hoge_with_array(*arg)
end
end
とか速攻作られそうだな
逆回しのリファクタリングを見ているかのよーだ
RubyはScalaに負けてしまうん?
釣りにはちょっと遅いな
釣りとかじゃなくて、
>>58 の文章読んだところ本当にそう思った
くまくまーの人はBerryzからAKB48に乗り換えた15くらいの理由って記事を
℃-ute から S/mileage に乗り換えた 15 くらいの理由
Windows で require 'iconv' した場合、使われる iconv.dll ってどこにあるもの?
ruby\bin
1.9.1の場合は bin\libiconv2.dll が読まれるような気がする Nokogiri なんかは自前で iconv.dll が入ってるけど、これは nokogiri がパス固定で読んでるんだよね require 'iconv' で使用される iconv.dll と Nokogiri が使用する iconv は別だよね
>>66 nokogiri.rb:
ENV['PATH'] = [File.expand_path(
File.join(File.dirname(__FILE__), "..", "ext", "nokogiri")
), ENV['PATH']].compact.join(';') if RbConfig::CONFIG['host_os'] =~ /(mswin|mingw)/i
ということで、ENV['PATH'] が弄られてる
require 'iconv'
require 'nokogiri'
とすると、Iconv は ruby-1.8/bin/iconv.dll を、
require 'nokogiri'
require 'iconv'
とすると、Iconv は nokogiri/ext/nokogiri/iconv.dll を使う
…ように見える
誰か検証プリーズ
>>67 最初に呼ばれた方を使うはず。
ただ、いずれにしろWindowsバイナリ版Gemに同梱されてるiconv.dllは随分古くて日本向けパッチも当たってないもののはず。
このせいで配布されてるActiveScriptRubyでNokogiri使う場合、
Rubyについて Part 36
ttp://pc12.2ch.net/test/read.cgi/tech/1246174168/262 >NokogiriがWindows-31Jエンコーディングをサポートしていない気がする。
>正確にはNokogiriが使っているlibxml2が呼んでいるiconvかもしれないけど。
>>irb -Ks -rrubygems -rnokogiri
>#Shift_JISの範囲外の文字を含んだWindows-31J(=CP932)エンコーディングの文字列
>irb(main):001:0> s="<html><HEAD><TITLE>11@11@</TITLE></HEAD><body></body></html>"
>=> "<html><HEAD><TITLE>11@11@</TITLE></HEAD><body></body></html>"
>#Windows-31JエンコーディングでHTMLパース。失敗。
>irb(main):003:0> Nokogiri::HTML.parse(s,nil,'Windows-31J')
>encoding error : output conversion failed due to conv error, bytes 0x82 0x50 0xC
>2 0x87
>I/O error : encoder error
>=>
あたりの問題を踏むことになる。
本来ならActiveScriptRubyとRubyInstallerの中の人、 あとはgemでiconv.dll同梱してるような方々にiconv.dllの更新をお願いすべきなんだろうけど。 それはちょっと敷居が高いよね。
あ、いや、Nokogiri の iconv.dll は Windows-31J に対応したは…ず
irb> html = "<title>@1@`_</title>"
irb> puts Nokogiri::HTML.parse(html, nil, 'Windows-31J').at('title').inner_text
@ツ1ツ@ツ`ツ_
…ごめんなさい嘘でした
irb> p RUBY_DESCRIPTION
"ruby 1.8.7 (2010-01-10 patchlevel 249) [i386-mswin32]"
Nokogiri は gem build 時にここにあるのを wget してパッケージングして gem として配布してる
ftp://ftp.xmlsoft.org/libxml2/win32/ 自力で dll を作ってるわけではないから、パッチ示されてもどうにもならない
たぶんそこまでサポートしきれないんだろうし、それは仕方ないよね
偏見だけど、RubyInstaller を使う海外の人は iconv.dll が強まっても嬉しくないと思うんだ
いざとなったら MinGW を自力で入れてコンパイルできるし
だから ActiveScriptRuby の中の人に頑張って欲しいのだけど、
現在でも「追加物」が多いってのにさらに増やすのは流石に
MinGWを入れるってなんだ MSYSね
iconv-ja という gem パッケージを作る require 'iconv/ja' でジャパニーズフレンドリーなインターナショナルコードセットコンバセーションライブラリが
結論としては「おまえらRuby1.9.1使え」ということでよろしいですか
>>74 いや、iconv.dll に Windows-31J を使わせなければなんとでもなる
事前にわかってさえいれば、泥臭く回避は可能
irb> puts Nokogiri::HTML.parse(html, nil, 'Shift_JIS').at('title').inner_text.tosjis
irb> puts Nokogiri::HTML.parse(html, nil, 'CP932').at('title').inner_text.tosjis
@1@`_
irb> puts Nokogiri::HTML.parse(html, nil, 'Windows-31J').at('title').inner_text.tosjis
@ツ1ツ@ツ`ツ_
irb> puts Nokogiri::HTML.parse(html.toutf8, nil, 'utf-8').at('title').inner_text.tosjis
@1@`_
そんなのやだよ
Nokogiriに限ればひげの山男に言えば対応してくれそうな気もする。 最近Windows環境も手に入れたみたいだし。
>>77 ・ActiveScriptRubyの人(arton氏?)にiconv.dllのパッチ版を入れてもらう
・ひげの山男の人にiconv.dll同梱をやめてもらう
でrequire順で結果が変わることなく(日本人的には)おおむね望ましい結果になるのかな
日本向けっていうかWindows向けじゃないのか<iconvのパッチ
いや、「りなっくすにほんごかんきょうぱっけーじ」とか入れると日本用パッチ入りiconvが入ったりする…はず
そもそも iconv に全世界が利用してるというオフィシャルの気概がないのが悪い(逆切れ 日本語レガシーエンコードのぐちゃぐちゃに対応し切れないような感じだったと風聞 日本人でも「これが一応決定版もう何もしなくていいですこれだけやって」というようなパッチ出せないしなあ
海外の人は現状で困ってないだろうからなあ 処理速度遅くして日本人のために頑張ってください、というのはなかなか
>>78 gemcutterはなにかと不安定なのでRubyForge推奨
というか、ActiveScriptRuby か RubyInstaller か OneClickInstaller を使っている限り、 gem が自前で iconv.dll を持つ必要はないんだよね Iconv 用の iconv.dll がくっついてるはず(または別途自力で用意するはず)だから libxml2/libxslt のサイトには「iconv.dll も必要ですこれをダウンロードしてね」とか書いてあるけど、 $PATH にあればなんでもいいはず 配布もとの iconv.dll を libxml2.dll と同じディレクトリに必ず入れなければならないわけではない(少なくとも libxml2.dll に関しては) あれは iconv.dll が用意されてない環境向けの文言であって、 iconv.dll が常にくっついてる Windows 用 Ruby には不要だ と、思う
ライセンス上セットにしておくことが必要なのかも
87 :
デフォルトの名無しさん :2010/05/07(金) 10:43:44
整数から浮動小数点への暗黙の型変換ってRubyではどう実装されているのでしょうか? 例えばT_FLOAT型を期待している関数にT_FIXNUMを渡すと、そのままではエラーとなります。 関数の入り口で全部方をチェックして変換しているのでしょうか?
> 整数から浮動小数点への暗黙の型変換 そんなもんあったっけ
3/2 => 1 (3 / 2) + 0.5 => 1.5
2じゃないのかよw
Cでも2じゃないだろ?
irb> 1.coerce(0.5) [0.5, 1.0]
def +(o)
b, a = if o.instance_of?(self.class) then [o, self] else corce(o) end
a.c_function_add(b)
end
こんな感じ?
C の機能関係ない Ruby 的処理の部分で完結してるん?
>>93 1 + 0.5 は TypeError を起こしてもいいはず
起こさないんだからどっかで型変換
ユーザーが明示的に行ってないんだから暗黙
1 + 0.5 が 1 で 1 +. 0.5 が 1.5 になるべきかもしれない
95 :
87 :2010/05/07(金) 11:20:24
ごめんなさい、そう言う事じゃないです。 関数引数としてT_FLOAT型を期待する関数が T_FIXNUM型を受け取った場合内部的にどういう動作をするのか、 と言うことです。 C/C++みたいにT_FLOAT型からT_FIXNUM型の暗黙の型変換が 起きるのではないかと予想しているのですが。
C/C++では、引数としてT_FLOAT型を期待する関数が、 T_FLOAT型からT_FIXNUM型の暗黙の型変換を起こしたりはしません。
97 :
デフォルトの名無しさん :2010/05/07(金) 11:37:31
ソース見るのが一番よくわかると思うけど、単に関数ごとにチェックして変換してる
おきない C++のテンプレートみたいなものだと思えばいい
「変換」って単にメソッドの戻り値の型が違うだけなのだが 戻り値の型が、レシーバーや引数の型と違うことが変換なのか? RubyならRubyらしく考えないと理解できんぞ
rubyのCのソース読むときの話だろ?
え、そうなの?
102 :
87 :2010/05/07(金) 14:45:51
>>97 関数に入ったら引数(arg)のチェックを
float a;
if (TYPE(arg) == T_FIXNUM)
a = FIX2INT(arg);
else if (TYPE(arg) == T_BIGNUM)
a = NUM2LONG(arg);
else if (TYPE(arg) == T_FLOAT)
a = RFLOAT_VALUE(arg)
else
// エラー
こんな感じで行っているのでしょうか?
>>100-101 拡張ライブラリの話です。
Rubyは何が飛んでくるかわからないから、
全部チェックするのがセオリーですか?
しなくて済むならもちろんチェックしなくてもいいよ
全部チェックできるもんならやってみろやオラみたいな 基本マニュアルで縛るよね 指定以外の変なもの寄越したほうが悪い
拡張ライブラリは自作ラッパーとセット 拡張ライブラリだけを配布するといろいろ頭が痛くなるので、Rubyインタフェースを併用して縛る
Ruby が遅い理由を垣間見た気がする
>>102 rb_Float関数(rubyでいうFloat関数)を使えばT_FLOATなVALUEを返してくれるんで
普通はこれを使えばいいと思う。
rb_Floatがやってることはそれと大体いっしょ。
1.9.2用ブランチ切られたのね。
109 :
87 :2010/05/07(金) 22:49:29
>>107 ありがとうございます。オリジナルマクロで大分書いてしましたが
標準の方が良いのでそれでやってみます。
大分理解出来るようになりました。
>>87 NUM2DBL()というマクロ、あるいはその実体のrb_num2dbl()という関数使え
IRBのDebianパッケージってなんで未だにreadline5にリンクしてんの? readline6で作ってほしい。
ソースから入れるのは絶対嫌だっていうポリシーなら仕方ないが、 そうでないなら、Rubyはソースから入れるほうが不便がない。
SSLとreadlineだけ気をつけてあとは自前コンパイルしてホームにインストール
rvmで楽しよう。
ソースから入れる場合だけど、1.8.7-p249(1.8.7の最新版)をインストールする場合は、 string.cのinspectのバグを修正してからmakeする点に注意ね。 ------------------------ 2645c2645 < if (ismbchar(c) && p - 1 + (len = mbclen(c)) <= pend) { --- > if (ismbchar(c) && p + (len = mbclen(c)) <= pend) { ------------------------ UTF-8な文字列をinspectすると末尾のマルチバイト文字列が文字化けするので。 これ直さないとけっこう不便なんだ。
あのね mes というメソッドを作ったのです mes(1, 2) mes([1,one], [2, two]) a = [[1,one], [2, two]]; mes(a) の3つをユーザーフレンドパークな感じで受け付けたいです one と two の部分はオブショナルで、 mes(1, 2) は mes([1, nil], [2, nil]) と同一視したいです def mes(*args) とメソッド書いた時点で引数の処理がめんどくさいことに気づきました なんかいい方法ないですか 3タイプの引数すべてを、配列の配列である [[1,opt1], [2, opt2]] 形式に揃えて each で回したいです
# 引数を mes する # mes(1, 2) # mes([1, one], [2, two]) # mes(*[[1,one], [2, two]]) def mes(*args) arr = args.map{|e| e.kind_of?(Array) ? e : [e, nil]} arr.each do |x, opt| … 「配列は*つけて渡せ」とマニュアルに書いておく
>>116 そーゆーのは mes([a, b]) としたときに
[[a, nil], [b, nil]] のつもりなのか
[[a, b]] のつもりなのか(b は opt)
自動判別するのが超めんどいのでやめようぜ、ということになってる
「データ列としての配列使いたいときはユーザー側で*つけれ」という指示が真っ当
119 :
デフォルトの名無しさん :2010/05/10(月) 21:51:04
拡張ライブラリ書いてます。 C++側で Transform:: set (float* matrix) という関数があるのですが、 これをRubyに持っていくと、どういう名前がいいでしょうか。 個人的には Transofrm#matrix がいいと思うのですが C++とRubyで名前が違ってしまうのが今ひとつ。 基本的にRubyに持っていくときは set/get は削除しています。
変換行列? どういう使い方(C++で)なの?
MLに投げた方が良いかもだが、あっちのアカウント取るのが面倒いので、ここで失礼。 RubyのトランクのBigDecimal/math atan()に1.08を入れると戻り値の有効桁数が足りない return pi.div(neg ? -2 : 2, prec) if x.infinite? return pi / (neg ? -4 : 4) if x.round(prec) == 1 * x = 1 / x if inv = x > 1 x = (-1 + sqrt(1 + x**2, prec))/x if dbl = x > 0.5 irb(main):004:0> BigDecimal("1")/BigDecimal("1.08") => #<BigDecimal:9940ce4,'0.9259259259 25926E0',16(24)> irb(main):005:0> BigDecimal("1").div(BigDecimal("1.08"), 30) => #<BigDecimal:9957468,'0.9259259259 2592592592 5925925926E0',32(44)> irb(main):006:0> ここで桁数が足りなくなるのね。 分母と分子の有効桁数が少ないときに、出力の有効桁数の指定が無い場合は、 適当にちょんぎるのは、言語仕様的には、正解でありましょう。 1/3が来たら、メモリを全部使い切りました、では悲しい。 はい、 x = BigDecimal("1").div(x, prec) で、なおります。 y = tan(atan(x, prec), prec) で、ループを廻して、xとyの値を比較していてたら、たまたま発見しました。 あ、トランクにはtanはないのだけど、sinとcosの組み合わせで間に合わせました。 tanはパッと見、収束が遅いようなので後回し。 続く
あと、expの絶対値が大きくなると、戻って来ないのよね。 exp(a*b+c) = exp(a)**b * exp(c) を使うと、幸せになれるかも。(ん十倍の威力で) んで、powerも全部の桁を計算してご苦労さんなんだが、integerではないのだから、そんなに気張らなくても.. とは、思います。 expと同じ要領でやると、実行速度がずいぶん速くなります。 (Rubyのコードからpowerをcallするんだが、それでもとても速い。 ソースを書き換える手もあるのだけど、コンパイルするのがめんどくさい。 そもそも、その手の労力を厭わない人は、こっちに来なくて良いでしょ) logは、exponentが負の場合、 を書いてあるから、正で2桁以上の場合、を追加すると良いですね。 expとlogが実用範囲内になると、実数**実数が(実用的に)使えるようになります。 今のメンテナの方は、前の方よりアクティブのようで、 ここ1年で随分よくなった感じがします。 .rbでの動作が安定して、.soにして貰えると、実行速度がさらに上がってさらにうれしい。 さて、おいらは、gammaも書いたし、erfの逆関数も書いたので、しばらくお休みするべ。 てか、動作確認が一番コストがかかる訳なんだが。
>>117 > arr = args.map{|e| e.kind_of?(Array) ? e : [e, nil]}
これ不要。eachのブロック引数で展開させれば済む。
$ ruby -e '[1, 2].each {|(x, opt)| puts "#{x.inspect}=>#{opt.inspect}"}'
1=>nil
2=>nil
$ ruby -e '[[1, "one"], [2, "two"]].each {|x, opt| puts "#{x.inspect}=>#{opt.inspect}"}'
1=>"one"
2=>"two"
わー便利と思えないような機能を紹介するのはやめよう
いや便利かどうかで言えばふつうに便利だと思うぞ 微妙に紛らわしいうえに nil がどこから来てるんだか不明なだけで
なんか読んでて微妙に不安だよね irb> a, b = 1 irb> p b nil これと理屈は同じなんだろうけどさ あとカッコで括るご利益はなんかあったっけか
rubyinstaller-1.8.7-p249-rc2.exeをインストールしたんだけどirbが あほかー!ってレベルで重たいんだけど何なんですかね。 ま、Windowsはたまにしか使わないからどうでもいいっちゃどうでもいんですけど。
irb --noreadline
FAQ
rubyinstaller なんて使うから…
初心者スレではもう何も言わずActiveScriptRuby使えって言われてるなw
readline の dll を手作業で入れ替えてもいいんだっけか
4スレくらい前から常識
>>123 見て思い出したんだけど、each_pair って使うのあまりよくない?
collection.each do |k, v| なら collection が配列の配列でも平気だけど、
collection.each_pair do |k, v| だと Hash 限定になるよね
あんまり原理主義振り回す気はないけど、Hash と配列の配列っておおむね同じに扱われてもいいよね
1.8.7あたりから(1.9からのバックポート?) Hash[ 配列の配列 ] # => Hash ができるようになってる が、マニュアルには載ってないっぽい
>>136 俺もこの前知った
けっこう前から入ってるんだよな
もっと早く知ってれば無駄に inject 使わなくて済んだのに
>>135 ハッシュはキーと値のペアをバッグにしたものと同じように扱える。
ペアのバッグ
配列の配列からは Hash[*arr_in_arr.flatten] だろ inject わざわざ使わなくてもいいと思うんだが
>>139 キー列からハッシュ作る場合の話。
keys.inject({}) {|h, x| h[x] = ...; h }
よりも
Hash[ keys.map {|x| [x, ...] } ]
のほうが記述が短くてしかも速い。
ちなみに flatten して * 展開は一番遅い。
>>140 興味深いな。手元で試さないで訊いて申し訳ないんだが、
何桁程度の要素数から有為に遅くなる感じなんだろうか?
3〜4桁なら大差ないだろうと今までflatten使ってたが、
もっと少ない領域で遅くなりだしたりする?
>>141 よっぽど古いマシンで大量のデータでループ、とかじゃなければ
気にしなくていいレベル。
かなり古いLinuxで 1..100000 から to_s への Hash 生成でベンチ。
map して Hash[] は 0.77、inject({}) は 0.87、map 結果を flatten して * は 1.15
143 :
142 :2010/05/12(水) 10:22:12
おっと、1.8.7 です。 1.9 最新は Linux 古すぎてビルドできんかった orz 去年 7 月頃の 1.9.2dev が残ってたんでやってみたら、 flatten 版は SystemStackError になったw
聖地巡礼のお土産にどうぞ ってことかw まるきり宗教だなwww
146 :
デフォルトの名無しさん :2010/05/12(水) 18:47:31
アニメで町おこしみたいなもんだろww
売り上げが寄付されるとは益々宗教くさい
どんな味なのかまったく想像できんw
想像だけど、醤油ラーメンっぽい味じゃないかな
ダシは何でとってるんだろう
麺にRubyスクリプトが記述されてたりするの?
なにこのスラドくさい流れ
Matzさん何かコメントを。
みなさんもっとお布施を
スパゲティもラーメンも麺の絡まり具合という意味では大差ないよな
ラーメンはちぢれてて絡まる可能性がさらに高いのもあるからな
ruby-devを見ると、log遅いじゃん、 と思ってるのは、おいらひとりだけでは無いようですね。 バグでは無いので、1.9.2には間に合わないようでして、 御用とお急ぎの方は、以下を参考に自己責任でどうぞ。 部分的にちょこっとの修正だけど、全文載せます。 興味の無い方は、跨いでお通りくださいませ。 def log(x, prec) raise ArgumentError, "Zero or negative argument for log" if x <= 0 || prec <= 0 return x if x.infinite? || x.nan? bdf = BigDecimal.double_fig n = prec + bdf flg = false if (expo = x.exponent) < 0 x = x.mult(BigDecimal("1E#{-expo}"), n) flg = true elsif expo > 2 expo = expo - 2 x = x.mult(BigDecimal("1E#{-expo}"), n) flg = true end 続く
160 :
159 :2010/05/12(水) 23:20:19
one = BigDecimal("1") two = BigDecimal("2") x = (x - one).div(x + one,n) x2 = x.mult(x,n) y = x d = y i = one while d.nonzero? && ((m = n - (y.exponent - d.exponent).abs) > 0) m = bdf if m < bdf x = x2.mult(x,n) i += two d = x.div(i,m) y += d end if flg y.mult(two, n).add(log(BigDecimal("10"),n).mult(BigDecimal(expo.to_s), n), n) else y.mult(two, n) end end
なんか上にもいたけど、なぜここに貼る
163 :
159 :2010/05/12(水) 23:37:42
うん、それ。 リクエストがあれば、expの高速版も公開できると思う。
なんか1.9の文字エンコード情報を持つやつ苦労してるみたいだな Yuguiさんがツイッターで嘆いてたぞ 混乱が出ても根本的な解決を選択してほしいのだが
>>159 ここにそのまんま貼っちゃうとライセンス的に取り組みが面倒になるようなので
gistあたりを使うのが吉。
……といっても、それぐらいだったらredmineに貼るかw
あぁ、迷惑だったらもう来ない。 さようなら。
ここはメソッドチェーンの使い方を競うだけのスレなのに場違いだろ
ネタだと思ったらマジですか
>>159 貼り付けたコードの著作権は 2ch に移譲されるので
無闇に貼り付けない方がいいぞ、取り込むのが難しくなる
2ch もうすぐ潰れるから権利主張の主体が無くなる
redmine を使いたくて解説通り gem install rails とやったら
動いてんだか死んでんだかさっぱりわからない状態で5分経過
rails みたいな巨大パッケージのインストールのコマンドライン解説は全員詳細表示つきで書け
いろんな意味で不安でいまさら止められないじゃないか
>>169 2ch側が権利を主張するどうこうではなく
「Rubyのソースコードの一部の権利が他者に渡っているようですが問題ないのですか?」
という外部指摘の可能性をどうするかという話だな
わざわざ爆弾抱える必要もないわけで
痴呆症のように何度も同じ話しなくていいよ
>>169 > 2ch側が権利を主張するどうこうではなく
> 「Rubyのソースコードの一部の権利が他者に渡っているようですが問題ないのですか?」
> という外部指摘の可能性をどうするかという話だな
> わざわざ爆弾抱える必要もないわけで
法に無知なバカをいちいち相手にしていたらキリないわ
>>174 じゃああなたが全コストを負って迎撃して説明してください
そういう人は大歓迎です
正しいことさえしていれば何も言わなくてもみんなわかってくれる… そう考えていた時期が俺にもありました
>>111 readline6はGPLv3だからじゃないか
v3の嫌われっぷりは異常
V3はオタクが持ち上げ過ぎなだけ
Vを大文字でV3と書くと「ブイスリー」としか読めなくなるので避けたほうがよいがどうでもいい Redmine をインストールしたがこのマシンでは超重い なんか残念だ いやまあうちでは Rails アプリケーションはどれも重いんですけどね
ほんとにどうでもいいなw ちなみにどの程度のスペック?
$ 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]
しまった 8.10 か、ずいぶん古いなこれ …アップグレードめんどい バックアップめんどい
>>183 それってひょっとしてCeleron300Aをオーバークロックして450MHzで動かしてたりしてたような時代の代物か。
……12年前?
そんな古くねえよ えーと…(サイトを調べて)1999年5月発売。ちょうど11歳だね。 このころのIBMのデスクトップPCは物持ち良過ぎて困る Celeron400MHzの64MBの8GBが本体だけで当時17万ですってよ奥様 128MB増設済みを5年位前に中古で3000円で買ったのに 何の話だっけ うん、えーと、メモリ128MBだと Rails では即スワップ突入してとても遅いよとかそんな報告
とても有用な報告だ
188 :
177 :2010/05/15(土) 00:19:34
途中で切れてた
>>159 r27747以降でもやっぱり遅い?
Rubyとの関係が解らん 初音以外
Ruby.開発者.出身地.ご当地ラーメン => 松江ラーメン
開封すればするほどRubyと関係無くなっていく
Rubyロゴの海苔くらいは同封すべきだな
そうだねえ、プリント海苔の出番のはずなんだが
野球カードみたいなの入れるとか ライブラリには載せてない隠しクラスをこっそり書いておくとか そのぐらいの商魂は見せてほしいね
・ Rubyロゴの印刷された海苔を2枚入れとく ・ 標準/添付クラスのチートシートカード(全10枚、2枚ランダム封入) ・ Rubyコア開発者ブロマイド(裏には自己紹介兼ねた短いRubyスクリプトつき) ・ コンピュータ完動祈願の松江の神社のお守りが入ってる(サーバに貼れるシール1枚同封)
Rubyチョコ新発売! 組込、添付クラスライブラリのAPIカード付き。 APIカードを集めてRubyウィザードになろう! どうよ。企画→俺。駄菓子メーカー→やおきん
萌えRuby 各種クラスライブラリを擬人化 Stringたん Arrayたん
カードくらいは入れるべきだったな。 そもそもターゲットがいわゆるマニアなんだから、 カードをコンプリートするまで買うやつ多いだろ。
Matzのターン!中田さんを召還!とか出来るのなら箱買いしてもいい
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: ピキッ
>>205 rspec 2.0.0.beta.8でもそうなった。
Rspec::Matchers::Change#matches? の中で、ブロックを呼ぶと
@beforeの中身自体が変更されてしまうね。
これはバグといっていいんじゃないだろうか。
@before = evaluate_value_proc
を
@before = evaluate_valu_proc.dup
にすれば一応解決ではあるが、チケット出すべきか……
うーん、テスト漏れだね rspec本家でもこのへん漏れるか テスト大事だなー
プライベートメソッドのテストは @obj.__send__(:mes) と書くしかないよね? っていうかプライベートメソッドのユニットテストは書くよね?
プライベートメソッドは公開API内部から呼ばれるんだから、 そのAPI内でそのプライベートメソッドを呼ぶようなAPIテストパターンを(全部)書くべきという考え方はある プライベートメソッドのテストを100個書いてもAPI内の状態で失敗しないことをぜんぜん保証しない がぶっちゃけめんどいし rspec -fs とかするとメソッド動作一覧みたいにできるので とりあえずユニットテストはプライベートメソッドでもあらかた書くほうが間違いないんじゃねみたいな感じ API内で呼んだときの動作をどんだけテストするかはAPIのテストを書く人に任せるということで いやたいてい同じ人だけど プライベートメソッドの __send__ はヘルパーメソッドにされることが多い印象
プライベートメソッドのテストを書かなきゃ…という規模になると、 それはライブラリを作るためのライブラリが必要な状況に近い。 とうなると設計の見直しが要るかなとそわそわする。
Ruby のプライベートメソッドの92%は private ではなく # :nodoc: の使用が適切です
そもそもprivateってRubyではどんな意図でつけるもんなの?
レシーバを省略したメソッド呼び出しでしか呼ばせなくしたいメソッド
private までテストするって、もはやテスト自体が目的になってるな 目的と手段を混同するのはよくある過ちだが
>>215 はまだRubyの考え方に慣れてないようだ
Rubyのプライベートメソッド化は実質何も行わない
いまだにC++やJavaの論理を持ち出す人がいて困る
せっかくprivateにしてるのになんちゃらevalとか使って ユーザがアクセスしやがるから困る
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かどうかで決めるべきではないな
そもそも
>>213 への回答がない時点で「privateメソッドだから」などという理由は存在し得ない
微視的とはこのことだなw
221 :
220 :2010/05/17(月) 23:45:38
private にしておいてよかったと思うことは特にないな マニュアルに表示されないようにするなら nodoc があるし
Rubyでのprivateにはトルクスねじ的な警告の意味があるような。
>>216 むしろ逆に聞きたいだが、何のためにprivateメソッドをテストするの
>>218 そりゃわざわざ__send__まで使って
(クラスCの作者が隠した)privateメソッドにアクセスしようとするユーザが悪い
この場合テストすべきはcall_hiddenであって、hiddenではない
初心者スレ落ちそうなので立てて下さい・・・頼む 立てられない・・・
>>213 に誰も答えない件について
要は用途上のコンセンサスがないんだな
テストの種類や粒度についても特に考慮されてないと思います 最終的に「製品」に付属して提供するテストはパブリックメソッドの機能テストだけでいいよそりゃ インストール時に1回しか実行されないんだからね
>>225 この場合、クラスCを再オープンしてcall_hiddenを定義したのはユーザーだと思う
それは形式的なものだろ 何のためにそれを選ぶのかについての答えがねえ
>>214 ではないが、レシーバを省略するということは、
そのインスタンス内からしか呼び出せないということなのだが。
その縛りを入れることが目的という回答を否定させても困るだろ。
自作のautotest(というかautospec)用スクリプトを .autotest ファイル内で require すると autosepc してもファイル更新待ちにならずに即終了する 自作のスクリプトのどっかでエラーが起きてるんだと思うんだが、 バックトレースとかが一切表示されないのでわけがわからない このへんを表示させる方法はある?
begin end
たしかに.autotestやらはエラーでなかったかもしれないね。 ruby .autotestしてみたら。中身はRubyスクリプトなんだし。 その前にそのrequireするファイルをエラーでないか試してみるほうがさきだけど
ruby -d
↓この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| # 何か }}}
>>240 Enumerable#each{ |e1|
Enumerable#each{ |e2|
Enumerable#each{ |e3|
# 何か
end; end; end
でいいんでね?フォントにもよるが、} より数えやすいかもよ?
>>241 訂正
Enumerable#each do |e1|
Enumerable#each do |e2|
Enumerable#each do |e3|
# 何か
end; end; end
>>241 Lispの使用歴が長いと括弧なんて数えないらしいぞ。
非Lispユーザーさん「Lispは括弧が多くてとっつきにくいんだよねぇ。」
Lispユーザーさん「括弧?そんなものあったかなぁ。」
非Lispユーザーさん「えっ?」
まあ好きにしろとしか言えんのだが ○ ○○ ○○○ ○○○○ ○○○○ ○○○ ○○ ○ という形と ○ ○○ ○○○ ○○○○ ○○○○ なら前者のほうが若干シンメトリック気味でいいんじゃね、という気分はある ブロック終端をまとめて書くとがくんと急に閉じる感じがなんかちょっと
>>244 は
h = {k1 => v1,
k1 => v2,
k1 => v3}
と書くと怒るタイプ
h = {
k1 => v1,
k1 => v2,
k1 => v3
}
こう書く
Lisp でもあとで何か追加する可能性がある場所では閉じ括弧の前で改行しておくことがあるよ (list (foo 1) (bar 2) (baz 3) ;; ここに値が追加されるかも ) みたいに。 Structure Editing すればいいんだけどこちらの方が楽なことが多いし。 Lisper が普段括弧を気にしないのは Structure Editing と auto indent の関係もあると思う。 と、これは do 〜 end と { 〜 } とは関係ないか。 ブロックに do 〜 end を使うのは他の場所で { 〜 } を使っていることとも関係あると思う。 Hash の { 〜 } とブロックの括弧が同じでもいいのか、別にした方が読みやすいか、とか。 言語によっては記号を多用して {< 〜 >} としてみたり、 << 〜 >> みたいなリテラルがあったりもするけど ASCII で使える記号は少ないので、できるだけ簡単な記号は残しておきたいとか。 まあこのあたりは言語の作法にしたがっておけばいいんじゃないかと思う。
普段はdo endを使うことで、 ここぞという時のブレースを浮かせたいココロがあるんじゃないかね File.openとかcatch〜throwのブロックは特にブレースを使うって規約を聞いたことがある タイプ量は許容範囲だと思う っていうか普通のキーボードだとブレースの入力にはシフトキーを使うわけで 実質1文字の差しかない
前田さんの規約に従ってる
やっと出るのか……
オライリーの「プログラミング言語Ruby」とどっちがいいの?
ピッケル本の1.9版か。 オライリーの方はrubyの組み込みかたとかの解説あったっけ?
>>252 ない。フラナガンのやつは言語仕様が中心で、
MRIとか処理系の話はメインでない
>>245 v3 の後ろに , がないとめっちゃ怒るよ。俺は。
前田さんの規約狂ってる
>>254 きめえ
そんなこと言うと配列の最後に要素がひとつ省略されているとみなして nil 挿入するぞ
>>255 どの辺が?
言うほどおかしな箇所は見当たらなかったが
JRuby良さげ
http://shugo.net/ruby-codeconv/codeconv.html * ソースコードの整形
** インデント
プログラムを読みやすくするため、インデントを適宜行う。インデント
幅は2とする。また、インデントにはスペースのみを使用し、タブは使用
しない。(環境によりタブ幅が異なるため。)
> 環境によりタブ幅が異なるため。
はーいせんせー、わかりませーん。
タブを使えばバイナリレベルで同じソースファイルを各個人好きなタブ幅で表示できるので、
その方が開発者は快適なのではないでしょうかー。
** コメント > メソッド定義の中にはコメントは記述しない。(コメントが必要だと思わ > れるようなコードにはリファクタリングを行う。) ただし、クラス・モ > ジュールやパブリックなメソッドには仕様をRDocス タイルで記述する。 はーいせんせー。実際の開発ではパフォーマンスとかの兼ね合いでいつもリファクタリングできるとは限りませーん。 必要なコメントは書くべきだとおもいまーす。 あと、コメントとドキュメントはまったく違うものでーす。Ruby的にはおんなじコメント文ですけどー。 そこんとこちゃんと切り分けて説明すべきではないでしょうかー。
> * メソッド呼び出し > メソッド呼び出しの引数リストには括弧を付ける。ただし、引数がない > 場合は、括弧を省略する。また、printやputsやpの 場合は、引数の括弧 > を省略してもよい。 > * return > メソッドの値を返す場合は、必ずreturnを使用する。 また、returnの括 > 弧は省略する。 はーいせんせー!メソッドの引数は括弧つけなきゃだめなのに、どうしてreturnには括弧は省略するんですかー。 なんかポリシーが破綻してるきがしまーす。 と言う感じで、こんなのWebに公開すべきじゃない。
前田さん?と言う方には面識はないが、なんかふるーい、いにしえのC言語をあれこれを引きずり過ぎてるという印象。 Lispとかやったこと有るのかな? RubyはLispだよ。
他人のしかも3年前の規約に突っ込みとかずいぶん暇そうだな
だってニートだもん。 とまぁ、書き方は気に障ったかもしれないので誤ります。 けど、この規約に色々と疑問点があるのは事実。 出来れば修正してほしい。
横に長いメソッド定義は単純に読みづらいので、改行可能な位置で適当に改行しておくというのがメソッドチェーンしがちなRubyには合うとは思うんだが、じゃあ何文字が適当かというとうまい根拠もないんだよな
実際のプロジェクトに適用する際には、このコーディング規約をカスタマイズして用いることを推奨する。
メソッド10行超したら機械的にでも分割しとけ ただし単純要素列挙でメソッド呼ぶ形式のcaseは許可 case x when cond1 then mes1 when cond2 then mes2 when cond3 then mes3 when cond4 then …… when cond5 then mes5 とか20個くらい続くハブメソッド
前田さんの規約は万人が遵守すべきものとは思わないが、 Ruby界では権威のある人だけに、こういうのを公開してると 影響が大きいんだよな。
「守ったほうが実は得するもの」と「ポリシーがない場合に従う例」を混ぜこぜにしてるのが難点
ここで騒いでも、1ビットたりとも改善されないことだけは確かだ
>>268 分割したメソッドはプライベートにすべきですか?
というような話がちょっと上の議題の根っこだった気もする
>>259 インデントを全部タブでするつもりならそういう規約もなくはないと思う。
スペースがまざると地獄。
>>260 画面幅 80 桁ならまずどこでも表示できる。
Ruby のコードは横に長くなるという気持ちはわかる。
そのためのインデント幅 2 でもあると思う。
>>261 コメントよりもコードで、というのは Smalltalk あたりからの文化だと思う。
あと、あとで直そうっていうのは往々にして直されないので
最初から綺麗に書こうという方が規約としてはいいんじゃないだろうか。
ドキュメントとコメントの話は別の話だというのは確かに。
>>262 return はメソッドじゃない。
p, puts, print は統一感がないけれど慣習。戻り値を使うかどうかで分ける人もいる。
return 必須は大人数だとこっちの方が便利なこともあるんだろう。
前田さんは net/ftp の作者で昔からの Rubyist だよ。
Sather とか他の言語の話をしているのもちらほら見掛ける。
あと、この規約と Lisp 文化はまったく関係ない。
>>272 Ruby の private は「ユーザーに使ってほしくない内部メソッド」の意図を示さないんだってば
そういう意図を示す機能は Ruby には無い
RDoc の nodoc がやや近いが
最近の一番大きな仕事はIPAのRuby言語仕様だろうね。
規約なんて局所的に宗教論争を抑えるくらいの現実的効能しかないのに それを肴に宗教論争おっぱじめるとかもうね…
肴としてつつく程度なら楽しいけど、叩き始めるとか、もうね。
>>274 普通のクラスレベルでは「基本的にユーザーに触ってほしくないメソッド」
くらいの機能と理解しておいていいんじゃないかなあ。
特殊な使い方はとりあえず置いておいて、
send とかを使って呼ぶのはもうわかっててやっているものとして。
そもそもの話として、 Ruby の private は
Smalltalk の private カテゴリくらいのゆるいものだから
Java とかの言葉で説明しようとすると破綻すると思う。
実際問題としてどっかのライブラリの private のメソッドを __send__ で呼ぶ羽目になることはけっこう多い ぜんぶ public でいいじゃんと思うのだが というか private とかあるからみんなマニュアル書かねえんだよ
>>274 いや、意図は示せるんじゃね。
ユーザがどうするかは別で
「マニュアル書きたくないからこっから下全部 private」というのはなくもないわけでもなく
>>279 >実際問題としてどっかのライブラリの private のメソッドを __send__ で呼ぶ羽目になることはけっこう多い
これホント?
何かがおかしいと思うのだけど。
>>277 いや、実際前田さんの趣旨としては
「ゼロベースから作るよりはなにか叩き台でもあった方が」ぐらいの気持ちじゃね?
ver0.0.1的な。
不幸なのは他にそういうのを公開してる人が出てこなかったのと、
前田さんが有名人だったがためにver0.9.8ぐらいの受け取り方をされてることで。
他にもいくつかあるよー
>>283 一度だけprivateメソッドを外から呼び出したことがあったが例外だな
とりあえずはーいせんせーがこの上なくムカついた 80文字とかなまぬるいから78文字にすべき
で 前田さんてまだ生きてんの?
289 :
273 :2010/05/21(金) 20:57:10
>>282 おっとそうでした。 Smalltalk Best Practice Pattern は一応読んだのに
Intention Revealing Message ばかり頭に残っていた。
SBPP だと、そういうコメントの例として
「メソッドの依存関係」とか「変更の理由」が挙がってた。
あと見掛けるのはアルゴリズムの出典論文とかかなあ。
>>265 修正して欲しいならこんなところで煽ってないでメールするなりなんなりしろよ
>なんかふるーい、いにしえのC言語をあれこれを引きずり過ぎてるという印象
お前これ言いたかっただけだろ
個人的なコーディング規約なんだから 修正しろと言われても困ると思うのだが・・・
小人閑居してなんとやら
むしろ修正した規約をまとめてwebに出して,こっちの方がいいだろ? と 問いかけたらどうだ.ほんとに良いなら基準になるし,ダメならダメ出しか 無視されて終わり.どっちに転んでも損無し.
批評される側に立つなんてとんでもない!
Wikipediaみたいにコーディング規約を議論しつつ良さげなのを決めるのはどうかとおもったけど、 戦争が始まってしまうか、人が寄り付かなくなるな…
訂正 ×Wikipediaみたいに ○Wikipediaみたいなシステムで
>>262 >はーいせんせー!メソッドの引数は括弧つけなきゃだめなのに、どうしてreturnには括弧は省略するんですかー。
>なんかポリシーが破綻してるきがしまーす。
これまったく意味がわかんないんだけど、メソッドとreturnでなんでポリシーを同じにしなきゃいけないの?
未だにreturnを書くかどうか悩む
Cの規約では、うっかりretrunとかしてしまった時にコンパイルエラーにできる、 という理由で、returnの値はカッコで囲まない、としてるものが多いな。 ruby では理由にならないが。
しかしつまらんスレだな
returnはメソッドじゃないのにカッコで囲む理由がないだろ
はい燃料投下きました〜
前田さんの規約だけどRails対応版ってないの? モデルやコントローラ内の記述順序の方針を参考にしたい
そもそもRubyでreturnに括弧つけるとエラーになる場合もある タプルを返す時に
return自体をめったに書かない。
少なくともメソッドの最後には絶対に書かない
悪臭
ライブラリ作ってると非常に厄介な問題 どういうつもりでその値を返してるのかわからんからね 意味のある値を返してることを示すためだけの専用クラスに包んで返すパターンとかも見かける
でも実際は現場でreturn書く奴はほとんどおらんよ。 もっともらしい思想を貫くのは勝手だけど、仕事で使うなら周に合わせないと駄目。
道理でみんなScalaに逃げちゃうはずだよ こんな液状化したあやふやな地盤じゃコード書きたくないだろう rubyは1画面に収まるシェルスクリプト++的に使うのがベストだね
rubyで大規模開発となるとRails必須だから。
おまえがそう思うのならおまえはそうすればいいだろう。
なぜRubyではreturn必須にしなかったのだろう 理由というか、思想について知っている人がいれば教えて欲しい
Perlを踏襲、じゃないの?
lisp とかの流れでは?
単純に冗長だからとか return 必須じゃ tap も魅力半減
tap関係ないぞ
>>316 Lisp の影響だと思っていた。
ちなみに、 RnRS Scheme だと副作用を目的に呼び出す手続きの戻り値は
不定ということになっていて、ある処理系が偶然返してきた値に依存するような
プログラムは可搬性がないということになっている。
戻り値に意味があるかどうかはドキュメントで決められている。
最後の式の値がそのまま返るというのは関数型言語では普通。
Scala もこうなる(メソッドの型が Unit だった場合は自動的に () が挿入されたりするけど)。
こちらの流儀だと基本的に return は書かない。
他の言語だと、例えば Smalltalk は ^ を使って値を返さないと self が返ることになっている。
この流儀なら、意味がある値を返すときは return を書く。
Cも実はreturn不要
return 書けなやつらは、mapメソッドとかに引き渡すブロックにも return を書いてるのか?
メソッドとクロージャの違いとかわからない人は書き込まないで下さい
>>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.
値を使わなければ問題は無いが
>>324 クロージャの概念がわからないやつは書き込むなよ
returnしたらどうなるかやってみりゃいいじゃん
へー、こんな挙動するんだ。知らなかった。 そもそもクロージャ書くときなんてタイプ数減らしたいんだから書こうと思ったことすらなかったけど。 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
メソッドは自分以外の誰かに呼ばれる処理なんだから、戻り値に意味があるか無いかはどこかで示さなければならないよね。 別にそれを示すのはドキュメントでもいいと思う。 コードがドキュメントとか得意げに言う奴は今の Ruby の仕様のだと return 書いといたほうがいいと思う。(意図をコードに残せ) とは言え、Rubyってそういう文化圏じゃないよな。 「わー、動いた、パチパチ」で十分許される世界なんだから、もともと誰もまともなドキュメント書く気なんて無い。
クロージャだとnextで値返すんだっけ
(1..10).select {|i| break (i % 2 == 0)} => false
reuturnの有無でここまで議論する情熱があるなら、 wordpressみたいなソフトでも作ってくれよ 生産性のない情熱だなw
>>329 インタプリタの意図がそもそもおまえにはわかっていない
インタプリタというより、スクリプト言語と言った方がいいな 「素早く書けて、すぐに動かせる」がスクリプト言語の条件であり目的だな
>>329 本当にコードに語らせたいのなら、
戻り値に意味があるかどうかはある程度メソッド名からわかるようにしないと駄目じゃね。
中身を読まないと意味がわからないのはメソッド名がわるい。
例えば、標準で使われているメソッド名と同じ名前のものは
だいたい似たようなインタフェースにするとか。
あまり突き詰めても仕方ないから、俺はそれはコメントに譲るけど。
>>330 ドキュメントの「手続きオブジェクトの挙動の詳細」のあたりを参照。
Rubyは日本で生まれたのに、 Railsが日本で生まれなかった理由がなんとなくわかるな
まあそもそもみんな Rails 好きかというとそういうものでもないんだけどね
RailsというよりActiveSupportとかActiveRecordが好き
それって他の言語のフレームワークにはない機能なの?
Rails以外でRuby使う機会無いんだけど。価値も無いし。
341 :
デフォルトの名無しさん :2010/05/23(日) 23:22:27
確かに ActiveRecord はとてつもなく便利だ。 あれこそ動的言語の良さを一番よく伝えてる気がする。 静的型言語ではなかなかああは出来ない。
>>259 >> 環境によりタブ幅が異なるため。
> はーいせんせー、わかりませーん。
> タブを使えばバイナリレベルで同じソースファイルを各個人好きなタブ幅で表示できるので、
> その方が開発者は快適なのではないでしょうかー。
その疑問は、タブとスペースまぜてリリースするアホがいなくなれば俺はまだ許せるんだが
あとデフォルトのハードタブの幅8がちょっと大きすぎるという問題が
アセンブラ使ってたときはタブ8が快適だった CとかJava使ってるときはタブ4が快適だった PythonとかRuby使い始めてタブ2が快適になった これは進化だと思う
ほう、ならばインデントはもう要らないな…
スペースを混在させずにタブだけ使うとしても、 文の後にくっついてるコメントはタブ幅の設定によっては開始位置が揃わないよね あれイラッとくる
行頭以外でタブは使わない
Ruby 使ってるとスペース使っちゃうのでタブ使わなくなった
そのうちタブじゃなくて1スペースしか空けなくなるだろう
インデントやらスペースやらは全部フォーマッタ任せだわ。 餅つきみたいにぺっったん!ンパッンパッ、ぺっったん!ンパッンパッ、ぺっったん! と言う感じ。 # どういう感じだ(w
3タブが最高とか言ってた奴とかほんとセンス無いと思ったわ。ってか、あれ誰だったっけ?
>>352 >3タブが最高とか言ってた奴とかほんとセンス無いと思ったわ
そう思った理由は?
正直そこら辺はどうでもいいな 2でも3でも4でも5でも何がどうにかなるわけじゃない
>>353 主観はどうでもいいからコードのインデントなんぞ素直に長いのに巻かれとけって意味でセンス無いと思った。
さらにハードタブとか使われるとdiffも取りにくくなったりするし。
個人でやるなら別にいいんだが、多数に薦めて混乱を助長する所がありえんと思った。
俺もローカルでコードリーディングするときには好きな設定に変えてるけど、みんなでやるときはみんなに合わせないと駄目だろ。
> さらにハードタブとか使われるとdiffも取りにくくなったりするし。 ソフトタブだとdiff取りやすいのか?
diff -b とか -w とか知っとけ。
イヤだと思うなら、使わなければいい 相手も勧める程度で、強要してるわけじゃないんでしょ そういえば、一時期試してみてたw 確かにendが揃って良い感じなのは分かったが、 デファクトスタンダードの2を上回る優越性は無いなあという感触
個人でやるとか好きな設定として3タブを叫んでいる人はいたけど規約にしてた人はいたかなぁ tdiaryもいま見たらインデント2タブ4の混在インデントだった
>>357 そんなの使うかよ。
svn diff か redmine の diff 使うし、チームの人間にそんなしょーもないオプション強制させんな。ボケ。
>>358 迷惑撒き散らしてるだけなのに「美的感覚持ってる孤高のマイノリティ」みたいな感じで騒いでるのがイラつくんだよ。
あれはネタだろう イラつくとかどんだけ沸点低いんだ
あーくだらね
3タブってのは、ハードタブで勝手に揃えればいいじゃん派でしょ メインの人たちがスペースとタブを混在させてるのが迷惑なんだよね
仮想同僚をでっちあげて発狂するのがRubyコミュニティの流行なんですか?
なんか俺は旗色が悪くなってきたな。おれは尻尾巻いてトンズラするわ。アバヨ!
>>360 > 迷惑撒き散らしてるだけなのに「美的感覚持ってる孤高のマイノリティ」みたいな感じで騒いでるのがイラつくんだよ。
俺はお前の勝手な決めつけの方がイラつくな
男は黙って1タブ
Railsリリース早すぎワロタw
それだけRailsの進歩が早いということだな、うんうん
テスト駆動の限界をみた。極端な崇拝はよくないな
>>360 >svn diff か redmine の diff 使うし、
svn diff でも -b や -w が使えるだろ。
初心者だから今まで知らなかったというだけなんだから、教えてもらって感謝こそすれ逆切れすることないのに。
混在させるのが問題ってなら、解決策は一つしかない 次善の妥協案だとしても、ハードタブ使うな 宗教論争や好みは置いておいて、現実的な問題として考えると スペースでのインデントには、ぶっちゃけ、慣れてないか機能不十分な エディタで、カーソルやスペースキーを連打しなきゃいけない、ってくらいの デメリットしかないと思うんだが
ハードタブとソフトタブがごっちゃになってないか?
ごっちゃにはなってないんだろうが、書き方が悪いな ソフトタブのデメリットだけ書いてるから、否定してるように見える メリットは自明って前提なんだな
この人10年以上同じことばっかり言ってそう
376 :
372 :2010/05/25(火) 23:38:00
推敲したよ! × スペースでのインデントには、ぶっちゃけ、慣れてないか機能不十分な エディタで、カーソルやスペースキーを連打しなきゃいけない、ってくらいの デメリットしかないと思うんだが ○ スペースでのインデントのデメリットには、ぶっちゃけ、慣れてないか機能不十分な エディタで、カーソルやスペースキーを連打しなきゃいけない、ってくらいしかないと 思うんだが
スペースをタブに変えてもいいような文章だな
ここの人らはエディタなにつかってるの?
男は黙ってEmEditor 4200円也
秀丸ちゃんは? 10万行だったら、EmEditorより秀ちゃんの方が早かったYO ただPro版だったら逆転してるかも
エディタとしてのクオリティで、秀丸がEmEditorに勝ってるところってどの辺? その10万行云々の、Apacheログ見るときでもそうそうない状況以外で さらにこのスレ的には、んなWindows有償エディタの話なんてどうでもいい空気がすごい気が
何も考えずにgedit使ってるけど、なんかお勧めある?
>>382 それは多分ほぼ唯一の選択肢じゃないかな
それでダメならeclipseしかない茨の道
転向するならEmacsとかvimとか素敵らしい世界が広がるかもしれないけど
別に無理して雑談しなくていいんだよこのスレで
この流れワロタw
今日からお前はルビ夫だ。
vim いまくそはクソ
>>388 そんなに苛めないでよ、好みでいいじゃない。
matzがemacsだからみんなemacs使ってるのかと思ったらそうではないんだな。 デフォルトの ruby-mode って 2 スペだよな。
TextMateとvim
emacs で viper-mode だなあ vim script は書く気にならない
>>390 DHHがMacだからRails開発者はみんなMac使っていることはない
普通Eclipseだろ
いや全然
RubyのIDEって補完がイマイチなの多くない? Pythonはそこそこできたり、PyScripterみたいなお手軽なのもあるのに
returnの次はタブ、その次はテキストエディタの話かよ
言語自身はの話題は1.9系への移行に失敗して停滞中だから、あんまり話すこと無いと思う。 高速化もそれに引きずられて停滞中だし、YARVはまず1.8系で入れるべきだったよな。 遅いけど、1.8系を使わざるをえない現状は結構キツイ。
emacsからvimに転向した人をたくさん見てるんだけど まだemacsって人気あったのか?
>>398 失敗ってまだこれからじゃんかよ
昔のHTMLソースの汚さを知ってるやつは、今のHTMLソースにびっくりすると思う
踏み出さないと始まらんと思うよ
>>400 それもこれも1.9.2次第だな。期待せざるを得ない。
移行に失敗って... 現状移行できてないものはほとんどが文字列まわりだろ。 1.9.2だからどうにかなるという性質のもんじゃないと思うが。
404 :
デフォルトの名無しさん :2010/05/27(木) 22:15:37
Webアプリで名を馳せた言語なんだから、文字列周りに問題抱えるのはキツいよな。 Railsチームと連携とって一気に両方移行すれば、ある程度の切り捨てはあっても素早く移行できたと思う。 RailsとRuby本体の人たちってなんか溝あるよな。
Ruby作ってる人たちが一番興味あるのは汎用言語としてのrubyだから、じゃないかと思ってる
RailsはRubyからみたら寄生虫だからなぁ
rubyなんてRailsが無ければ存在自体知らんかったわ
それは威張って言うようなことじゃなかろう
純粋オブジェクト指向だっていうから勉強してみたけど失敗だったかな。。。
Twitterの中の人がRubyよりScala採用するとか言っているから、Rubyはわるい意味で再評価されてる
Ruby使いがお勧めする多言語ってなんだべ?
失礼 ×多言語 ○他言語
Perlについて知っておくとMRIにパッチを提案するときに有利、かもしれない
Smalltalk, Objective-C
scalaって静的言語なんでしょ? 今更戻りたくないなぁ
>>417 主な比較対象はJavaと考えると、相当よくなった言語
Rubyほどに手になじんで、気が効く型支援があるのが理想だが
ちょっとムチャだよなあw
Scalaは結構いいバランス感覚じゃないなかなぁ Rubyよりちょっと面倒な書き方になるだけで、コンパイルエラーを得られるようになるのが大きい
Scalaは間違いなく一時的なブームで終わる。断言できる。 学識のある人は誰も評価してないよ。
くまくまーの人が、最近Scalaに傾倒してるな
>>420 あれ設計したのは学者だぜ(スイス連邦工科大学教授)
むしろ、アカデミックなセンスを持った人が
実用を意識して設計した感がある
じゃあ流行るか、というと別問題だけどさ
どうなるか分からんが、まずはJavaのスーパーセットって形で
浸透が始まる可能性はあると思う
Javaのスーパーセットとか勘弁してくれ… Javaって文字が入るだけでマイナスイメージだわ
Rubyのブームなんてあったのかよ
>>424 普及してきた言語が互換性に引っ張られるのはよくある話
Railsのブームは、ブームというよりバブルに近いものを感じていたので
これからは分相応に評価されるようになるんでないの
というより、Rubyが爆発的に普及して一番驚いたのはMatzじゃないのかとw
Rubyが普及したというより普及したRailsの使用言語がRubyだったでござるの巻
matzがついったしてたの今知ったわ。
微妙な気分になるのなら、force_encodingの嵐を何とかしてくれやー! 何とかしてくれたら、いくらでもhotになってやるぞ
DBまわりはいまのところpostgresqlとmysql(2.9系ドライバ)なら 問題ないはず。 WEBから来る文字列のエンコーディングをどうすればいいかは、俺もよく分からぬ。
sqlite3はまだ駄目なの? 昨日あたりからEncodingErrorにはまってて、 ようやく問題の所在を理解してきたけど、1.9きついわ・・・
うちの会社は全てのサービスにおいてRails2.3.5とruby1.8.7で固定してる。 よほどのことが無い限りバージョンアップしないと思う。
>>432 sqlite3はひげの山男が修正してたはずだけど、
リリースされてはいない気がする。
railsってtennyバージョンアップでも機能追加してくるから困る… フレームワークとかライブラリの類は純粋なバグフィックスと機能追加・変更のリリースは分けて欲しいところ。
1.9は本当にキツイ
Ruby1.9に移行しない10の理由まだー?
Rails3は1.9メインにするって話だけど、今の状況ヤバイのかもしかして・・・
>>438 その時初めて1.9がメインになるんじゃないの?
なるほどw 逆説的だな
ブコフでたのしいRubyとRailsレシピブックとRuby逆引きハンドブック売ったら いくらぐらいになるかな RoRもういいわ
その3冊で何とかなると思ったなら甘すぎるだろ Railsレシピビックなんて完全なリファレンスじゃんかよ なんでリファレンスだけなんだよ
そういう話じゃないだろw
技術書とか受験参考書とか資格系の本とか そこら辺の本は全く値が付かないと思った方がいいぞ
なら「Railsを学ぶための3冊」というお題ならどれを挙げる? アジャイル本3版は確定かな?
446 :
デフォルトの名無しさん :2010/05/31(月) 05:14:57
2.3.8入れたほうがいいだろ。3に向けて廃止予定な機能はワーニングでるらしいぞ。
>>424 元記事は1.9.xが信用されてないってのと1.8.6が信用されてるってだけの話に見える。
Rails界隈で訊けばそうなるよね。
業務では「最新バージョン」は求められないからなー
450 :
デフォルトの名無しさん :2010/05/31(月) 13:55:32
ワーニング
ワールドワーツー
ワーミングアップ
「ワーニング」ネタを見たのは fj だった そういえば、NNTP って使ってねー 初めて 2ch を見たときは、NNTP あるからイラネーって思ったけど、この隆盛だしな なんもかんも HTTP になってしまった Web メールを使う人も多くなった
>>449 業務で求められなくても、おれの心が求めてるんだよ!
This way
>>453 なついな。
エロ画像一杯流れててニュースグループ合ったな。
art jpだっけ?
alt.binaries.pictures.erotica のことかな?
そうそう。昔は何故か炉画像が平気で流れてた気がする
さすがおまいら詳しいな。
ということにしたいのですね。
>>461 それちょっと前に公募してたような
ちょっと見たけど、Rubyプログラミング入門なのに
なんでPerlとかPHPとかPyhonの文法に章をさいてるんだよw
> ちょっと見たけど、Rubyプログラミング入門なのに > なんでPerlとかPHPとかPyhonの文法に章をさいてるんだよw 見てみた。ひどいなこれ。 入門者混乱するだけだろ。 東大京大でやるなら意図も汲み取ってくれるかも知れんけどさ。
464 :
デフォルトの名無しさん :2010/06/01(火) 13:30:30
IPAよ、俺を雇え。
最後の方にちょこっとじゃなくて、Ruby始める前にいきなりPerlやPHP、Pythonから はじまるからな・・
466 :
デフォルトの名無しさん :2010/06/01(火) 14:34:13
>>462 >Light Weight Languageの始まりは、1987年に開発がスタートしたPerlと
>されています。
色々とすごすぎるなwww
467 :
デフォルトの名無しさん :2010/06/01(火) 14:47:18
IPAが意味不明なプロジェクトに金使うのは今回が初めてじゃないからな。 AirWebとかLunascapeとかwww
468 :
デフォルトの名無しさん :2010/06/01(火) 14:55:07
さすが岡ちゃんがおるIPAやで…
Rubyでは、private なメソッドでも Object#__send__(:name, *args) で実行できます。 しかし 1.9 ではこれができなくなると昔聞きました。 でも今試してみたところ、1.9.1でもできるようです。 Object#__send__(:name, *args) でprivateメソッドを呼ぶのは、1.9でも有効でしょうか。 詳しい方お願いします。
>>461 これならFourDaysOnRails2の日本語訳ドキュメント読んだ方が無料の分マシだね・・・
>>470 有効。
レシーバ付き形式での__send__ではprivateメソッドを呼べなくするというのは一時試されたが、
結局取り止めになった。
Rubyの更なる繁栄には萌えキャラが必要だな。 あと萌えリファレンスまににゅある Stringたん Arrayたん Hashたん
Addressable兄貴にバックを狙われて気が気でないショタっ子URIきゅん
*演算子を再定義するのはやめろ
Ruby は自由というより、無政府な感じがするよね
ぜんぜん
早くUTF8統一政府ができないものか
しっかし猫も杓子もGitだな…
>> 473 > Stringたん > Arrayたん > Hashたん 標準クラス(モジュール)だけでもだいぶ大所帯だな
いじめられっこのCGIたん
北畠徹也 - iGoogle に追加 検索数チャート 第 45 位(急上昇ワード - 過去 1 時間) 大人気どすな
この手の輩が結構いたから、いまは割とまともな対応がなされるけどな
sqlite3-ruby === 1.3.0 / 2010-06-06 * Enhancements <snip> * Improved UTF, Unicode, M17N, all that handling and proper BLOB handling [tenderlove, nurse] 長かったな。
なんかモチベーションが下がってきちゃったときはどうすればいいでつか?
<○_,〆 なんかもー急にヤル気がなくなって ヘ○ヘ |∧ 荒ぶる鷹のポーズ! / ○ たそがれちゃって海とか見ながら (ヽ┐ ヘ○ヘ |∧ 荒ぶる鷹のポーズ! /
すっげえやる気出た気がする不思議
491 :
デフォルトの名無しさん :2010/06/08(火) 04:56:23
商標法
(先使用による商標の使用をする権利)
第32条 他人の商標登録出願前から日本国内において
不正競争の目的でなくその商標登録出願に係る指定商品若しくは指定役務又はこれらに類似する商品若しくは
役務についてその商標又はこれに類似する商標の使用をしていた結果、
その商標登録出願の際(第9条の4の規定により、
又は第17条の2第1項若しくは第55条の2第3項(第60条の2第2項において準用する場合を含む。)
において準用する意匠法第17条の3第1項の規定により、
その商標登録出願が手続補正書を提出した時にしたものとみなされたときは、
もとの商標登録出願の際又は手続補正書を提出した際)
現にその商標が自己の業務に係る商品又は役務を
表示するものとして需要者の間に広く認識されているときは、
その者は、継続してその商品又は役務についてその商標の使用をする場合は、
その商品又は役務についてその商標の使用をする権利を有する。
当該業務を承継した者についても、同様とする。
http://www.houko.com/00/01/S34/127.HTM#s4-2
いつものことだが、日本語に見えない文章だな これもコードなんだろうが、バグ多そう
わからん だれかS式で書き直してくれ。
MLがちょっとカオスw
急募 ruby.comをハックしてruby-lang.orgに誘導してくれる方
いやいや、プログラマブルじゃないものをプログラマブルにするのがまた楽しいんですわ
どっかの宝石屋が持ってるのか。 だったら問題ないじゃない。
>>495 python.orgをハックしてruby-lang.orgに誘導する方が面白い
世界中のperlerがruby-lang.orgにハッキング出来ないか試してるのかもなw
脆弱性テストとか何か名目がいるだろ、さすがに ruby-lang.orgのRadiant CMSとRailsがうんぬんかんんぬん
新名称何にすっかね 無難なところでluby, Ruloy, perl++あたりか
ルーピーとか。
eclipseスレに書くべきか迷ったのですが、あちらでは「Rubyの話はRubyスレでしろ」と叩かれそうなので、こちらで質問させてください eclipse 3.5 に PyDev や EPIC を入れて、Python や Perl は書けるようになったのですが、Ruby 用のプラグインがよくわかりません… 昔はRDTというのがあったらしいですが、Aptana? RadRails?とやらに作者が行ってしまって、今は Aptana とやらしか存在しない、という話を見かけました ですので、Aptana Studio 3 Beta なるプラグインをインストールしたのですが、設定項目に Aptana も Ruby も出てこないので、どうも動いてないような気がします バージョンが 3 Beta だからダメなのかと思って RadRails 2 とやらも入れてみたのですが、これも同じで設定項目にRubyがでてきません eclipse 3.5 には何を入れれば、Ruby が書けるようになるんでしょう…? 特定のバージョンのプラグインを入れないとハマるのでしょうか… それとも、Ruby 本体だけじゃ足りなくて、RoRも入れないと動かないのでしょうか…?>eclipseのプラグイン RoRなんて使う予定はないのですが…
505 :
デフォルトの名無しさん :2010/06/09(水) 19:39:14
RadRails 入れてもそんなに幸せになれないんじゃね? emacs とか vim 使っとけよ。
RadRailsで補完の仕方がわかっても、 これじゃ使いもにならないよ!って言うのに lamda { puts 1 }
ML見てないから意味わかんね
510 :
デフォルトの名無しさん :2010/06/10(木) 22:01:17
>早急にアクションを取るべきはむしろPerlの方ではないかと どういうこと?
すぐに動けば無効審判よりは軽い手続の異議申立で潰せる可能性があるからってことでは。 相手が権利を控えめに使ってくれることはまったく期待できないわけだから、 そういう意味でも早く手を打つべき。
てか、RubyはともかくPerlやApacheが未だに商標登録されてないのに驚いたわ
testes
海外ではeRubyに代わるものとして、Hamlが人気あるという噂を聞くけど 正直いってその理由がよくわからない Hamlの良い所って何? それとも一部の人がプッシュしてるだけで、実はそれほど人気なかったりする?
518 :
デフォルトの名無しさん :2010/06/12(土) 17:26:33
1人で何でもやっていいプロジェクトならHamlいいよね
とてもHamlがいいとは思えないのだが。 デザイナにHTMLをまず作ってもらって、 それをテンプレートへ置き換えるという流れを想定した場合、 ERBのほうが素直に置き換える事ができる。 Hamlだとかなり面倒になるのは目に見えている。 海外で人気があるとかどうでもいいので、 自分にとって使いやすいERBを俺は使うよ。
hamlはあまり好印象ではないけど、sassは結構好き。
Rails3でJavaScriptとcssもERB化の流れっぽいな。 sass用済み? いや、でもhamlも一部で流行ってるけど テンプレをデザイナから遠ざかる方向にするのはどうなんかな?とは思う 一部のプログラマはDRYするのにDSL覚えるのも苦にしないけど、 それをデザイナにもとめるものかよとw プログラマ主体プロジェクトならhamlでもいいんだけどね。 HTMLやCSSのコーディングも全部プログラマがやるとか
HTMLといえばあれなんだっけ li * 4 とか書くと <li></li> <li></li> <li></li> <li></li> とか変換されるやつ 思い出したいけど完全に失念した
zen-coding
>>522 そのくらいのことも覚えられないデザイナは首にした方がいい
hamlって全く必要性を感じないのだが
hamlのサンプルを見たときに、これは使えねーなと思うよね、やっぱり。
Don't think you can Replicate Yourself
rubyなんてもうrailsでしか価値を見出せないんだから早くrailsプロジェクトに引き渡せよ いつまでrailsの恩恵に浸って開発者面してんだ無能なコミッタどもは 効率悪すぎ
Railsの恩恵? 別にRuby使ってくれなんて俺は頼んでないけど。
matz 光臨
実際、今はRails以外にも、RamazeとかMerbとかSinatraとか いろんなWebアプリフレームワークが出てきたけど 一般的なユーザーから見て、あの辺のフレームワークってどうなのかな 今でもRuby=Railsなのか それともすでにRailsは選択肢の1つという認識なのか
533 :
デフォルトの名無しさん :2010/06/13(日) 13:17:50
Rails一択なんじゃね?うちでは遊び以外でRails以外のFW使ってるプロジェクト見たことねぇ。
534 :
デフォルトの名無しさん :2010/06/13(日) 13:39:14
Railsは仕様の端っこのほうつっつかれて苦労した感覚しかないなぁ
Rubyって、普通はWindowsのバッチ書くために使うもんだろ
そうだね
>>532 個人的なイメージ
・Merb 吸収合併された
・Ramaze 誰も使ってない
・Sinatra twitterボット用
・Rails 上場企業の主力としても使われるフレームワーク。公的機関でも採用されている
・Ruby バッチ処理、ちょっとしたスクレイピング用
>>533 うちでは、ってお前どこ中よ
東洋大学附属白山中学校です。
ν即は物知らずな割には、何にでも首を突っ込みたがる面倒な奴らだ。
542 :
デフォルトの名無しさん :2010/06/16(水) 21:42:35
なんちゅうしょうもない選民意識…
Rubyのコミッタになるにわどしたらよいですか?
544 :
デフォルトの名無しさん :2010/06/17(木) 07:14:12
Rubyの開発チームって、Ruby開発の若手教育したりしないの? Linuxはいよいよ老人ホームみたいになってきてやばいらしいじゃん。
Ruby Summer of CodeとかRuby合宿とかじゃダメ?
COM
>>550 > 22歳以下の学生を対象としており
30歳の学生は参加できませんか、そうですか。グスン...
,―ヽ_(((((_、― ,/ ノ ヽ ~\ / ノ IPA ヽ ~\ / ノ ヽ、 `ヽ | ノ / ̄\ / ̄~ヽ ヽ i | ノ | ノ \ | <●> <●> ( ) \ | | | i / | / ヽ レ i (●_●) / i、 ,-――-、 ・ / i、 <(EEEEE)> ∵/ 未来のIPA Rubyの開発者は君だ! i、 \ ./ / \ ーー ,ノ ,,.....イ.ヽヽ、ー-―一ノ゙-、. : | '; \_____ ノ.| ヽ i | \/゙(__)\,| i |
>>546 GCCですらC++に移行するのに
今時、CでOS開発なんてしなくないよな
>>553 GCCですらC++に移行するのに
たしかに今時、CでRuby開発なんてしなくないよな・・・
しなくないのならいいじゃないか
猫も杓子も名前付き引数だなぁ。 でも sin(x) とかは名前がむしろ邪魔だけどむりやり function(sin:x) はどうよ。 縮めて f(sin:x)はどうよ。 もっと省略して (sin:x) はどうよ。 あれ?コロンも要らない? (sin x) うひょー。Lispやないか〜。 名前付き引数なんていらんかったんや〜。 (baz) (baz 1) (baz (a 1)) (baz (a 1) (b 2)) (baz 1 2 (b 2)) (baz (c 2)) うわー。
S式恐怖症
>>546 20代は少なそうだけど、おそらく30代前半くらいのコミッタ増えてるし
まだ10年は大丈夫でないかな。
新機能とかもう必要ないしな
30代で老人って言われる業界なのか
rakeについて質問です。 multitaskの同時実行数を制限したいです(重たい処理であるため) SizedQueueで制限して、だいたい動作しているのですが、 たまに処理が返ってこない場合があります。 ---- Rakefile ---- require 'thread' CC = "cc" OBJS = %w(test1.o test2.o) QUEUE = SizedQueue.new(2) multitask :default => OBJS rule '.o' => '.cpp' do |t| compile(t) end def compile(t) QUEUE.push(true) puts "#{CC} #{t.source}" # 動作確認用。 QUEUE.pop end ---- 何かの弾みに、どこかでデッドロックしているんだと思いますが、 ロジック的におかしいところがわかりません。 デバグも難しいというか、どうやればいいのか…。 ご示唆、ご教唆お願いいたします。
562 :
561 :2010/06/20(日) 15:18:03
ぱっと質問見た感じだと、内容のレベル的にはどっちかというと こっち向きかも? とりあえず1000回rake動かしたが止まることはなかった。
564 :
561 :2010/06/20(日) 16:22:43
向こうを閉じて、マルチポスト状態を解消してきました。 >563 どうもありがとうございます。 こちらでは、30%くらいの確率で止まるようです。 Windows XP ActiveScriptRuby 1.8.7 taskの数(並列処理するファイルの数)は100個くらい。 一度に100個だとCPUがキツいので、一度に2個ずつ並列処理しています。
図書館でたのしいRuby借りてきた。 今日で基本をマスターするぞ。
おれの「たのしいRuby第2版」、だれか300円で買わない? カバー捨てちゃったけど結構美本
図書館に寄贈すべし
そう思ったけどカバーないから 同じシリーズのRubyとRailsのレシピブックももう古いからいらないのだが もったいなくて捨ててない
うちの近くの図書館もPHP、Python、Perlの書籍は全然置いてないのに、Rubyはやたら置いてある
だれかがリクエストしたんだろ
572 :
デフォルトの名無しさん :2010/06/20(日) 21:20:06
たのしいruby読み終えたとこなんだがお勧めの本ないか?
どや顔のmatz氏が表紙のコードの世界
>>572 >>568 からレシピブックを300円で売ってもらうと吉
まあそれは無理だとしても逆引き本の類が一冊あると便利だよ
>>572 本読むより、自分でオリジナルのアプリを作ってみる事をおすすめする
576 :
デフォルトの名無しさん :2010/06/20(日) 21:59:39
577 :
デフォルトの名無しさん :2010/06/20(日) 22:01:19
Webにあるるびまを読んでみるとか。 特に青木さんの添削を
579 :
デフォルトの名無しさん :2010/06/21(月) 20:51:24
恋するプログラム―Rubyでつくる人工無脳探してるんだが知らないか?・・・
>>579 それもう絶版。マイコミだったっけ?あそこは絶版早いよな。
マイコミはまともに商品管理しているとは思えない
ネットなら買えることあるみたいだぞ だれか買ったやつでめちゃくちゃ高いが
マイコミは売れてる本でも平気で絶版にする というか、自社の本がどれだけ売れてるか調べてもいないのだろう 出版不況とか言うけど、マイコミは自分で自分の首を絞めてるとしか思えない
いや、恋するプログラムに関しては、 そこまで売れてたとは思えないのだが・・・ 自分がRubyやってるからって自分基準で物を考えすぎ
585 :
デフォルトの名無しさん :2010/06/21(月) 22:12:00
>>582 kwsk
ほかにお勧めとかありますか?・・・・・・・・・
筆者が死んじゃったからな・・
587 :
デフォルトの名無しさん :2010/06/21(月) 22:13:08
何それ怖い
>>586 を補足しておくと、マジでお亡くなりになっている。
恋するプログラムは以前ヤフオクで買ったわ たしか5000円ぐらい出した気が。
>>585 いや、普通にアマゾンとかで売ってるんだが
今も1冊買えるみたいだからみてみ。8,796円らしいけど
著者って青木くん?
さいきんMatzのtwitterばっかり見てる。 これって恋、なのかな…
Metaprogramming Ruby面白そうだな。 で、日本語訳はいつどこの出版社からでるんかいな?
597 :
デフォルトの名無しさん :2010/06/24(木) 08:48:39
ruby-1.8.7-p299 アゲ
598 :
kk :2010/06/24(木) 18:05:55
どなたかRUBYの問題解いてくれませんか?
肝心な問題はどこよ
WindowsのMingw環境で Ruby 1.8.7 p299のコンパイルついでに 1.9.2 preview 3をコンパイルしてみたら ext/tk/stubs.c:75 の # include "util.h" で、そんなファイルは存在しねぇよと怒られました # include "ruby/util.h" じゃないですかね そのように変更したところ、最後までコンパイルできました それと、UNCパスだと起動出来なくなってる…… >\\hogehoge\usr\local\bin\ruby -ve 1 ruby 1.9.2dev (2010-05-31 revision 28117) [i386-mingw32] <internal:enc/prelude>:3:in `require': No such file or directory - /thor-ex (Errno::ENOENT) from <internal:enc/prelude>:3:in `block in <compiled>' from <internal:enc/prelude>:1:in `each' from <internal:enc/prelude>:1:in `<compiled>'
お、1.8.7は例のString末尾が消えるバグなおったのかな
>>601 This time we fixed various bugs, including the unicode inspection
bug that annoyed you a lot. <snip>
だそうだ。
p "あ" が文字化けするやつが直った?
>>603 そういうこと。
修正自体は前のリリースの直後にコミットされてたんだけど、長かったな。
何年かかってんだよ
たぶん Windows限定 gem update するときのカレントディレクトリに update 対象の gem と同名で別バージョンの tar.gz ファイルか展開済みディレクトリのどっちかが置いてあると gem が「Permission denied - gemファイルのフルパスtar.gz抜き」のエラーを出して死ぬ 具体的には nokogiri-1.4.1-x86-mswin32.gem.tar.gz と nokogiri-1.4.1-x86-mswin32.gem/ のあるディレクトリで gem update したら死んだ めんどくせえ
もしかして
>>605 はくだんのバグが昔のRubyからずっとあったもの
だと思っていたのではあるまいか。
そういう話ではなくて、システムを改善すりゃ解決できるような問題なのか、そもそも対応できないような問題なのかって話。
対応自体は前回リリースの直後に行われていた。 致命的じゃないから次のリリースまでリリース版に含まれていなかっただけで。
これはどっちかってとテストケースが漏れてたことのほうが重大 …いやまあどんなテスト事前に作っとけば回避できたのかってのはよくわからんが
テストケースは育てるものであって、 いきなり完璧なものができるし作るべきというのは幻想だと思うよ
テストケースがただしいかどうかのテストが必要
いやそんなレベルの話を嬉々としてされましても
まずは今認識している世界が夢か現実かを確認しないとだな…
前に突っ込みがあったが、日常レベルで誰も気づかなかったのが恐ろしい p で日本語を表示する、というような用途を誰もしてなかったというのが
そもそもp(inspect)って日本語とか表示できるものなの? 俺のWindows環境だと "\202\310\202\311\202\261\202\352" というような表示にしかならないんだが
>>617 irb> p "日本語"
"\223\372\226{\214\352"
irb> $KCODE="s"
irb> p "日本語"
"日本\214\352"
ダメじゃんw
いやバージョン的にはこれで正しい irb> p "電気料金お支払いのお願い" "電気料金お支払いのお願\202\242" irb> p RUBY_DESCRIPTION "ruby 1.8.7 (2010-01-10 patchlevel 249) [i386-mswin32]"
>>619 p249で入ったこのバグがp299リリースで直ったという流れを理解してくれ。(実際に直ったのはp250)
近所の猫を預かってるが懐に潜り込んできて邪魔すぎるw だっこタイピングせざるを得ないw
だっこタイピングって言いたかっただけだろwwwwwwwwwww
プログラミングしようぜ! iPhone・iPad・Android・twitterネタはいくらでもあるぞ
http://tsushima.2ch.net/test/read.cgi/news/1277553476/ 島根県が若者対象に夏の「Ruby合宿2010」を開催へ、ARコースを新設
島根県は2010年6月24日、「Ruby合宿2010」を開催すると発表した。25歳以下の
学生などが4泊5日の合宿でRubyを学ぶ。まつもとゆきひろ氏の講演や、島根県
IT企業との交流会も予定されている。
Ruby合宿は、島根県が2008年から若者にRubyや県内のIT企業への理解を深めて
もらうことを目的に実施しているイベント。2010年は、3回実施し、うち一回は
AR(拡張現実)コースとし、RubyでARアプリケーションを作成する。また、合
宿中に島根県などが開催する国際会議「RubyWorld Conference 2010」に参加す
る。
日程は第1回が8月7日から11日、第2回が8月27日から31日。ARコースが9月3日か
ら7日。費用は7500円。詳細は島根県のWebサイトに掲載している。
島根県が若者対象に夏の「Ruby合宿2010」を開催へ、ARコースを新設 - ニュース:ITpro
http://itpro.nikkeibp.co.jp/article/NEWS/20100625/349661/ > 25歳以下の学生などが
30歳の学生は参加できませんか、そうですか。グスン...
Ruby知名度があがってきたのか、ニュー速に定期的にスレたつようになってきたな たいがいRuby以外のこと話してるがw
Rubyがホットというよりは Rubyの次は何だ? みたいな話題の方が多いけどな。
Ruby の悪口はそこまでだ
そのままじゃんかよw
臆病者が無責任にバグ報告するにはどうしたらいいんでしょう? とりあえず 1.9.2 Mingw版がUNCパスだと実行できないのは直って欲しいなぁ
なぜか中1の従妹に「ルビーってなに?」って聞かれたから「こわーい魔術だよ」って教えておいた。
角川ルビー文庫なら姉の部屋にたくさんある
中1の従妹なんてこの世に存在するわけないだろ。二次元の見過ぎ
>>629 捨てアドでredmine.ruby-lang.org
まつもと 「2ちゃんねる?NHKですか?・・・・あー、インターネットね・・・うん・・・ 聞いてますよ。なんや俺も色々と書かれてるみたいね(笑)俺だけじゃなくて有名人は色々と書かれてるらしいね。 う〜〜ん、楽しいんでしょうね・・・というか、それしかないんでしょうね。ストレス発散というか。 結局、自分が不甲斐ない人生を送っているから、成功した奴、金を持っている奴、有名になった奴、才能のある奴を 叩くしかないんですよ。まー、お前らにはそれくらいしかできんわなぁ・・・と(笑) 腹立つ?・・・いや、むしろ哀れみを感じますね。そんなことしか出来へんのやもん、小動物やん(笑) まー、そんな奴らのささやかな楽しみ、ストレス発散を引き受けてやるのも有名人の務めかもしれませんね。 かわいそうやから、せめてそれくらい引き受けたらんと。 こっちは、いい家に住んで、いい女を抱いて、いい車に乗って、いい物を食べて、大金を稼いでるわけですからね。 お前らはせいぜい悪口を書いて楽しんでなさい、と(笑)ただし寄生虫ということを自覚だけはしておきなさい、と(笑)」 「僕ね、僕のことを中傷する書き込みをしている2ちゃんねらーに言いたいんですよ。 『あ、そうですか。あなた、ほんじゃ俺より偉いんや』ってね。 ほなら、あんたはなんで俺より収入も少なくて、俺より女にもモテへんで、 俺よりいい家にも住んでなくて、俺よりいい車にも乗ってないんですかって。 すべての面で俺より負けてるやん。 それを自分の中で、どう整理してんの?っていうのを1回聞きたい。」
西日本だと2ちゃんねるっつったらNHKしか思い浮かばないからな
こういうの見るとコピペ改変文化って廃れたなあと思う
キングコング自体何年前のネタだよって話だしなあ
2ch自体ひと減ったからなぁ
断言しよう
>>636 みたいなのは人の多寡によらず普通につまらん
ながいし。
JavaScript見るとソフトウェア的なパフォーマンスチューニングの余地が ありまくりのような
Lispマシンみたいなもんか
646 :
デフォルトの名無しさん :2010/06/29(火) 00:38:28
>>645 またそんな「Rubyは一般人用糖蜜漬Lispだ」という言説を強化するようなレスを
ハードウェアレベルでのGCサポートって なぜか流行らないんだよな ソフトウェアでの柔軟性にみんな満足してるってことだろうか
ブレッドボード屋がアップを始めました
USB端子にエンコーダとか接続して処理効率を上げるというフィーチャーはもっと流行ってよい 物理的なプラグイン挿入でパワーアップとか超かっこいい濡れる
USBはアンマウントせずに抜くやつがいるからなぁ
組み込みとかまったく詳しくないんだけど、もしRubyの処理系を実装したらどれくらいの規模になるんだ? あとたとえばPCI ExpressにズボッとさしたらRailsがシュポシュポ走るRials鯖デキタヨ!とかできんの? 組み込み向け「軽量」の軽量って何が削られて軽量になるんだ?RubyをRubyたらしめている重量な部分を削ったらRubyじゃなくなるのでは?
evalとリフレクションを削るぐらいのことはやるかも? ただ、やりすぎると何のためのRubyやら分からなくなるから 確かに難しい所だとは思う そういや以前に、ささだ氏がRuby処理系をモジュール化して 適宜不要な機能を外せるようにする研究を やってるとか聞いたような。 関連するんだろうか
>>643 このプロジェクトでは軽量Rubyを実装するまでかもしれないけど、
最終的にはフルに実装されたチップができあがる事を期待してもいいのかなぁ。
少なくともそのように想定して作って欲しい。
あと軽量Rubyの仕様は公開されるのかなぁ。俺の中でちょっとモチベーション上がってきた。
組み込みに何を期待している。 Rubyらしさを残して何の役にも立たないものが出来上がるか、 表面上はRubyっぽいけど中身は別物な、記述量の少ないC言語のラッパーが できるだけだろうな。
すっげー昔のJRubyみたいな動作のもんになると予測
あまり言いたくはないのだが、PythonでできてないならRubyでもできないと思うんだ
pocoruby
字面だけrubyで30倍速い挙動の言語があったら 機能制限でかくても即乗り換える
>>660 そういうMRIのサブセットの実装があっても良い気がする。
>>660 PythonにはすでにCythonがあるから、Cubyはできるんじゃない?
ボトルネック30倍くらいだったらチューニングでなんとかなりそうな気もしないでもない
ボトルネック30倍の意味がわからない わかってない言葉は使うな
Javaチップ上で動くJRubyでええやん。
チップが熱くなるな…
組み込みでRubyを使うメリットって何? 「Rubyは生産性が高いからね」とかヒトコトで言われても、普通の人は納得しないよ。
他に町おこしのネタがないから
>>668 いやいや、それが一番の理由なんだから納得しないと言われてもな
おまえCはおろかJAVAもやったことないだろ
「普通の人」って何?
Rubyの生産性が高い…だのなんだの言われだしたのはRoRが出てからだろ。 RoRの生産性が高いのであって、Rubyの生産性が高いわけではない。 ってこんなこと本スレで言わなきゃならんの?
おまえあたまおいいぬ
>>672 おまえCはおろかJAVAもやったことないだろ
Java VM搭載の組み込み環境で動かすのが早いだろうな 問題は組み込みでJava VM動くんなら、Javaでいいんじゃね?とおもうことだな
dojoだっけ?iアプリでJRuby使ってる奴いたらみてみたいわ
677 :
デフォルトの名無しさん :2010/07/02(金) 20:15:59
Ruby 1.9.1-p429 アゲ
678 :
デフォルトの名無しさん :2010/07/02(金) 20:20:16
Ruby 1.9.2 RC1 アゲ
679 :
デフォルトの名無しさん :2010/07/04(日) 20:44:58
Ruby勉強し終えたのでRuby on railsやろうと思ってます お勧めの本とかあったら教えてください
別に違ってないだろ
Rubyに関する研究で博士号とりたいんですがどうなんでしょうかね^^
そうですか^^
^^;
博士号の研究というからには、新しいことを発見したり考え出したりだろ 学部生の卒論じゃないんだから Ruby自体にフォーカスをあててどんなテーマにするのかイメージわかんな
例えば、可搬性高くするためにJavaのVMで動くRubyとか、.net CLR上で動くRubyはどうだろうか?
いや、Rubyチップってのもいいかも知れないぞ
激速のRubyコンパイラで
質問です ruby関係の書籍を購入するとモルモン教の収入になりますか?
いまのところ、著者が「末日教徒キリスト教会」自体である本や、売上げが 末日教徒キリスト教会の収入となる、と宣言された本はありません。 末日教徒キリスト教会信者の収入になるのが嫌だというなら、まつもとゆきひろが 著者になっている本を買わなければいいと思います。 それから、今後買う本全てについて、その著者が末日教徒キリスト教の 信者でないかどうか必死に確かめることをおすすめします。そんなに嫌なら。
末日聖徒、だったorz
国産LISPマシンELISの設計者である、JAIST副学長日比野先生が、この夏、ELISの復活祭を企画されています。
復活祭には、竹内先生をはじめ、TAO/ELISに関わった方々に多数ご講演いただきます。
会場が石川県とちょっと遠いですが、小旅行気分で、ぜひぜひ多くのLISPファンのみなさまにご参加いただきたいと思います。(yshigeru)
日時:8/7(土)〜8/9(月)
場所:JAIST(石川県美濃市)
詳細と参加申し込みは、ELIS復活祭ページをご参照下さい
http://www.jaist.ac.jp/elis-revival/home.html matzも来るよ
そうか サイン貰いに行くか
サイン貰いに石川県美濃市までわざわざ行くのか
人寄せパンダだろ
興味のある言語にTaoと書いておいたら面接で爆笑された Railsエンジニアを募集してる会社の採用面接を受けた時の話。 転職エージェントに作れと言われて作ったシートに、「興味のある技術/言語」という欄があったんです。 仮想化技術とか色々書いたけど、プログラミング言語の中で興味があるのはTaoだったので、 Taoと書いておいたのですが、それを見た面接官のリアクションが酷かった。 面接官「Tao・・・ふははっ!Tao!」 面接官「Taoやってるんですか?wwwww」 俺「(唖然)は、はい・・まだS式を理解したぐらいですが。。」 面接官「Tao・・・ニヤニヤ」 その人はエンジニアで、当然Rubyのコードを書いている人だったので、 Rubyが「Matz Lisp」と呼ばれている事を知らないワケが無いだろうと思っていた。 つまり、このリアクションは"理不尽な状況に直面した時にどう対応するか"を見ているんだろうと判断し、あえて突っ込みは入れずに対処した。 しかし最後の質問で「何故RoRを採用したんですか?」と聞くと、 気まずそうに理由を話し、最後に「・・・と、聞いてます」と答えた。 つまりこの人は上からRubyを採用すると言われたから使っているのであって、 特別Rubyに思い入れとか無いリーマンエンジニアなんだなあと分かった。 mix-inとかもLisp発のテクニックだし、RubyやってるならTaoに興味を持つのは普通だと思うんだけどなあ。 多分ガチで知らなかったんだろう。
糞どうでもいいけど、数あるプログラミング言語がある中で、 Rubyを選んだ理由を教えてください。
国産だから
比較的新しい言語だったから(当時)
頭文字が P じゃないから
begin...endが好きだから
RubyはLispだから TAO最高w
>>693 お、JAIST石川か近所だな。
2時間くらい高速で車飛ばせば着く距離か
行ってみようかな
しかし、googledocはやめろw 下手するとアカウントバレすんだよ
Matzも老害たちの御機嫌取るのに こんなイベントに出なくちゃならなくて大変だな
>>698 インデント強要ウザいとかいうバカがいないから
(´・ω・`)
709 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 10:08:20
Aooleからは捨てられたみたいだね。そのうちFlashのように禁止になるかもしらんな お古のバージョンが入ってるけどあれじゃあ反ってじゃまなので 実は嫌がらせかも知れない。
うまい煽ーれだなw
Aoole検索するとAppleでてくるんだけどなにこれww スラングみたいなものなのか
712 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 15:09:05
Rubyを使って2chのスレをhtmlに整形する技術を学びたいのですが何をすればいいのかわかりません><
おまいらワンライナーゴルフでの出番だぞ。
Rubyらしさあふれる挿入ソートを書いてください
なんで俺が?
お前が書かずに誰が書くよ?
じゃあ俺がやるよ!
719 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 18:50:36
720 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 19:28:06
>>719 できるだろとか言われてもできないものはできない
じゃあ入門書を理解するところから始めるべきだ
722 :
名無しさん@そうだ選挙に行こう :2010/07/10(土) 20:00:15
入門書は読みましたし理解もしましたよ
しょうがねーな 擬似コードでよければおれが書いてやるよ それを参考にちゃんとRubyで動くようにしてくれ puts "Hello World"
初心者スレならともかく本スレでこれにはがっかりだ
725 :
名無しさん@そうだ選挙に行こう :2010/07/11(日) 18:48:16
何でdatに番号と名前がないんだよ
726 :
名無しさん@そうだ選挙に行こう :2010/07/11(日) 19:12:29
matzえもんワロタ
uy ◆znKzKzwQb ←コイツがきておわってるな
1.9.2 RC2 のリリースきてるな 順当に行けばこれがRCの最後で次はP0だよな
結構、言語処理系に行くっていうのが、はまりポイントで、 確か、Rubyのまつもとゆきひろさんか誰かがおっしゃっていたんですが、 「エンジニアっていうのはだいたいOSを作るか、 言語処理系を作るかに分かれる」らしいんです。 私はどっちにも足をつっこんでしまった感じで、 これは泥沼なんじゃないのかなとも思いますね(笑)
Matzの頭にはCPUを作る方への分岐はないんだな
MatzがELIS復活に来るぞ。
客寄せパンダご苦労さんw
1.9.1で /(?<=a).*b/ =~ "aab" がマッチしないのはなぜ? バグかな?
(?<=a)ってどういう意味?
肯定戻り読み 確かに動作おかしいな。バグか
肯定戻り読み それぞれの文字境界位置のうち、左側にaがあるところにマッチ _a_a_b_ 1_2_3_4 2(abが続く位置)と3(bが続く位置)だが該当するので、どちらも その後 .*b にマッチするように思う。
このへんの正規表現動作の守るべき規定ってどっかにある?
というか、正規表現ってそれぞれが実装してるの? Onigurumaはどうなったのよ
何を言ってるかわからんが鬼車は1.9で取り込まれたよ どの言語でも使ってる共通正規表現エンジンがあるかということなら「ない」
そんな挙動を出してるのはRubyなのか鬼車なのか、って意味だろ 少なくとも正規表現エンジンは、PHPとは共通なわけだな
1.8.7だとそもそも SyntaxError: compile error (irb):1: undefined (?...) sequence: /(?<=a).*b/ って言われたけど、Onigurumaの拡張された正規表現?
Perl 5.10 だとマッチするな。 perl -e "print 'aab' =~ /(?<=a).*b/" #=> 1
>>739 特にない
他の言語の動作を見てなんとなく実装する
>>739 もしかすると厳密な定義は無いんじゃないかなあw
戻り読みを定義した規格……POSIXにもECMAScriptにもありそうにない
もともと正規表現というと、正規言語を表すための記法だったはず
ところが現在ではいろんな方向に独自拡張が重ねられていて
理論的なものとかけ離れている
748 :
デフォルトの名無しさん :2010/07/14(水) 18:51:46
rubyからCライブラリを利用したいのだけど、この場合選択肢として swig dl ffi があるけれど、どれを利用するのがいいでしょうか? またはどれを利用するのがメジャーでしょうか?
swigってのはC(++)のコードとRubyとのインタフェースを自動生成するフレームワーク。 dlとffiはrubyから直接ライブラリを呼ぶためのライブラリ。 インタフェースが素直で、自動生成したコードが使い物になるようならswigで。 インタフェースが単純で、グルーのコードなしでrubyから直接呼び出せるようなら dlかffiで。dlは枯れていて標準添付。ffiは最近開発されたもので標準添付じゃない。 他に、普通に拡張ライブラリを自分で書く、という手もあるけど。
FFIは有力なトレンドではあるが、この先どうなるかな。 期待はしている。
>swigってのはC(++)のコードとRubyとのインタフェースを自動生成するフレームワーク。 ruby だけじゃないよ
752 :
デフォルトの名無しさん :2010/07/16(金) 11:24:07
>> 749 rubyから直接呼び出せるのであれば swigよりもdlかffiが簡単でよいような気がしてきたのですが そう単純なわけでもないんでしょうか?
ンなこと言ったらあらゆるものは「Rubyから直接呼び出せる」ぞ
MinGW で 1.9.2 rc2 試してみた。 なんか Readline.readline が無駄にエコーバックするようになった。 readline 6.1 をてきとーに野良ビルドしたやつだけど、mswin の人は問題無い? 1.9.1 p378 のころは問題なかったんだけど。 それ以外は問題ない感じ。 MinGW+MSYS だと bat だけじゃなくてシェルスクリプトも欲しいので 両方インストールほしいなあ。いつも自分で作ってるけど。
問題無い
>>756 ruby1.9 -rreadline -e 'p Readline.readline(">")'
>aaa
aaa <- これ
"aaa"
みたいな。irbが大変うざいことに。
まあうちの環境のせいだよなあ。
シェルスクリプトと bat は 1.8 の昔はインストールされてた気がするけど
無くなったということは必要ないと判断されたのでしょう。
rbinstall.rb 数行いじるだけだし、個人的には困ってないす。
>>757 使ってるのはMSYSのreadline?
>>749 > dlは枯れていて
dlは内部でffi呼ぶように変更されてなかったっけ?
その辺の話でアーロン先生がWindows方面の人達と揉めてたような
ヒョードルだっけか?
継承って要らないよね。 仕様にしても実装にしても「差分」という考え方は プログラミングにおいては邪悪な密結合だと悟った。
誰だそれ?って思ったらfiddleか? ふつうに読んだら「フィドル」だろ
>仕様にしても実装にしても「差分」という考え方は Mix-inバカにするなお
>>757 > シェルスクリプトと bat は 1.8 の昔はインストールされてた気がするけど
> 無くなったということは必要ないと判断されたのでしょう。
基本的にmingw版はpure Windows用だからなぁ。シェルスクリプトがあるほうが不自然だろ。
で、MSYSは公式には非サポートなので、ユーザが声を挙げない限り変わらんよ。
Rubyのスレで聞くようなことじゃないんだけどさ、 JVMに実装された言語って色々有るじゃん。 これって何のメリットが有んの?
>>765 Java上で動く
「Javaしかインストールできない環境」でも動作させられる可能性が大
ていうかぶっちゃけ最近の起動しっぱJVMはハードウェア込みだとやたら速いので
私たちが「Cで書いてコンパイルしてそのへんのパソコンで実行」というのと似たようなノリで動作させられる
GAEのJava版でJRubyが使えるので GAEでもJRubyOnRailsがつかえます(pgr
>>765 JVMは今や、世界で最も優れた仮想マシンの一つ
だから、低水準な部分はJVMに投げちゃって
開発者は言語の高水準な部分にリソースを割くアプローチが成立する
JVMならサポートしてる環境も幅広いし、
ライブラリが山のようにあるのも魅力
JVMとかどこでも動くとか言ってて、iPhoneで動かなくてひどい Flashも当初9割のブラウザ環境で動くとかいってiPhoneで動かなくてひどい ガラケーならサブセットでも別にいいかって気がするのに どうしてこうなった?
>>767 JRubyとRubyOnRailsがそもそも遅いし、ActiveRecordだとBigTable使いにくいからpgrってるんだと思うけど、
肝心の起動が重くてなかなか見られすらしないspinupの問題は
他の重いフレームワークでも抱えている問題だし、
そもそもBigTableうんぬんは他の言語でも同じだよな
それよりも、GoogleAppEngineスレとweb開発系の勉強会でGoogleAppEngineで仕事している人との
温度差すごい。
前者はこんなもん使えないと言ってるし、
後者は(モバイル用SNSゲーだったりとか、どれもかなり偏ってたが)バリバリ使えると言っているし
構造がかなり簡単なアプリでかつ、
下手するとピークに一気に負荷かかることがあり
一時的にでも簡単にスケールできるような用途に特化したPaaS(HerokuとかGAEみたいなの)に見える
まだまともにDB使えないやつがいるのか
というか、JRubyはRuby向けVMチューニングしてない現時点ですら 1.9系MatzRubyより速いしな。勝負になりうるのは起動時間だけだわな。 まあJava版の方が速いのはPythonだってそうだし、 突っ込まれてきたリソースが違いすぎるから仕方ないね。
JRubyは別にすごくない すごいのはJavaVM あれはバケモノ
起動が遅いスクリプト言語なんて
JVMは確かにバケモノだけど、jrubyはjrubyで十分凄いぞ。いっぺんソース読んでみるとよい。
Jrubyのソースを数年ぶりに読んでたもはや別物になっててワロタ
「すごい」の基準が、「ソース読んで」ってことは実装のことか? Ruby使いらしい基準だなw
バケモノとかもはや基準すらわからんな
Ruby/tkのデフォルトのフォントを変更する方法があったら教えてください Python/Tkinterの >root = Tk() >root.option_add('*font', 'FixedSys 14') 見たいにデフォルトのフォントを設定をしたいです 各ウィジェットごとに逐次フォントを設定するのは手間なので・・・(´・ω・`)
TkOptionDB.add('*font', 'FixedSys 14')
>>758 いや、readline 6.1 をソースから MinGW でビルド
>>764 mswin が pure win 用なのは分かる。
MinGW って MSYS とセットで使うケースが多くね?
782 :
779 :2010/07/20(火) 22:25:16
JRubyをCRubyに逆移植するとMatzRubyよりも速くなるのか
JVM上で起動しっぱなしにして動作させればな
起動が細いのはどっちも一緒じゃね? CRubyもRubyGemsてんこもりでフレームワーク使ったら、JRubyと大してわからんのと違う
>>783 のような考え方が出てくる理由がよくわからん
JavaよりもCは早いから、とか盲目的に信じてる奴は多い。 JVMのVMとしての性能がどんだけ凄いかわかってない。
この板、定期的にJVMやCLRがベターasmであるところのC言語で書いたコードより速いと言われるが、 判断できそうなベンチマークの結果や検証した文献すら張られない。 説得力がまるでない。
逆も同じだろw
javaは速い、処理によってはCより速いとかって、 雑誌とか技術系のサイトなんかで書いてあったりするからな。 そういうやつってどこかで書いてあったことを、また書きしてるだけだから、 そのソースが何であったのかなんて忘れ去られる。 最悪ソースなんてないデマかもしれんけどね。
わからないような皮肉を書く奴が悪い
.皮肉は逃げ道のためにあるのではない これは皮肉だと言えばなんとかなるという子供のような思考は早めに捨てろ
僻むなよ
頭のまわらなくなったおっさん同士の馴れ合いはN速あたりでやってくれ
>>788 同じC言語という枠内ですらVC6系と最近のgccやLLVM上のclangとじゃ性能が雲泥の差だけどな。
JavaにせよCLRにせよJITコンパイルされた瞬間にその時点で利用できる情報、環境をもとに
最適化可能なんだから所詮C言語かつ静的コンパイルという枠内でしか努力できない
"ベターasmであるところのC言語"を上回る*可能性がある*のは自明だろ。
そもそもほとんどCで書かれてるMatzRubyよりも、ほとんどがRubyで書かれてるRubiniusの方が速いわけで…… これもRubiniusがバックエンドで使ってるLLVMでJITが利用できるからですね
>>799 だれか録画してうpしていただけませんかね
>>800 毎年恒例KaigiFreaksによる動画がニコ動にうpされるでしょう。
>>781 > いや、readline 6.1 をソースから MinGW でビルド
それ使った単純なプログラムでも再現する?
> MinGW って MSYS とセットで使うケースが多くね?
cygwinやlinux、darwinでクロスコンパイルしかやってない。
> 同じC言語という枠内ですらVC6系と最近のgccやLLVM上のclangとじゃ性能が雲泥の差だけどな。 誰かclangでRubyをビルド出来るようにしてくれ
>>798 Rubyの高速化は、CとJavaの話とはまた別の側面がある
そもそも静的な解析がほとんど無理だから、
JITコンパイラを使った実行時最適化が相対的によく効く
rubytkを使ったコードをexerbで実行ファイル化する事って不可能ですか? exe化した物を実行したら例外吐いた・・・orz
Rubyみたいな言語を1から作るまでを本にして出してくれないかな。 入門書じゃなくてさ、本当にRubyみたいなのを作れるまでをかいてほしい。 途中、他の分野の知識が要るときはリファレンスを示してくれるだけでもいい。 3万円くらいまでなら出せる。
Luaならそんな感じの本があったような
lisp なら一冊か二冊。
本気で現在のレベルのRubyを作れるまで、というのは少々無理な相談だぞ。 前橋氏の本は見てみた?
RubyとかGaucheとか実装できる人になりたひ
>>802 Ruby以外で readline 使ってないからわかんない
(DLL じゃなくて h と a を直接使ってる)
けど、1.8.7 とか 1.9.1 だと問題ないんだよなあ
Rubyで作ったアプリケーションをexerbでパックして配布する場合のライセンスについて質問です 1.wxruby(0.6.0beta)を使用して作られたアプリケーションのライセンスは? wxrubyに含まれる"LICENSE"にはwxWindowsのライセンスに従えみたいなことが書いてあるような・・・ で、そのwxWindows Library Licence V3は原則LGPLでそのほかにLGPL回避の 例外条件があってバイナリでの配布?なら任意のライセンスを付加できるらしいけど Ruby処理系でバイナリの配布って???wxruby.soはバイナリだから例外条件に該当する? アプリケーションとしてはソースコードでしか配布できないからLGPLを 適用せざるを得ない? どう解釈したらいいのか・・・(´・ω・`) 2.Rubyに標準添付されている拡張ライブラリのライセンスを判りやすくまとめているところはありますか? yamlを使ったらいろいろ(stringioやsyck等々)ロードされるみたいだけどこれらのファイルのライセンスを 容易に確認する方法があったら教えてください ライセンスを確認していない物が紛れ込むとまずいので・・・ よろしくお願いします
>>817 A2 ruby のアーカイブを展開した中にある "LEGAL" ってファイルに書いてある。
>>817 答えは
>>818 なんだけど、大雑把に言うと openssl 以外は GPLv2 だと思えば OK
>>797 なるほど
動的コンパイルできるということは、実行時に環境に合わせて(例えばプロセッサやOS、その他アーチャン)
最適化できるってことか。
*可能性がある* のは自明だw
この板でこういう議論があるとき「*可能性がある*」を抜かして「〜は自明だ」いう人多かったからか
明示されて妙に納得したw
それはそれとして、C/C++アプリが各プロセッサごとに最適化オプションしかけたexeを配布しているけど、
それらを全部同じexeにして配布とかってできないものなのかな?
プロセッサごとに場合わけ処理とかはむしろ、昔inline asmとかでやってたよね?え、やってない?
今のMacは確か32bitアプリと64bitアプリ混在できたよね
matzさんって魔法使いなん?(´・ω・`)
魔法使いになる条件は、 30歳まで童貞だけでなく、オナニーどころか夢精も含めていちども射精をしない、だ。 おまえら、オナニーしてるだろ? だから30歳童貞なのに魔法が使えないんだよ!
gem install yome --age '<20'
夏だな…
$ gem search orenoyome --age '<20' --remote 指定されたorenoyomeは見つかりません。
私の嫁が最近頻繁にgem updateされ、バージョン番号が増えているようなのですが どうすればよいでしょうか
gem installインストールした、kanojyoとyomeの依存関係が解決できず同時に実行できません お互い環境を干渉することなく切り替えて実行するよい方法はありませんでしょうか?
どっちかはgemじゃなくてaptとかyumで提供されている方を使う。
>>827 yomeの依存関係を何とかして書き換えて
kanojyoと反発しないようにできれば、同時に実行できます
これがどのくらい困難なのかは、あなたの技術によります
>>829 ありがとうございます
kanojyoの方が新しいgemのようなのでできれば優先させたく思っています。
思い切って、一旦yomeをuninstallしようとしたのですが、
なにかロックされてできなかったので一旦常駐していたyomeを殺したところ
うまく外せました。
kanojyoの方が新しい機能をサポートしているようで楽しみです。
ただ、他にもgithubをあさって類似gemを探した所
real-kanojyo
jk-kanojyo
otokono-kanojyo
などいろいろ派生物があるようなので目移りして困っています
githubにアカウントもっているならkanojyoなんて簡単に作れるだろw
さすが分散リポジトリやで。 嫁のクローンで自分にカスタムしほうだいや!
LinuxでRubyのなんちゃらを開発してる人ってさ、Gitのクライアント何使ってんの? まさかコマンドラインで頑張ってるの?
>>833 俺はLinuxとcygwinでgitのコマンドラインとGUIの補助ツール使ってる
さすがにgit log オプション色々とかだとツリー表示できてもつらいのでgitkも使う
Windows環境も使っていて、TortoiseSVNとかTortoiseHgの便利さは知っているから
gitにもちゃんとしたそういうのがあればいいんだけどね
皮肉なことにそういうGUIが発達しているWindowsでは、
hgやgitはマルチバイト対応が腐ってるし、結局cygwinなりで実質コマンドラインでしか使えない
WindowsだとgitkなどのGUIツールも不安定だし、何故か文字化けするし
UTF-8のLinuxなら大丈夫なんだけどね
TortoiseSVNはマルチバイトがらみが安心して使えるようになるまで3年はかかった記憶あるけど
gitや周辺GUIツールではどのくらいでなんとかなるものかねえ
この辺の話はバージョン管理スレとかで聞いたほういいよ。
あっちはコマンドラインで使っている人も多いだろうし、釣れると思う
バージョン管理システムについて語るスレ6
http://pc12.2ch.net/test/read.cgi/tech/1270640436/
836 :
817 :2010/07/26(月) 02:34:35
レスありがとうございます
>>818 なるほど。LEGALを見ると・・・LEGALに特記してある物以外はRubyライセンス(=COPYINGファイル内)
と言う認識で良いのかな?
>>819 英語はさっぱりな自分だけどLEGALを見てもそのように書いてあるようには見えないのですが・・・
#wxrubyはwxWidgetsスレで聞いてみます
>>834 あっちでは鬼子のbzrの話もしてあげるのがいいよ
早期から日本語エンコーディング考慮済み言語のRubyには
マルチバイト軽視はあんまり馴染まない気がする
>>836 >
>>819 > 英語はさっぱりな自分だけどLEGALを見てもそのように書いてあるようには見えないのですが・・・
まず、LEGAL を見ればわかるとおり、Ruby のコア部分には非 Ruby's License な部分が
それなりにある。そういう部分の大半は BSDL なので、狭義の Ruby's License にある
「プログラム名を変えたらなんでもあり」条項とかを使っても結局は BSDL の範囲内になる。
一方で、BSDL として全体を扱えるかというと Ruby's は BSDL と矛盾するので、そうもいかない。
ところで、GPL は感染があるので、例えば GNU readline 6 以前は GPLv2 なので、
readline をリンクさせた状態で配布する場合は GPLv2 として扱わないといけないのだけど、
Ruby は Ruby's or GPLv2 なので GPLv3 はリンクできなかったりする。
(ダイナミックリンクの場合、リンクしてるのは誰なんだとかあるけど)
結局のところ、細かいこと考える必要がないなら GPLv2 として扱っとけば OK
840 :
デフォルトの名無しさん :2010/07/26(月) 22:25:02
>>838 質問
opensslをリンクして配布する場合は、readlineとiconvをリンクさせない
ようにして、Ruby'sにすればOK?
>>839 TortoiseGitが推奨するmsysgitはマルチバイトがダメダメで、その辺なんとかなるCygwin gitには対応してない状況
TortoiseGitのIssueでもその手の報告はけっこうされてて、msysgitの対応待ちという状況
Cygwinのgitへの対応は今のところしないみたい
ようするに日本語フォルダとか日本語ファイル名使わないなら、何とかなる
多分Rubyだけで使う分には関係ないと思う
日本語ファイル名のドキュメントやリソースをぽんぽん放り込んでたSubversionリポジトリをgitに変換したり、
git-svnで使うとかしない限りは
842 :
841 :2010/07/27(火) 02:09:56
戯言を書いていたら、
>>834 のスレにUTF-8対応版のパッチが来てたw
比較的新しく生まれたソフトでマルチバイト対応がダメダメってどういうことなのよ。 この世には英語しかないんだぜ!HAHA!て人が作り始めるとそうなるのかな?
>>840 readlineはそう。iconvはLGPLなのでリンクしても大丈夫
なんでRubyはreadlineなんてウンコをくっつけて配布してるんだろ
>>845 Ruby本体が配布してるのはあくまでreadlineのラッパーであって、readlineではありません
日本 Ruby 会議 は温泉入りますか?
>>847 サンプルコード書いてあれば勝手にこっちで考えるからあんま気にしないでよし
英文だけで長々と書いてあるとめげる
英語に自身がないなら日本語も併記すればいいのに、 それをする人って少ないよね。
>>850 日本語文字が書かれてるとそれ以降の表示がぐちゃぐちゃになるブラウザやメーラが…
ro-majide kakeba iindayo guri-ndayo
>>851 メーリングリストは悩ましいんだよなー
文字エンコーディングは何で送ればいい? UTF-8?
なにかどこかのmlを…
よーしパパ、夏休みの自由研究でGitをRubyで実装しちゃうぞ〜
>>851 日本語説明文を添付するんだ
ja_JP.txt とかいう名前にしておけばたぶん大丈夫
>>855 こっちでいうのもなんなんだけど、彼らが真面目にgitのソース解読してる間に
>>834 のパッチ作った方はcygwin 1.5のころのokiソフトがUTF-8に対応した実装を参考に
アドホックに対応してて面白いw
>>856 志村、Grit,Grit!
GitHubが採用してるから、実は世界で2番目ぐらいに使われてる実装なんですぜ?
それ、べつにRuby実装というわけじゃなかろう そんなに簡単に移植出来るなら、文字エンコーディング対応版ももっと あっさり出てきてもよさそうなもんだ
>>859 Griは結局gitコマンドが必要ってことはAPIを提供するラッパーか
文字エンコーディングが解決できるわけじゃないな
とくに問題になっているWindowsだとRuby側が(ry
>>860 >それ、べつにRuby実装というわけじゃなかろう
いや、Gitって設計は無茶苦茶シンプルだから、git-webとかgit-svnみたいな周辺部はともかく、本体の実装は簡単なんだよ。
ここに来るような人たちなら、一日あればとりあえず動くものをつくれるんじゃないかな?
>そんなに簡単に移植出来るなら、文字エンコーディング対応版ももっと
>あっさり出てきてもよさそうなもんだ
実際gritは(正確にはgritも)日本語通るよ。
Windowsが絡んでGitで日本語が通らないって話になるのは、
・Gitはファイル名の情報をバイト列として保持しエンコーディングは利用者間の合意に委ねている
・Git界隈ではUTF-8が事実上標準
・Windowsでのメジャー実装で各種GUIツールが依存しているmsysGitが
?ファイル名のエンコーディングをANSI決め打ち
って状況が絡んでるからだし。
Gitユーザの大多数であるLinux系ユーザはUTF-8使ってるからそもそも困ってないし、
WindowsでMSYS使うような人達は管理対象のファイル名にASCIIしか使わないし、
Windowsで日本語名のファイルを扱おうとしてツール選定するような人達は「今使えない」という事実をもって要望とかするでもなく候補から外すし、
で結局、需要が全然無かった、ってのが実態でしょ。
Rubyの話に戻すと、もし誰かがgritなりでmsysGitの互換品作ってたら、
Windowsでは天下取れてたかもね。?
>>861 一応、pure rubyな実装もあるみたいだけどメンテされてないみたいね。
>>862 おお、バージョン管理スレでもないのによいまとめ。
> Windowsが絡んでGitで日本語が通らないって話になるのは、
> ・Gitはファイル名の情報をバイト列として保持しエンコーディングは利用者間の合意に委ねている
> ・Git界隈ではUTF-8が事実上標準
> ・Windowsでのメジャー実装で各種GUIツールが依存しているmsysGitが
> ?ファイル名のエンコーディングをANSI決め打ち
> って状況が絡んでるからだし。
Gitユーザーの状況はまさにそのとおりだと思う。突っ込みようがない。
> Rubyの話に戻すと、もし誰かがgritなりでmsysGitの互換品作ってたら、
> Windowsでは天下取れてたかもね。?
それに関してはSubversionを踏まえると、TortoiseSVNの安定性だな。
msysGitだけだと難しいよ。
ま、TortoiseSVNは初期はOSのshell巻き込んで落ちるわ、マルチバイト対応gdgdだったりかなり酷かったが、
時間を得てかなり安定した。
あとは、マージがgitなんかと比べたら微妙とか確かに問題あるけど、
CVSの欠点が解消されていてかつ(今思うと変なところもあるけど)シンプルに使えたのが良かったね
それとは別にTortoiseHgはかなり使い勝手良かったな。いろいろな場面でdiffが同時に見られるだけでもぜんぜん違う
TortoiseSVNを踏襲しているようにみえるし、あれは見習ってもいいわ。
ぶっちゃけ、この話題(全部GUIでやろうとしたり、マルチバイト対応)は既存のGitユーザーにはほとんど関係ないな。
ここで長々やるのもあれだけどさ
あ、gitでもgit commit -v とか、gitkでログと一緒にdiff見られるのはわかってるよ。 TortoiseGitだとできなかったりするんだよね
無理やりRubyの話に戻すと、正規化とかMacの問題は置いておいて、 gritみたいな元のツールがUTF-8なりで動かすの前提でそれが環境依存で問題になっているものを Windowsで動かそうとするとそろそろ(MSでいう)Unicodeでの入出力の扱いとかなんとかせんならんのではないかな。
Windowsのロケール日本語でUTF-8になれば無問題なんだがなぁ
>>865 1.9.2でそれなりにそういうのが入ってるよ
子プロセスについて教えてください。 子プロセスを起動し、親プロセスのstdin, stdout, stderrを子プロセスに渡すことはできますか。 すごい初心者な質問かもしれませんが、よろしくお願いします。
何もしなくても継承されてるよ。(同じところから読み書きする)
akinatorにまっつんつんがいてワロタ
Ruby 1.9.2-p0 って今日の予定だよね? まだかな、まさかまた延期なのか
約束を守らない男の人って…
メインリリースエンジニアはyuguiさんじゃなかったっけ?
1.9.2はまめさんじゃね?
予定は未定なのさっ。 それに遅れたって宇宙から見れば何の影響も無いじゃないか!
あー、やっぱりリリースされなかったか まあいつものことだから期待はしてなかったけど それでも8月中旬の正式リリースだけは守って欲しいもんだな
素朴な疑問なんだが、なぜ守れないのに予定を出すのだろうか 「業務上で(1.9.1ではなく)正式リリースの1.9.2がどうしても必要」 という企業があるなら分かるんだけど そうでないなら、最初から「予定は未定」でいいんじゃないか? と思うんだが…… 何か予定がないと困ることがあるんだろうか
モルモン教に収入の10%収めるときに 作業実態のようなものがあったほうがいいからじゃないか?
>>878 実際昔はそうだったよ。
それじゃよろしくないってことで今の形に変わったわけだし、
正直昔のやりかただったらリリースレベルに達した1.9.1すらでなかったのではないか、などと。
実際予定より数日遅れ、とかいう次元まで推進出来て、
しかも、「予定通り行かないとはどういう事か」と批判する流れになるあたり、
逆に考えればそこまで信用されるレベルに来たということなわけで、
昔を知ってる人達からすれば感無量なんじゃないかな。
>>880 数日っておま、何度延期してると思ってんのw
日じゃなくて年単位で遅れてるだろw
締め切り日なんて決めなくて良いじゃん。 チケットドリブンにして、バージョン萌えのリリースは、あれとこれとそれのツンデレチケットを消化したとき、とか決める。 ただし、このままじゃダラダラするので、 ・チケットに3段階くらい(かんたん1、ふつう2、むつい3)点数を設けて、 バージョン萌えのリリースまで総点数は1000点とかにして、 1ヶ月に100点は消化するペースを保つようにできるだけがんばる雰囲気を醸し出しつつ何気なくやってれば、「まできできるよ!」「できませんでした><;」とか言うことはなくなんだべ。 とかおもっちゃったんだけどどうなの?
freebsdより遅れるんだ
なんか適当にこんなもんだろと日付打ってみただけっぽいんだけど。
>>881 モルモンの教義だと
霊的に成長し、昇栄を果たすことで人間は不死不滅の肉体をも手に入れて神になる
のですよね
一夫多妻が神聖な原則なんですよね
そういう部分はやっぱり異端ですよね
あの辺のスケジュールは、Ruby自体の開発者に向けて「この頃までにこれこれをやっておけ」というリストで、 対外的なスケジュールではないよ。 対外的なスケジュールはmatz時代なら「12月25日」だったし、 1.9.2ではRubyKaigi前に出すってのは言ったっけ? ruby-devやruby-coreが公開されているからって、そこがアナウンスだと思われても困る。
ruby会議、去年はチケットは瞬殺だったけど 今年はつくばということもあり、まだ残っているな。
>>885 いや、お前の言ってることが意味わからんw
リリーススケジュールが出た後の話って言ったって
その前だってリリーススケジュール出して延期してるんだが
何で直近のスケジュールだけ考慮して数日とか言ってるのか
それなら、いくら遅れたってすぐにスケジュール書き直して
発表したら常に数日遅れになるじゃねーかw
Ubuntuみたいに 1.9.10.4 LTS(長期サポート)とか1.9.10.10みたいに6ヵ月後との定期リリースはどうか
1ヶ月前の7月2日のRC1のリリースの時点で > Ruby 1.9.2は8月初旬にリリースされる予定です。 とアナウンスされてるのに、今さら騒ぐ意味がわからん。 あと締め切りの意義がわからんやつは「締め切り効果」でぐぐるとよい
>>889 クレジットカードが無いから買えない……
コンビニ決済とか、当日券とか、用意してくれれば
スケジュールやりくりして行くんだけどなあ
締め切りに敏感になったのは国の予算使うようになってからだろ
クレジットカードがない(持とうとしない)という人種が未だに理解できない いまどき学生だって JACCS + VISA カードとか生協で作れるのに まぁこの話題は荒れるのでここでするつもりはないが、 本当に ruby 会議に行きたいのなら、例えクレジットカードが嫌いでも作るべきだ。 目標を得るためには、何かを犠牲 or 我慢したり、一線を越えないと
>>892 今までのレスの中で一番頭悪いレスしてるな
p0のリリース予定が7/31でその話をしてるのに
日本語も読めない奴は無理にレスしなくていいぞw
>>895 本気でどうでもいい話だが、新卒での就職を逃して無職状態になるとメジャーなカードはまず作れなくなる
カード持ってない人で就職やばい人はメジャーなカードを学生のうちに作っておくべき
>>898 あーあ、事実を指摘したら馬鹿がファビョちゃったwww
日本語読めない馬鹿は無理にレスしなくていいんだよw
>>899 多分
>>892 の人は31日のリリースと8月のリリースを混同してるから
その辺で許してやれ
ファビョたとか言い出したぞこの馬鹿
まあ900近くもレスがあってその中で一番頭が悪いとまで言われたら ファビョるのも無理はない
>>901 馬鹿が馬鹿って言われたくらいで切れるなよ
事実なんだからしょうがないだろ
まあ、お前が日本語読めないのは同情するがな
ヽ(´ー`)ノ
何この納期が遅れることが明るみになったときの現場みたいな空気。
ruby-listも読みなれてきたんだけど、次はどこに行けば良い? ruby-core?ruby-dev?
>>892 は文章の書き方からして
プライドだけは高そうだから
自分の間違いを隠そうと必死なんだな
スレを荒らして話をそらし自分の恥部を
うやむやにしようとするのは
こういったタイプの常套手段だ
>>897 なるほどそういうケースもあるか。失礼した。
>>906 が何をしたいかによる。Ruby自体の開発をしたいならruby-devとruby-core。
Rubyを使って開発がしたいんだったらRailsのMLとかそれぞれのを
>>908 馬鹿なくせにプライドだけは高いんですねwww
>>887 >一夫多妻が神聖な原則なんですよね
その辺の面白教義はユタがUSAにユタ州として加入した時に軒並み放棄してんじゃん。
>そういう部分はやっぱり異端ですよね
今、モルモン教を異端認定してるとこってどっかあったっけ?
いや、俺もモルモン教はキリスト教とイコールじゃねえと思ってるんだけど、
「XXがモルモン教を異端認定した」ってネタでソース付いてる話が見つからないんだよね。
>>900 > 多分
>>892 の人は31日のリリースと8月のリリースを混同してるから
え、同じだよ
何と何のリリースだと思ったのか興味がある
rubykaigi は一人でも楽しめますか?
楽しむつもりなら楽しいんじゃね? 場合によっては友人を増やすチャンスもあるかも知れないし。
>>916 原材料表示やカロリー成分表でも眺めて楽しんでください
>>920 >三大異端という言葉で
この行は消し忘れ
そりゃフランスじゃそうだけど、 たとえばユタ州じゃ過半数だぜ?
日本では統一教会は別に異端でもないよね 国が違うというのはそういうこと
ユタ州ってモルモンのメッカじゃねーかw
>>923 ようするに、日本の統一教会のようなカルトだと
統一教会も三大異端の1つですなw
おまいらほんと好きだよな。 まぁたまにする意地悪な批判癖はモルモン教由来かな?とか考えちゃったりするけどね。
>>926 サンプル数が1で一般化するとか
暴挙以外の何者でもない
バイアスというか思考停止の類だ
>>923 日本でも福音派(キリスト教原理主義)はそれらを異端と見なしている。
一般にはキリスト教系新興宗教と見なされることが多いんじゃないかな。
>>928 日本は異端審問をしてない
それ以上の意味はないはず
日本のどっかの宗教団体が勝手に異端認定してても関係はない
>>920 異端とカルトは全く別の概念じゃん。
異端を認定出来るのは「正統」とされている側なわけで、正統性からすると
正教かカソリック教会で。実際過去に余所を頻繁に異端認定してたのは
カソリックだけど、今のカソリックって異端認定やめちゃってるわな。
で、カルトかどうかを決めるのはそれぞれのところでの政府だよねえ。
上げられてる例でも認定してるのはフランス政府だし。
ttp://d.hatena.ne.jp/lovelovedog/20080112/cult >キリスト教三大異端というとアリウス派、ネストリウス派、単性論みたいなのを連想してしまいます。
>いまやローマ・カトリックもコプト教会なんかと交流したり、ユニテリアンなどもあるし、
>異端は「考え方の相違」程度のものになりつつあるかもしれないです。つまり異端とは教義上の問題ですね。
>「カルト」はまた別問題で、反社会的な宗教集団。教義上の問題とはリンクしない。
>ゆえにおっしゃる通りその文脈では「三大カルト」という表現がよいようです。
>知り合いのギョーカイ人(つまり聖職者)に聞いてみました。
>バチカンが「カルト」認定するということはないそうです。
>つまり反社会的行動を取る宗教団体の問題は反社会的行為が問題なので、その国家の世俗法が決める問題で、一宗教団体が決めることではない。
>しかし「異端」という事については個別に言及が為される場合はあり、それは例えば改宗者の問題など、
>秘跡に関わる問題等で言及される場合はあるが、いわゆる「異端リスト」的なものを公式に発表してはいないということです。
>つまりまぁ社会問題が起きた場合に個別になんらかの形で公文書で言及されることはあっても、
>ひとまとめに「三大異端」などという声名などないということです。
>「異端」というのはあくまでも教義が異る場合だけですので、それらに関わる当事者でない第三者からするなら、
>単なる目糞鼻くそを笑うだけのことに過ぎないでしょうね。
つまりどういうことです?
異端、異端とヒートアップする子がその実 異端とカルトとの区別すらついてなかったでござるの巻
つまり、モルモンは各教会から異端とされ、カルトでもあるって事だろ
http://ja.wikipedia.org/wiki/カルト 1995年12月、フランスの下院(フランス国民議会)で採択された報告書『フランスにおけるセクト』は
「通常の宗教か、セクト(カルト)か」を判定する国際的な指針の一つとされている。
この報告書は、調査委員会の委員長の名前を取って『アラン・ジュスト報告書』ともよばれている。
この中で、セクトの本質を「新しい形の全体主義」と定義した上で、
以下のように「セクト構成要件の10項目」を列挙している。
精神の不安定化
法外な金銭的要求
住み慣れた生活環境からの断絶
肉体的保全の損傷
子供の囲い込み
反社会的な言説
公秩序の攪乱
裁判沙汰の多さ
従来の経済回路からの逸脱
公権力への浸透の試み
以上の項目のいずれかにあてはまる団体をセクトとみなしている[7]
ユタ州はモルモン教徒が開拓した土地でモルモン教徒が多いのは当然 そのユタ州、モルモンのメッカであると同時に、マルチのメッカでもあるんですよね ユタ州に本社を置くマルチ商法(MLM)企業の一覧 エオラ・インターナショナル エンラインベン・インターナショナル ザンゴ シナジー・ワールド・ワイド タヒチアンノニ・インターナショナル デスティニー・ワールド・ワイド ニューウェイズ・インターナショナル ニュースキン ネイチャーズ・サンシャイン・プロダクツ フォーライフ・リサーチ ヤングリビングエッセンシャルオイルズ フォーライフ・リサーチ フォーエバー・リビング・プロダクツ ユサナ・ヘルスサイエンス アジェル シズル トリヴァニ モナヴィー ユニシティ・ジャパン
つまりじゃねーよ。手前のブログでやってろ
>>934 だからその「各教会」って具体的にどこだって訊かれてるんじゃねえの
バチカンは異端認定してないって言ってるわけだし
> ユタ州はモルモン教徒が開拓した土地でモルモン教徒が多いのは当然 > そのユタ州、モルモンのメッカであると同時に、マルチのメッカでもあるんですよね 日本にもマルチ商法はたくさんありますね。 マルチ商法がたくさんある、ということを言い立てて、あなたは何がしたいんですか?
これいつまで続くん?興味ないんだが。
さぁ? 日本人にはカトリックとプロテスタントの区別すらあいまいだったりするから、 ごく普通に書いてるんだろうなぁという記述まで、必死になって「証拠!証拠!」と 言ってしまうようなおかしな人だから、延々続くんじゃないかと思うよ。
オーソドックスでもカトリックでもないところが「異端」なんてキーワード出しても 「お前が言うな」か「はいはいワロスワロス」だよなあ 正統性の意味で余所を異端認定する権利があるのは古代教会の継承してるオーソドックスとカトリックだけだし、 実効性の意味からしても「異端認定」する意味があるのはバラバラなプロテスタント各派と違って教皇の下でまとまってるカトリックぐらいだし。
オーソドックスもカトリックも、余り関係ないと思う 人が神になるだの、一夫多妻だの モルモンが唯一真の生きている教会として他の教会を「サタンの教会」としたり とにかくモルモンは異常 キリスト教を信じようと信じまいと、眉を顰める教えの数々 信じる、信じない以前に これでもかというくらい反社会的なのがモルモン
スレ荒らしも十分反社会的だけどなw
こんな議論ぐだぐだやっているから python厨にバカにされたり先を越されるんだよ
>>944 >人が神になるだの、
matzは神を自称なんてしてなくね?
>一夫多妻だの
matzの奥さんは一人しかいなくね?
>モルモンが唯一真の生きている教会として他の教会を「サタンの教会」としたり
matzとogochan(クリスチャンで牧師だった時期あり)が信仰で揉めたなんて話聞いたことなくね?
hyukiにおかしなこと言ったりしたことも俺の知る限りないな。
カルトの宣教師してたなら、カルトに入信させたことで人生狂った奴はたくさんいるだろうな 入信させた本人だけじゃなく、一族巻き込んでひどいことになるからな・・・
スレ住人巻き込んでひどいことにしておまえは満足か?
951 :
デフォルトの名無しさん :2010/08/05(木) 10:19:53
デビィ夫人は、インドネシアのスカルノ大統領の第三夫人
北朝鮮に要人として招かれたりしているあの方ですか
>>949 人生狂った奴って具体的に「誰」?
それとも949の妄想なの?
>>953 社会人じゃねーの?
宗教とか勧誘とかで悪い噂とか聞いたこともねーの?
ちょっとくらい調べてみようとも思わねーの?
「カルト 一家崩壊」とか「カルト 一家崩壊 モルモン」とかぐぐるくらい出来るだろ
最近はぐぐれば、いくらでも望みの情報が出てくるからなw
正しい情報とは限らないけどな 世間でも全部鵜呑みにするバカが急増中
なぜカルトが問題視されるのか なぜカルトが忌み嫌われているのか なぜモルモンがカルトと言われているのか そういったことをはなから無視して 嫌な情報は正しくないとか信じる者が馬鹿とか 恥ずかしくないのですか?
スレと関係ない話を延々続けてスレ荒らし。 その自分のおこないは棚に上げて、 問題視される忌み嫌われているカルトと言われていると連呼。 恥ずかしくないのですか?
まぁRubyに纏わる話だし、荒らしってこともないだろw こういう話題もありじゃね?
ないだろう
論外
ume w
>>954 だからmatzが宗教で具体的に誰の人生を狂わせたのか早く言えよw
結局954の妄想止まりなの?
ume w
パプテスマ埋めw
バプテスマな
CentOS上の1.9.2で LANG=C RUBYLIB=/tmp/日本語 ruby -e 'p 1' とやると帰ってこなくなる CharNextがバックしないようにすると解消する
LANG=Cなら仕方ないな
filesystem Encodingってlocale依存なの?
ファイルシステムが依存するシステムでは当然rubyも依存する
UTF-8がなんでFile System Safeと呼ばれたりするかって話だよな
RubyってPerlのCPANみたいにモジュールを共有するアーカイブってあるの?
なんかいろいろショッキングな発言を今見た CPANのような完成度はないと回答
rubygemsが一応そうだけどねえ
CPANのような完成度はない
CPANのどのあたりが完成度が高いのかわからん 相変わらず具体性がないな
gemが糞なことは同意
CPANは確かにすごいし、それこそがPerlの今の存在価値だと思うけど、 過去の遺産とどう向き合うべきかってのは、Perl6で直面する課題でもあるよね。
CPANがすごいってのは、規模だけの話でしょ? 玉石混淆なのはどれも同じだよね。 マニュアルも微妙なものも多いし、依存関係やPerlのバージョン問題で 使えなくなる目に何度も合うし。 現在インストールされている一覧がパッと出せないし。 コマンドの使い勝手だけの話なら、gemの方が使いやすいな。
CPANの仕組みを言ってるのか、 CPANに登録されているライブラリーの品質を言ってるのか はっきりしてほしいのだが。 過去の遺産とかって各ライブラリーのことだよな それって各々ばらつきがあるからgemとかCPANとかで ひとくくりにしてほしくないのだが
CPAN使いこなす前にPerlからRubyに移行しちゃった口だけど、 両方使っている人いたらどんなところがいいか教えて欲しい。 Perl使いでCPANがあるから使っているという人をよく見かけるので。 CPAN全然使ってなかったから俺も移行できたのかもしれないしそうでないかもしれない。 例えば今のRubyGemsの不満点 ・依存関係(Bundlerで解決?) ・ネイティブ拡張がWindowsでいれにくい Linuxはコンパイラとかツール郡をパッケージで一発で入れられるから楽だけど WindowsだとOneClickInstallerのDevKitとか使えばいいのかな? ・gemインストール時のドキュメントの生成がクソ遅い gemrcに gem: --no-ri --no-rdoc 書いて対処できるけど、結局生成されなくなるわけで ・検索(gem search --remote)が遅い ・Windowsでrequire 'rubegems'して何かgemをrequireするとやたら時間がかかる faster-rubygems、faster-require、faster-gem-scriptなどである程度緩和できるよう Windowsの問題は仮想環境使えば別にいいんだけどね と書いてみて思ったが、これがCPANで解決できたら、乗り換える、というものでもないな 個々のライブラリの話なら、 CPANどころか圧倒的にユーザーいるphpの方(PEARだっけ)がよくてもおかしくないな。しらんけどw
群
さて、8月初旬最後の日だ 今日こそ1.9.2出るんだよな?
985 :
デフォルトの名無しさん :2010/08/10(火) 10:46:52
986 :
デフォルトの名無しさん :2010/08/10(火) 10:48:08
次スレのスレタイは Twitterについて Parat 41 でいいよね?
いや RubyGems について Part 41 にすべき
Railsスレの自動爆撃がこっちのもきたのか、おい
Ruby on Rails について Part 41 きぼう
>>990 やめろw
CPAN vs RubyGems Part 41
で
おまいら次スレたってないから埋めるにはまだ早いですよ
Rails スレの爆撃は、密かに自分にとっては勉強になっている p.s. 先週の JRuby トークセッション、面白かったよ
数年前の古い記事、同じ記事をどかどか爆撃されて どう勉強になるんだよw本人か?
Rubyについて Part 41【CPAN vs RubyGems】
勝てるわけねーだろCPANには、開発者の数が強みなんだから
1.9.2のlibrubyって1.9.1なんだっけ? ruby-debug19は再度コンパイルしないと動かないんだけど。
/\ </―‐ヘ> ⊂二二二( ^ω^)二⊃ | / ブーン ( ヽノ ノ>ノ 三 レレ
. / / / l: / l ∨i 、 | l│ / イ ,イ. l ト、ヽ / | :l :| | l | | l_メ、」_,;./l L l V ∧ / :|/ ハ. ト、 | ト. |.____ ヽ l´ヽ{ _⊥イ イ / / / l/⌒ヽ | | ヽ | 、i┘::::i \ | r┬┬‐┬ァ V ,∧. ,' ´ レ ヽ! ゝ- ' \l i,.┘:::::iノ / ,/〉│ :| { . 7/l/l/ 、 `'ー‐ ' ∠≠r'ノ:jノ :| | λ /l/l/l ∧‐'.:|:::| ハ ', なにこのスレ・・・ `、 ヽ ,/| ::| :|:::| ./ ヽ_> ` = 、 ,.イ∧'|:l.:/l:::|´ 見たことない単語だらけで意味が分からない `>-r =ニi´、.,_`::: |:| { |:::l _,.イ´ヽ.7 / /:\;八:V:ノ /7:::::! ○O'´ /::::::::/ヽ
V V (´・ω・`) うさちゃんピース
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。