1 :
デフォルトの名無しさん :
2008/03/02(日) 23:03:46
2 :
デフォルトの名無しさん :2008/03/02(日) 23:05:25
安いレンタルサーバーでもカンタンにrubyのcgiが作れるライブラリかフレームワークってありますか?
その安いレンタルサーバーとやらがRuby使えるようにしてれば 好きなRuby用のライブラリやフレームワークを使えるよ。
namespaceとかの導入はRuby2.0になるのか・・・ やっぱMatzはM$でみっちりエンプラを仕込まれたほうがいいんじゃね?
>>7 namespace(クラス)の位置づけはどうなるんやろ?
moduleの親か子か親戚か?
>一般的には、記号の多さは可読性を落とす気がします ここで読む気失せた
>>10 はしょせんJava脳でしかものを考えられない人の浅い考察だよね。
それに比べるとRuby言語そのものより、ruby実装のお粗末さを的確に
指摘したZedの指摘には納得できる。
ttp://www.cio.com/article/print/191000 ・IOとThreadとGCが腐ってるから巨大なデータを扱えない。
・まともな画像処理ライブラリがない。RMagicKはメモリリークしてる。
・数値処理が遅い、遅い、遅い。
・オレオレDSLが作りやすすぎてヤバい。
・エンタープライズ用途ではRubyはぜんっぜん使えない。
disってるように見えるけどこういうのは直せるバグだから、実はrubyへの期待の
現れなんだと思うな。Zedはツンデレ。
>>12 > それに比べるとRuby言語そのものより、ruby実装のお粗末さを的確に
> 指摘したZedの指摘には納得できる。
そうか?
> ・IOとThreadとGCが腐ってるから巨大なデータを扱えない。
> ・まともな画像処理ライブラリがない。RMagicKはメモリリークしてる。
このへんは実装だけど
> ・数値処理が遅い、遅い、遅い。
> ・オレオレDSLが作りやすすぎてヤバい。
数値処理が遅いのは、なんでもオブジェクトという言語デザインに
よるし(ライブラリで解決しろと信者は言うだろうが)、
DSLが作りやすいのも言語の特性じゃないか?
> ・エンタープライズ用途ではRubyはぜんっぜん使えない。
これは指摘というより結論では?
12のは適当な要約なんでURL読んでね♥
Rubyでソフトウェアテスト利用するのにお勧めの環境とかライブラリとかある?
>>15 テストの知識がきちんとあるかどうかに依存する
>>16 じゃあ、無い人用と有る人用で
お勧めを教えてください。
選択肢なんて実質「Test::Unit + ZenTest」か「RSpec」の2択しかないんじゃね どっちもテストの知識は普通に必要だな(w というか、初心者スレでも言われてたが 「Rubyで学ぶソフトウェアテスト入門」みたいなのは需要があるような気がするんだが
19 :
デフォルトの名無しさん :2008/03/04(火) 18:36:53
256倍の極道編がRubyUnitの本
>>13 > 数値処理が遅いのは、なんでもオブジェクトという言語デザインによる
同じ方針の言語の間でもぶっちぎりで遅いんですが、何か?
Rubyがクソ遅いのはMatzの勉強|調査|力量不足のせいで方針の問題は
皆無とはいわんがわずかだよ。
ちなみに同じ方針の他の言語って?
matz ruby が遅いのと言語が遅いのとは別の問題だろ?
>>20 Rubyでテスト始めようと考える人には粒度が問題になると思う
テストで検証するためだけに途中の値を保存するインスタンス変数や細切れのメソッドを作る可能性が大だ
>>25 いやそれ別にRuby特有じゃないし
ローカル変数に代入された値のテストはどうやってやるんだろうとずっと思ってた
「早く次の行を書きたいが相当するテストを先に書かなければならんわけで、でも値をspecファイル側で読み出す手段がない」みたいな
# テストが終わったら消す
attr_reader ……
を大量のインスタンス変数に対して書く羽目に
>>26 そこまでテストで確認するの?
基本的には外部から見える振る舞いのみを書くのが原則なんじゃないの?
俺がTDDのテストの場合と単体テストとごっちゃにしてるのかな?
>>27 > 外部から見える振る舞い
それだと本質的にはアプリケーション実行の最初と最後だけの
Hoge.new.run == 42
だけしか試せないとかそういう事態にならんか
プログラム途中のインスタンス変数やメソッドが外部からほいほい参照可能であること自体がかなり変
>26 こんなことを良くやってる。 class Node public *(private_instance_methods.each do | i | i = i.to_sym end ) public *(protected_instance_methods.each do | i | i = i.to_sym end ) end >27 内部のロジックを組んでる時は、内部の挙動を確認しながらやると判りやすいんよ。 基本的に最小限のインターフェイスしか曝さないから、内部の挙動が全然判らないのは良くあることだし。
30 :
デフォルトの名無しさん :2008/03/05(水) 00:19:02
Rubyの生産性は、VC#にかなわないね。 VC#のIntellisenceが便利すぎる。 RubyもVisualStudioに含まれればいいのにな。
「ふつーの」スクリプトに対するrspecファイル晒せやオラ、と思うことはなくもない マッチャだかマッチョだかいう個々の文法はマニュアル見るからいいんだよ
スクリプト作ってる最中の最終行あたりで 変数の値を固定したり入れ替えたり一時ファイル読み込んだりして試してるアレを テスト用別ファイルとして時系列に全部書く、というのがテスト駆動 という説明を受けて感心した俺
Javaが多かったのですが、Rubyはじめました。 鉄板の、Ruby IDEてありますでしょうか? とりあえず、RadRailsのEclipse Plugin評価してみます。
>>33 ・・・RubyのIDEて、だいぶカオスな状況でつね^^;
Ruby は Emacs か vi で書くものでつよ
37 :
西 和則 :2008/03/05(水) 11:27:52
>>36 >>29 が本当にやりたかったことは、今のRubyでフツーに書くとこうだろう
たぶん、Array#mapを知らない時代に書いてそのまま使いまわしてるんだと思う
> public *(private_instance_methods.map{|e| e.to_sym})
または
> private_instance_methods.each{|e| public e.to_sym}
irb> Array.private_instance_methods.size
71
irb> Array.public_instance_methods.size
118
irb> class Array
irb> public *(private_instance_methods.map{|e| e.to_sym})
irb> end
irb> Array.public_instance_methods.size
189
irb> Array.private_instance_methods.size
0
>>39 リンク先で思いっきり否定されてるじゃねーか
ある程度慣れるまでは自己流ででもテスト書きまくったほうがいいと思う テストの正しい書き方がわからないからスクリプト書けませんとか本末転倒 スタイルや順番の矯正はあとでもできるわけだし(できないかもしれないけど)
Delphiは同一ファイル内なら他クラスのprivate, protectedにもアクセスし放題でテストが楽なんだよな。 Rubyもそうしなさい。
オプションで完全アクセス開放おっぴろげモードとか、 モンキーパッチング禁止、定数変更禁止の 超不寛容モードとか出来たらいいのに。 require "strict" みたいなー
モンキーパッチング禁止は簡単だが、他は難しいな。
良く良く考えると「仕様(インターフェイス)としてのテスト」と「実装としてのテスト」がごっちゃになってるな。 テストする部分が違えばやりたいことも変わるわな。
UnitTestしてるとその辺はきわめて曖昧になってくるよ。 privateメソッドが動作するかというのだってXPにおいては暗黙の仕様なわけだし
>>38 >
>>29 が本当にやりたかったことは、今のRubyでフツーに書くとこうだろう
いや、フツーならこうだろう。
public *private_instance_methods
29に幻影を見せられていたのさ
「仕様としてのテスト」って何だ?
仕様のテスト、ブラックボックステストの事じゃね? 実装のテストがホワイトボックステストで。
「tdd bdd」でぐぐれ。
53 :
46 :2008/03/07(金) 00:22:57
>50 インターフェイスのテストだよ。他のモジュールやインスタンスから利用される部分のテスト。 基本的にはpublicの部分だね。。
そういやホワイトボックスて判り辛いよな。 クリアボックスにすりゃ良かったのに。
まーな …いやいやここでのwhiteって白色だっていう意味じゃないし ブラックリストは光学的に暗黒な物質で構成されてるってわけでもないし
白い箱でも黒い箱でもねずみを捕るのが良い箱だ。
とるのはバグだけどな
なんぞテストでケンローでモンローでププッピドゥなスクリプトを書くために 読んでおくといい書籍とかあったらzipでくれ
いや、マジレスするとそういうのは書籍媒体で持っておいたほうがいいと思うぞ
>>59 うん、や、そこを突っ込まれても困るというか…
こういうのは会社に勤めたりしないと体系的に学べないもんかね
Matzにっきの > (1..10).xxxx(1..10).select{|x,y| x+y == 5}.select{|x,y|x > y} これはどうなんだろ。transposeがブロックを取れるようにすればいいんじゃね? って思うけど。 [(1..10).to_a, (1..10).to_a].transpose do |x, y| (x + y == 5) && (x > y) end こんな感じで。
transposeとはまるっきり違うだろ。
kabuなんとかがウザイ。
きっと初心者も投稿しやすい空気にするために わざとあんな風に振舞ってるんだよ
継続って、例として示されてるのが例のための例なことが多くてピンと 来なかったんだが、ようやく自分が書いてるコードで「これは継続を使 える」というケースに行き当たった。 実はなんてことないんだなぁ。
Rubyで継続ってどう書くの?gotoとかあったっけ 初心者スレ行けってかそうですか
callcc{|c| hoge}
murmurhashを見ているとムラムラしてくる。
Ruby1.9のドキュメントはどこにありますか?
ソースがドキュメントです。
1.9に関してはRuby本体のソースとライブラリのRubyスクリプトと変更履歴がドキュメントだな それを読み解けない人はまだ使ったらイカン
76 :
デフォルトの名無しさん :2008/03/14(金) 21:27:02
Yukihiro Matz Matsumoto 托イ
bitclust statichtml まだー
bitclust sentimental と空目した。 うどん食いてー。
>78 うぬもUDONを見たのであろう 白状せい!! ちなみに己の昨日の昼飯は釜揚げ風うどんであった
”風”ってどういうことw
桶とか使わずに丼に湯張って茹でたうどん入れただけ よって「風」
第1引数が?で終わるメソッド呼び出しのとき、 3項演算子の?を省略できるようにならんかな。 無理か。
endの3文字で終わるメソッドや変数名でブロックが終了したとき、 endを省略できるようになると嬉しいか?
文脈依存文法になるから好ましくないな。
>>82 foo = (nil?) ? 1 : 2
ね。確かにあんまり綺麗じゃないよね。Rubyのifは値を返せるから、
foo = if nil? then 1 else 2 end
って書くのはどうか。
if nil? then 1 else 2 endは本末転倒な気がするがw
>>85 横レス。この場合はカッコ必要なんだっけ?
foo = nil?? 1 : 2
?が省略できると (nil)? と(nil?)のどっちか分らなくなるけど
あぁ…めっちゃ風邪引いた この感じは数年前のインフルエンザに近いな・・・はぁ・・・
>>87 疑問に思ったら試そうぜこれぐらい。
> cat > /tmp/t
class C
def nil?; true; end
def foo
nil?? 1 : 2
end
end
puts C.new.foo
> ruby /tmp/t
1
irbを使わない人を久しぶりに見た
90じゃないけど貧乏性だから入力が消えちゃうCLI, 対話環境はあまり好きじゃないな。 アウトラインエディタにコードの断片書き溜めて そこからその断片を実行できるようにしてるな。 あとあとsnippet代わりにもなるし。 つくづくハカー気質とは相容れないな、俺w
irb で適当な例を打ってさて表に出そうと思うと適当過ぎて読む気にならない罠とか。 組み立ててから eval なんだからあるわけないのに irb の外と違ってたら嫌だなと 思う「羹に懲りたわけでもないけど膾を吹く」臆病者とか。 まああんまりハカー気質とは関係無い。
るびまってもうネタぎれ?
ネタの有無はともかくモチベーション低そうだなあと思うことはある
いまだにまともなcgiライブラリや掲示板スクリプトが作れないクソ言語のスレはどこですか?
オライリー・ジャパンから日本語訳が出た 『Rubyスクリプティングテクニック』 (Everyday Scripting with Ruby) だけど、 Ruby使いならニヤリとするRubyらしい コーディングテクニックが随所に出てくる すばらしい内容なのに、翻訳がひどくて がっかりした。明らかな誤訳もある。
>98 原語でおk ってことだな
>>98 そこまでひどいのなら具体的によろしこ
七行も書けるのならどこが誤訳なのか
ひとつぐらい上げてくれてもよさそうなもんだ
「副題に出てるテスト駆動の話なんてほとんどないじゃん」と話題になってた本だな オライリーらしくない本だ 最近の疑問符がつきがちなオライリージャパンらしいとも言えるけど
102 :
98 :2008/03/24(月) 08:51:01
>>99 誤訳の例
……次に示すコードにより、取り除かれた退屈な行を含んだ1つの配列が生成されます。
inventory.reject do |line|
boring?(line)
end
原文は読んでないが、コード例から察するに、「退屈な行が取り除かれた1つの配列が生成されます」だったはず。「退屈な行」ってのもすごい訳だが。
>>102 thx. これでこちらも判断できる
> ... the following code would produce an array with
> boring lines stripped out:
文意も捉えずに訳しちゃってるんだろうなあ
訳者もあれだけどオラの編集なにやってるんだろ
まあそんくらいよくあることって声が聞こえてくるのでこの辺で
コード絡みを専門に見る監修者がいればいいんだろうけど、そうするとさらに値段が高くなるな 「500円高いけどそのかわり初版なのにコード部分の誤植がほぼゼロ」ならちょっと考えるが
boringの訳は冗長辺りでいいんかな
Array#shuffle,Array#shuffle!も1.8に入れてちょ
それくらいは自前で定義しとけ 初心者スレでも出てたがtapとかも
初心者がtapなんてどうするんだ
もっと身近に .blank? とか欲しいよ。
空(blank)とは何か。 色不異空空不異色、色即是空空即是色、受想行識亦復如是
empty? とどう違うん?
nil.blank? => true false.blank? => true 0.blank? => true [].blank? => true {}.blank? => true ''.blank? => true のようになるActiveSupportによる拡張。
perlかphpでも使っとき。
考え方はダックタイピングに通じるんじゃね?あって悪くないと思うけどな
こういう便利関数を山ほど突っ込んで全クラスのメソッド数が平均で倍くらいになったら 速度って目に見えて落ちたりするの?
>>92 自分の使ってる環境がたまたまとんでもなく時代遅れでショボすぎるからって、
世界中そうだと思ったらいかんよ。
>>115 メソッド探索はハッシュ使ってるから変わらないはず。
>>112 Ruby作ってる人はこういうのは嫌いなのかな?
それともActiveSupportで実装されてるから十分っていうことかな
PHPやPerlみたいに、if等のコンテキストで「自動的に」このbrank?が使われる、って
いうとこまで行くと違うとは思うけど、明示的に使うなら、組み込みであれば便利そうだ
今は0.blank?はfalseになるようだ
>>119 それはむしろNameErrorにでもなって欲しいなw おれは未確認だけど
Objectに要素が無い時、真
要素とは?
(1)物事を成り立たせているもの。また、物事の成り立ちに関与している成分や性質。 (2)集まっているもの、または組み合わさっているものの一つ一つ。それ以上分析できないもの。 (3)〔法〕 具体的な法律行為・意思表示において、その行為者に重要な意義をもつ部分。 (4)〔数〕 集合を構成している一つ一つのもの。元(げん)。〔明治期に作られた語〕
Integer(Fixnum)のObjectに要素が無い場合とは?
125 :
112 :2008/03/25(火) 21:18:07
> From: [685] デフォルトの名無しさん <sage> > Date: 2008/03/26(水) 02:06:15 > > クラスを宣言するまえにクラス呼んだらエラーになるの??? > なぜか通らない。 > > baz = Hoge.new #←エラー??? > > Class Hoge > def fuga > #Something > end > end みんなはこれどうやって納得してるんだ
class〜endも「実行」(評価)される。それが分かってれば納得できるはず。
宣言じゃないと気がつけば
if文の中でクラスにメソッドを追加、とかしたときに 「これは一体どう実現されてるんだろう」と考えてみる まあ、一義的に不便なのは間違いないな クラス定義は後ろにまとめて、最初に処理ずらずら書けたほうが 見た目わかりやすいだろ、という主張を否定する理由はゼロだ
130 :
デフォルトの名無しさん :2008/03/26(水) 04:00:30
def main # メインの処理 end class Foo # ... end main でいいじゃん
>>129 Rubyではそーゆーものだ、というだけで、そういう主張を否定してるわけじゃないだろう。
実装の都合を仕様と称してユーザーに押し付けているわけか
どこが実装の都合なんだ
>>132 は実装という言葉の使い方間違ってると思う
あと、「の都合」の使い方が中二病っぽい。
それは意味が分からない
>>129 いちぎ-てき 0 【一義的】
(形動)
意味が一種類だけであるさま。一つの意味にしか解釈できないさま。一意的。
⇔多義的
「法令の表現は―でなければならない」
>>136 わからなくても全く問題無い(日本語の知識とは関係ない)から気にしなくていい。
同類をたくさん見てくることで、言い回しから人物像が色々わかっちゃうだけの話。良いもんじゃないw
どう見てもお前が同類です
「どう見ても」が中二病丸出し。
Rubyを使うとエスパーになれる
パーじゃなくて?
じゃ、俺はエスになる
エムになるわ。
じゃ、俺はエルな あと、人殺しが出てくるのがいやだから、エルエルも取っとく
エルツーに気をつけてね
シーツーになるよ
んじゃプルツーはもらっとく そして↓は「ガノタ乙」or「ロリコン乙」or「ペド乙」……と言うッ!!
話題が高尚過ぎて常人には解読困難だな
TK8.5対応キタ━━━━━━(゚∀゚)━━━━━━ !! 長井さん乙!
rb_hash_lookupがない
TKって窓枠がOSネイティブに近くなるとか言ってたけど8.5ってそれのこと?
1.8のtcltklib.cのrb_hash_lookupはどうすればいいのですか?
rb_hash_arefで置き換えるとか。
とりあえずそれでビルドできますた
>>150 誰、長井? ……と他人の名前を出すなら間違えないようにしようと微妙に主張。
誤変換くらい多めに見様屋。
1.9.1正式リリースキタ━━━━━━(゚∀゚)━━━━━━!!
1.9.1正式リリースキタ━━━━━━(゚∀゚)━━━━━━!!
1.9.1正式リリースキタ━━━━━━(゚∀゚)━━━━━━!!
1.9.1正式リリースキタ━━━━━━(゚∀゚)━━━━━━!!
2.0正式リリース(略
163 :
デフォルトの名無しさん :2008/04/01(火) 11:19:00
るびま23号キタ━━━━━━(゚∀゚)━━━━━━!!
るびまって今どのくらい読まれてるんだろうね 新しい号の内容の人気がどうこうというものではなく、 Ruby関連読み物アーカイブ山盛りサイトとして サイト全体で検索とかから結構なアクセスがあるって感じなのかな
だれかるびまのchm版作ってない?
るびまは何だかんだでおっさんたちのインタビューが楽しい
画像とかが絶対URLで書かれてるからMHTにしたりしても不便なんだよね 全部相対URLで書かれてたらファイルにして持ち歩くの便利なのに 持ち歩いてどうするという感じではあるが
Scrapbook使えよ
るびまのcgi.rbについての記事、なんというか微妙なんだけどどこにつっこんでよいかよくわからない
「俺をメンテナにしろ!」って言えばいいのに。
あんだけ評判悪いんだから1.9で刷新しろよ
刷新するためのリソースがないんだよ
互換無視の次世代cgi.rb候補もイマイチ固まってないよね 既存のがイマイチだからこそまだ募集してるんだろうけど
>>168 絶対URLじゃなくてCGIになってるが、
ダウンロードしてsrcを書き換えるなんてのは簡単にかけるだろ。
ruby-devに書き込む勇気ないからここで言っちゃえ。 田中さんや村田さん達頑張って。 複素数入りの連立微分方程式なんかがサクサクrubyで解ける日が来るのを楽しみにしてる一人です。 ノーベル賞者が「rubyを使って研究してました」なんて言う日がきたらいいなぁ。
田中さんは日本に多い苗字だからな…
見るだけで気分がわるくなるアンチスレがやっとなくなった。めでたい。
配列同士の代入は鬼門だな 始めて 10日なんだが、3回くらいはまった。わはは。
行列の演算も鬼門だな。 逆行列が怪しいので、ググると、とっくの昔から指摘されてるじゃんか。 それをクリアして、掛けると、これも怪しいような。 乗算もダメなのか。 わはは AWK より便利だけど、数学屋さんとか統計屋さんは跨いだ方がいかも。
185 :
184 :2008/04/04(金) 21:46:37
s/がいかも/が良いかも/
さすが(数学|統計)屋さんを気にするだけあるな。細かいw そのままでも方言ぽくていかもと思ったんだが
>>184 まさか整数オブジェクトなんかで行列計算やってないよね
きちんと全要素 to_f してるよね
irb> Matrix[[3,2], [1,1]].inv
Matrix[[0, 0], [0, 1]]
irb> Matrix[[3.0,2.0], [1.0,1.0]].inv
Matrix[[1.0, -2.0], [-1.0, 3.0]]
これはバグでいいな p Matrix[[1, 2], [2, 1]].inverse p Matrix[[1.0, 2.0], [2.0, 1.0]].inverse Matrix[[-1, 1], [0, -1]] Matrix[[-0.333333333333333, 0.666666666666667], [0.666666666666667, -0.333333333333333]] まあRubyであんま真面目に数値計算してる人っていないってことなんだけどね 数値計算は数値計算ソフトウェアでどうぞって感じだ これくらいはできて欲しいという気はひしひしとするが
Ruby で数値計算なんかしても遅いだけだし。
行列の加減乗除が違うなんてのは数値計算ってレベルじゃないけどな
整数の範囲では正しい!
そもそも整数で完結した行列演算って意味あるの?
割り算さえしなけりゃ使い道はあると思うよ?
Matrix[[1.to_r,2.to_r],[2.to_r,1.to_r]].inverse => Matrix[[Rational(-1, 3), Rational(2, 3)], [Rational(2, 3), Rational(-1, 3)]] こういうこともできるからバグじゃなくて仕様
196 :
184 :2008/04/05(土) 05:11:27
>>190 >Ruby で数値計算なんかしても遅いだけだし。
そうでも無いよ
50 くらいのクラスター分析なら、1秒か、2秒で済むし、
300 あっても1分以内で終わる。
問題は喰わせるデータのフォーマットがちぐはぐなので、
input_data で、どこまで対応するかだね。
Excel で前処理すれば解決するけど、意外とめんどくさい。
このあたりを Ruby でコーディングすると、とてもらくちん。
197 :
184 :2008/04/05(土) 05:23:30
>>195 ありがとうございます。
私の買った本には、裏表 2ページしかなかったのですよ。
Matrix の関係が。
公式サイトのニュースって書く人いないの? 2008年が3件だけってヤバくない?
今4月入ったばかりだから今月1個何か書けばぴったり合うな
Rubyを始めようと書店で入門書を手に取ったら女学生と手が触れ合って 道程を捨てられましたくらい心温まるニュースが欲しいところ。
むしろ外野のコメントのほうが面白いw
203 :
184 :2008/04/06(日) 01:19:27
できました 重回帰分析の部分完了 F検定はまた今度 生暖かく励ましてくださったみなさんありがとう
そこのサイトコメントスパム酷いな。 最近tdiaryがスパムの温床になってて嫌だな。
David Pollak わたしはこれまで Rails による開発を 18 カ月、Java による開発を 10 年経験してきました。 Rails はウェブ開発に新しい風を吹き込みました。 よく使うタスクはコマンド一発で実行することができます。実にすばらしい。 しかし、私は気が付いてしまいました。Ruby の動的型付けは多くのエラーを引きおこすことに。 そして、安心してデプロイするためには 95% ものテストカバレッジを達成しなければいけないことに。 95% のテストカバレッジを得ることの代償として、私の書いたコードは(テストコードも含めて) Java で書いたものと同等のサイズにまでふくれあがってしまいました。 その上、Rails では動的なコードの変更が可能なため、開発・テスト・デプロイ中にトラブルが続出するようになりました。 高いテストカバレッジを確保しているにも関わらずです。 これらの問題にくわえて、MRI(Matz Ruby Implementation: まつもとゆきひろ氏による Rubyの実装)は速度が遅く、 言語仕様も安定していません。それなのに開発コミュニティはそのことに見向きもしません。
マルチ乙
ていうか、それ書かれたのもう何日も前なのに…
まぁ、1.9使えって話だよな(ぉぃ
まともな人なら、ポッと出の環境で論文など書かないし、売り物にはしない。
i80486 の後のペンティアムの初ロットのおかげで、何人泣いたか知らないか。
歴史を学ばない者は、永久にループから抜け出せない。 よ。
(おいらは論文書いてないけど、CPU交換して貰った。
NEC なので、基本はお店に本体持ち込みなのだけど、
無理言って、はずした CPU の交換にして貰った)
突撃隊が居ないと、バグも修正されない、と言う理屈もあるので、
>>209 は、「使ってみてレポよろしく」と読めた。
個人的にはいまのところ 1.8 で不自由は無い初心者です。
>211はゆとり
煽られてキレるくらいなら怪文書なんて書くなよ
本気も本気、めちゃくちゃ本気の文章だったのかもね。 自分の意地、誇り、魂のすべてをかけたような。
※注意! 粘着しそうなお方に餌を与えないでください
216 :
デフォルトの名無しさん :2008/04/08(火) 21:22:55
mygameでゲームを作るために、activerubyをインストールしました。 そこで、pathを設定しようとしたんですが。登録する場所がわかりません。 どなたかわかる方いますか?おねがいします。
Rubyコミュニティって言語仕様に関しては注力してて 他の言語にちょっとでもダサいところがあるとたたきまくるくせに、 トロいとか、言語仕様が安定してないとか、ドキュメントが無いとか、 数多くのテストをこなさないとエラーが出るとか、そういうことにはほんと無頓着だよな。 言語仕様と同じように、そういうものをよりよく変えていこうとは思わないの?
コミュニティに質問したいんならMLで聞けば?
>>218 いいだしっぺの原則
#だからみんな黙ってるんだよ
>>219 でFA
このスレでRuby作ってるわけじゃないなしなあ
>>218 基本的に、お客様に使っていただく言語というよりは、自分で使うための言語だから、
その辺の意識は正直薄い。
もっとも、トロいのは1.9、仕様安定性は1.8でだいぶ解決してるし、
ドキュメントはるりまががんばっているので、218もここに書く暇があったらドキュメントを書くんだ。
使おうと思ってもマニュアルや解説少ないってのはやっぱあるよな 一般的になったと思えるHPricotやMechanizeですらコピペみたいな数行のスクリプト載せて「あとは英語マニュアル見てね」だしな
scRUBYt は「最初から scRUBYt で勉強した人」が出てくると変わるかも、と思う 知ってるから Ruby の正規表現で十分 → Hpricot サイコー という流れと似た現象が起こる可能性はある
基本は「不便だと思ったら、お前が何とかしろ」だからね。
日本人は西洋人と違って、「場にノウハウを蓄積する」観念が薄いからな。 昔から「それは人の中にしか無い」って考えだし、たまに書き残すと「秘伝の書」とかになっちゃうw 第二次大戦中も、敗走したパイロットの話から学ぶことを軽視して「討ち死に」を讃えてばかりいたから、 ノウハウがたまらず、後期になって必然以上に敵さんとの開発競争に差が出たそうだが。
本家が日本じゃなかったら、あっちももっと積極的かもな。
確かに、Ruby本体に対する活動が鈍いのは日本由来であるということが影を落としている可能性はある …というか、思いっきり影は落としてるが、 RubyForgeとかに登録されてるライブラリの活動が鈍いのは言語が日本製だからということではないはず 作ってる最中にRubyの仕様に疑問が出てきてML見たけど日本語ばっかで外国のパッチはスルー気味なので 失望して開発止めた、というのがそうそう起こってるとは思えねー
devよりcoreのほうがいまは流量多いんじゃないの?
ruby 1.9.0 (2008-03-01 revision 15664) [i386-mingw32] なんですが(ruby 1.9.0-1) sjisのパスを File.dirnameに渡すと ASCII-8BITで返ってきてそのあとで、別のファイル名と連結するとエラーになるんですけど ruby -e "dir = File.dirname('ふー/ばー');newfile = File.join(dir, 'ほげ')" -e:1:in `join': append incompatible encoding strings: ASCII-8BIT and Windows-31J (ArgumentError) うーむ
そうかそうか
ファイルシステムが返す文字列の円コーディングをどうするべきかは未検討だね。 Encoding.default_externalでいいのかなぁ。
ポータビリティとかどうでもいいんで Windowsでまともに動くようにしてください><
ポータビリティがどうでもいいからWindows放置してるんじゃね。
>>236 dirnameについては内部で閉じてるから、default_externalは関係ないと思う。
expand_pathとかglobについては同意。
Scalaスレに突撃してるバカをどうにかしろ
なんという援軍要請
>>241 君は犯罪を犯す日本人個人を日本人としてどうにかできるというのかね
>>243 が詭弁なら
>>241 は無理難題のふっかけだな
あらゆるものがコントロール可能という妄想は病気だぞ
プログラマの人に多いよね
>>241 がプログラマであるということを保証しないので注意
でも、俺の中の典型的なRubyistは、 いつも他言語スレに凸しては何らかの火種を撒いている感があるな。 しかも、開発の中心に近ければ近いほど、やばげなイメージがある。
じゃあその理屈ならMLにも大量生息してるはずだよね …ああ、稀にいるか、いるな
Matzがあんなんだからなあ
>>245 せめてコントロール可能なものはコントロールしろという話だよ。
ほんとRuby信者は屁理屈で逃げ回ることと人格攻撃だけは得意だな。
つまんねーこと言ってないでさっさとマニュアル書けよ
>>251 それをScaleスレのバカに言ってくれ
>241 がコントロール可能って言ってるの? >250はどこかの世界の神さま?
自分で言えばいいじゃん、どうせみんなIDも無いし名前も同じなんだから。
Scaleスレのバカに対して -> 「バカはコントロール不可能」
Rubyスレのアンチに対して -> 「つまんねーこと言ってないでさっさとマニュアル書け」
大事なのはアンチもコントロール不可能ってところだな
>>254 いや、君に命令される筋合いは無いから^^
ScaleじゃなくてScalaな
二回間違えたところを確認してから指摘するあたり実にエロい
Pythonスレに突撃してるバカも回収してくれないだろうか
>>247 おまえバカか?全部アンチの陰謀にきまってんだろ。
あれはRuby厨を装った暇人
1回だと typo かもしれないからな。
>>259 都合の悪いことは全部アンチのせいだと言わんばかりだな
いい加減まとめてアンチスレ行ってくれない?
いやだから、コントロール不可能なんだろ?
>>259 matzを見ている限り、それはありえない
matzがバカやらかしたのを取り巻きが必死でフォローしてる感じだけどw
>>266 1.今回の1件を見てても分かるように、matz以外にもバカがいる
2.鬼車の1件を見てても分かるように、matzをまともにフォローできてない
3.っていうか、matz以外にもめちゃくちゃ言ってる奴はいた
(あえて個人名はださんけど、出せというなら出すぞ)
最近本家RUBYよりも速いと言われるRUBYがいろんなところで作られているけど本当なの? 1.9に期待するよりもそっちの開発の方に注目しておいた方がいいのかな。
>>268 Rubyの文法自体は基本的に変化しないんで、
ユーザーとしてはそのときの主流のを使えばいい
それ以上でもそれ以下でもないな
Matzが仕様を定めないのも > 最近本家RUBYよりも速いと言われるRUBYがいろんなところで作られているけど本当なの? ここらへんの事情も影響してるのかも、なんて思ったり
Matzの把握していないYARVが組み込まれた事で、 MatzはCRubyの言語メンテを自由にする事が出来なくなった。 1.9の更新が滞ってる理由。
>>267 >あえて個人名はださんけど、出せというなら出すぞ
教えてくれ
個人攻撃するならテメェも名前出してやれよよw
>>269 今は本家よりも速いことがあるってだけで互換性も薄いしな
もし互換性完全でなおかつどう使っても高速だというバリエーションが出たなら普通に乗り換えればいい
そんだけ
感覚としてはWindowsで動作するRubyの乗り換えに近い
>>273 しかし速くてOSと親和性のあるRubyは魅力的だな。
あとちゃんとスレッドが実装されたら飛びつくかも。
元の処理系にもyarvにも特にこだわりは無くて もっと良い処理系が出たら(matzが気に入れば)本家にも取り入れる、とか言ってなかったっけ
もうRubiniusに丸投げしちゃえよ。 きっと、向こうの方がいい開発コミュニティ作ってくれるよ。
279 :
デフォルトの名無しさん :2008/04/16(水) 08:51:21
Ruby 1.8.7-preview1 アゲ
浅いコピー -> 値を渡す 深いコピー -> ポインターを渡す のように理解してコーディングしておりましたが、 Array.new はときおり、コピー元に影響をあたえますな test.rb でよくても、ほんちゃんでコケるのが困る オイラがバカなだけなのかな
>281 それ、深いと浅いが逆なよーな。
要素のobject_idを確認してみよう。
pythonのスレの方が伸びてるな
285 :
281 :2008/04/19(土) 21:01:30
>>282 と、おいらも最初は思っておりました。
a = [1,2,3]
b = a
b[0] = 99
p a
p b
と
a = [1,2,3]
b = a.dup
b[0] = 99
p a
p b
286 :
281 :2008/04/19(土) 21:02:10
を実行してみて はじめの奴は、b への代入は a に影響するし、あとのは影響なし。 マニュアルで、dup と Array.new は、浅いコピーと、表現されているので、 言われてみると、そんな表現もありかと。 とりあえず def copy2(data) d = (0 ... data.size).map do |i| (0 ... data[i].size).map do |j| data[i][j] end end return d end で乗り切っているので良しとしてます 他に心配せにゃならんことが多いし。 あ、こっちは Ruby と関係ないところなんで、ここでは発表しません。
287 :
281 :2008/04/19(土) 21:03:42
>>283 今夜はつらいので、明日勉強してみます。
どうもありがとう。
値/参照 変数/オブジェクト コピー(代入) って何となくつまづかない割に重要で、なのに理解してない人ってよく見かけるんだけど 簡潔にまとめた記事ってないもんかね
ところで Array.new でどうやってコピーするんだ
Array.new([1,2,3])
>>281 引数の渡し方と、シャローコピー・ディープコピーの概念は、
切り離して理解すべきだと思う。
p Array.new(3) { [1, 2, 3] } #=> [[1, 2, 3], [1, 2, 3], [1, 2, 3]] p Array.new(3) do [1, 2, 3] end #=> [nil, nil, nil] 両方とも同じ結果になると思ったのですが,なりませんでした. なぜでしょうか? どっちも同じかと思っていたのですが,do ... endと,{ ... }は違うのでしょうか? do ... end が使える場所では常に{ ... }が使えるが,その逆は成立しない などの使える広さがあるのですか? もしそうならば違いを詳しく教えてください
p の括弧省略すんなよ
次のるびまはいつの予定? もし記事を書くなら締め切りはいつ?
編集部のメールアドレスにメール投げて聞いたら?
Tibet.Free! と Free(Tibet) の違いがわかりません><
オブジェクト指向なんだからselfがなんなのかを考えるだ。 上はTibetクラスの宣言、下は実行主体は人民Free軍だな。
>>296 上はチベットの人による解放運動だな
下は他国が大騒ぎ
>>292 {〜} と do 〜 end では結合強度が違うので
メソッドのカッコ省略で解釈が変わる
前者は
p( Array.new(3) {
[1, 2, 3]
} )
と同じで、後者は
p( Array.new(3) ) do
[1, 2, 3]
end
と同じであり
pメソッドにブロックを渡しているが、使われることなく無視されている
マニュアルの「メソッド呼び出し ブロック付きメソッド呼び出し」の項に書いてある
ところでお前らruby kaigiはつくば周辺で宿取るの? なんであんな辺境の地でやるんだよ。。。
TX使えばまあ何とか
まつもと氏が筑波大を出てるからとか?
単に安く貸してくれるからじゃないの。
筑波は日本のマサチューセッツ(笑)ですからwww あ、何か本家まで「マサ厨摂津」って関西圏みたく見えてちまった……
日本のMITは武蔵野...
あの辺って手頃な宿ある? 会場のとこは高そうだし、あんまり離れてるのも面倒だし。
TwitterがRuby on Railsを止めて、PHPかJavaでシステムを作り直すらしいね。
312 :
デフォルトの名無しさん :2008/05/02(金) 15:42:33
なんだ、TechCrunchのとばしか
まあ、でももともとスクリプト言語ってそういう役割なんじゃね? てっとり速くプロトタイプを作るためにあるんだし。最初からPHP/Javaで作ってたら そもそもTwitterが出来てたかどうかわからんわけだ。 ただ、Railsのスケーラブルしない部分ってのはDBまわりな印象があるから PHP/Javaに移植したとしても、コストがかかる割にそんなに変わんねえんじゃね って気がするなあ。
技術的なことはよくわからないんだけど、 Rubyを10倍高速にしたら解決するんじゃね。
>>315 2刀流にして2倍ジャンプして3倍回転すれば、それだけで12倍だからな。楽勝だな。
二刀流はともかく2倍ジャンプと3倍回転は元からそれだけのパワーを持ってたってことだよな
1.9はYARVで50倍速くなっているから、1.9にすればいいな
>>320 最近のrubyistは「アムダールの法則」も知らんかorz
(´・ω・`)知らんがな
アムダールの法則という名前では知らない可能性が高い 「1割しか使われない部分を10倍高速化しても全体としてはたいして速くならん」 ということだと説明されれば結構な人が知ってる 計算式まで知ってる人はいないけどな
そもそもマジレスしてるのがおかしい
あれだろ、どんなルビ厨は90%は屑ってやつだろ
とはいえ時々素で思ってるっぽい人がいるのも事実 ・YARVでRubyは非常に速くなる ・Ruby1.9がRuby2.0になる この誤解はかなり多い
> ・Ruby1.9がRuby2.0になる なにこれ? 初めて聞いたぞ。
>>321 湿原の保存に関する国際条約がなんでRubyに関係あるんだよ。
>328 はいはいラムサールラムサール
コーシー・アダマールの法則
>>323 そういえば1.9ではネイティブスレッドに対応できたんだっけ?
これできなくちゃあ高速化したくても大したことできん。
ビルド時のオプションによる
ジャイアントロックなのでそう速くはならないんじゃない
それよりは、Copy on WriteフレンドリーなGC採用でforkしまくる方が、実質的な効率が良さげな気がする。
refe2になって、ロケールでよきように取り計らってくれるようになったのは ありがたい。 まあ、ソースをちょっと書き換えりゃいいだけだったんだけど。
2.0の計画は今のところnamed argumentやGCへの変更とかが入るって以上は特に決まってなかったような
何をするかにもよるけどforkするとプロセス間の通信が面倒そうだなあ
MVMって2.0?
Lightweightと呼ぶにはリソース食いすぎると思う。
Light-weightには使用リソースが少ないなどという意味は込められてない
リソース食わないLLが使いたければForthにするのが良いと;思う。 >339
いやこめられてるだろう
>>339 「Lightweight」ってプログラマの負担のことだろ?
アイデアを実装する負担が少なければ、あれこれ試す余裕が出来る。
リソースが少ないだけならアセンブラ。
最終的にパフォーマンスチューニングに手間を割かざるを得ないRubyはLLとは言いがたい
>>344 ハイパフォーマンスが必須な案件で使える、チューニング不要の言語があったっけ?
言語の問題ではない場合でも、ハード、OS、ミドルウェアに手を入れるよりも
コーディングで回避した方がローコストな場面によく出くわしたが。
>>345 記憶が確かならLLという区分はプロトタイピングの道具として
注目されたことに起源があるから
パフォーマンスが必要ならより速い言語(主にC/C++)で書き換えろ
というのが共通した答えになると思う。
それ以前に抽象的なパフォーマンス論議は全く意味が無いと思うのだが。
>>346 「パフォーマンス」の意味を実行速度(ある変数を1から10^10までカウントupなど)
に限るなら、論議の成果も限られたものになると思う。
実際の開発収支への影響を無視出来ない要因は、実行速度以外にも、
言語習得コスト、アイデア実装の容易性、他システムとの整合性などあるから
確かに、前提条件抜きでの「xxx言語のパフォーマンス」は無意味だけど。
> パフォーマンスが必要ならより速い言語(主にC/C++)で書き換えろ
> というのが共通した答えになると思う。
もしくは最近の実装に多い、Cソース生成機能を使うかだよな。
Schemeではそういうのを見るけど、Rubyではどうなんだろ?
ようするにプロトタイピングツールで実運用する奴はアフォってことですね。
>>348 否定をする理由はない
パフォーマンスと規模とコストを無視してRuby(特にRoR)に固執し続けるのはバカ
Twitterのような部分置き換えはRuby視点としては卒業生輩出ってことで喜ぶべきだと思うぜ
楽天の例が絶対言われると思うが、アレは言語開発者引き込んでるから少し特殊だ もしまつもとゆきひろがいなかったら指差して笑っていいと思う
とっくに指さして笑ってるけど?
>>348 LLとして確立する際に、
プロトタイプでも十分使えるならそのまま実運用したら安く上がる、
もし使えなくてもプロトタイプがあれば始めから書くより早い、
という主張がついてきたと記憶している。
いずれにしても道具をきちんと理解して使いこなせない奴は
アフォということに変わりはない。
GW明けからRoRでプロトタイピングするおいらがやってきましたよっと。 てか、Rubyって使ったこと無いからとりあえずググったらここを見つけたんですけどwwですけどww 情報すくねーww集積されてねーーwwwうぇうぇw おれ涙目RoR プロトタイプの理由 ・動いてるの見なきゃ分かんない人がいるから ・見積もり?そんなの後でいいからとりあえず作れ ・ものが良ければ後で人突っ込んでやっからwww RoR(Ruby)の理由 ・社内にノウハウなっしんぐ!俺も経験なっしんぐ! ・ノウハウげっとで会社もハッピーおれもハッピー ・なんか短期間でできるって噂じゃん?
Ruby慣れしてない……御愁傷様 RoRの理由とやらはRuby慣れしてなきゃ全部幻想だ 使っていくうちの細部については、結局RoR自体のソース追う人も多いんじゃねえかな。 とりあえずノウハウ本経費で落として凌げ
>>353 Ruby使ったことさえ無いのに「RoRでプロトタイピングする」と決めてしまうのは無謀だと思うが
とりあえずやる気なら、web上で情報探すより本読んだ方がいいと思う
なんというデスマーチ予備軍
Rubyをシュミや俺ツールで使ってた人が「うおー仕事でも使い物になるー」と喜んだのがRoR 少なくともRubyをシュミや俺ツールで使えるようなレベルの人向けだな 半年か1年くらいかけてRubyをそこそこ習得後に始めたなら、そりゃプロトタイプとしての生産性は高いかもしれん 個人的には自分が今使える言語でプロトタイピングを学んだほうが全員幸せになれると思う 仕事として新たにRubyを学ぼうというのは現状無謀というかある意味馬鹿
RubyってJavaと同程度には敷居高いよね
359 :
353 :2008/05/06(火) 20:17:58
RoRでプロトタイピングってのは政治レイヤーで決まったこと。
あれだね、RoR使えば超早くできるって刷り込まれてるんだろうね。
まぁ、おいらっち多言語プレイヤーだから初めての言語でもモウマンタイ。
>>353 で言いたいのは、プロトタイプの名のもとにスケーリング無視無視でとりあえずやっちゃえーって事もあるってこと
PHPとSQLでサイト作ったことあるひとならAWDwR読むだけで 割とサクサクRails使えると思うけどなあ。
英語を読み書きできても、皆がハムレットを書けるわけでもないし。 売れなかったからって、フランス語で書いてもやはり売れないぞ。
なに、無限のサルにコンピュータを与えればいつかはハムレットができるさ
ボゴソートの存在を知ったときには笑いが止まらなかったな
>>360 Perl、PHP、MySQL使いの俺だったがRailsに慣れるまで大分かかった。。
あのブラックボックスに慣れにくい人もいると思。
ところで、Ruby Way 第2版ってどう?
リファレンスが手元に欲しくてプログラミングRuby買おうとして見つけたんだが。
365 :
361 :2008/05/08(木) 23:11:34
やっぱり、サルが出てきた. 有名だから。 星の寿命より長生きのサルが必要なのも知ってるよね。 「無限の」ってのは、そういうことだから。 もとは、「タイプライター」なので、それも指摘しておく。 当時は、パソコンなかったから。
ネタに全力でマジレスするスレがあると聞いて飛んできます田
ピントずれてるしな 「無限のサル」ってはじめから書いてあるじゃん
無限のサルには無限のコンピュータを与えないといけないけどな
refe2で $ refe aaa はno such class: aaaって返してくれるけど $ refe Object aaa は /home/mona/doc/rubyrefm/bitclust/lib/bitclust/completion.rb:146:in `try': undefined method `empty?' for nil:NilClass (NoMethodError) って例外が上がってくるのは意図したとおりなのかな。 ここはno such method: aaaって返すのが自然な感じがするんだけども。
ヒルベルトホテル思い出した。
>>369 多分不具合。
BitClust::Completin#expand_method_name内の
return nil を return [] にすれば例外は発生しなくなるけど、
表示メッセージがまだおかしい。ちゃんと修正する必要あり。
no such method in : aaa
本当は
no such method in Object: aaa
と表示されるはず。
>>366-367 「自分だけわかってる」ログを残したかった人が、他人に「ついて来られちゃった」ときに、
よくこういう「だからそう言ってんじゃん」的な無駄な解説をするんですよ。知性のアピールとして。
373 :
369 :2008/05/09(金) 18:13:02
>>371 ありがとう。
漏れも簡単に修正できるかなとソースちょっと見てたけど、
no such method in : aaa
にはなるけど、きちんと表示されないね。
>>371 に加えて
database.rbの394行目
>raise MethodNotFound, "no such method in #{loc}: #{pattern.method}"
を
raise MethodNotFound, "no such method in #{pattern.klass}: #{pattern.method}"
にすれば
no such method in Object: aaa
にはなるけども、
$ refe hoge fuga
no such method in hoge: fuga
になって、まだ変だな。多分、no such class: hogeが先に出るのが
正しい気がする。
375 :
デフォルトの名無しさん :2008/05/11(日) 19:41:00
で、'bar'[3, 1] #=> '' はバグなの?仕様なの?
仕様。
>>375 初心者スレで出てた話か。誤爆?
普通に考えればバグだと思うけど
「仕様変更があって、リファレンスの方が更新されてないだけ」というのも
Rubyなら普通にありえるから困る
ChangeLogに無ければバグ なんだが、いつのバージョンならマニュアルのように動作するんだかよーわからんな
MLで聞けばよろし ぶっちゃけ、 Matzが気に入る→仕様 Matzが気に入らない→バグ なんだから。
見つけた Modified Mon Feb 19 09:15:27 2001 UTC (7 years, 2 months ago) by matz Original Path: branches/ruby_1_6/string.c File length: 58792 byte(s) Diff to previous 1166 * string.c (rb_str_substr): "a"[1,2] should return ""; need rubicon upgrade.
matzというバグを発見しました
ぜんぜんうれしくない仕様
>>380 それは指定した切り出し長(2)が、文字列の長さ(1)を越えているときの動作だろ?
上で言われてるのは、インデックス(3)が文字列の長さ(3)に等しいときの動作だ
参考(ruby1.8.6 mswin32)
"a"[1,2] #=> ""
"a"[1,3] #=> ""
"bar"[2,1] #=> "r"
"bar"[3,1] #=> ""
"bar"[4,1] #=> nil
開始位置が文字列の長さと等しい時じゃないかな?よくしらんけど
if (beg == RSTRING(str)->len && len > 0) return Qnil; これを削った
そんで、これで長さ0の文字列にってことか if (beg + len > RSTRING(str)->len) { len = RSTRING(str)->len - beg; }
>>384 > それは指定した切り出し長(2)が、文字列の長さ(1)を越えているときの動作だろ?
違う。切り出し長は関係ない。
インデックス(1)が文字列の長さ(1)に等しいときの動作。
だからずばり上で言ってること。
YARVで、あるベンチマークが * 「100%速くなった」というのは、時間が半分になったということ? * 「200%速くなった」というのは、時間が1/3になったということ? * 「25%速くなった」というのは、時間が20%減ったということ? ( 1 / (1-0.20) = 1.25 ) 初心者スレでなんの反応も無かったので、教えてえらいひと。
そーゆーのに興味のある人は実際に使ってる人よりITマスコミだろうしな。
>>389 そんなの話者やベンチマークの内容によって違うし。
その場その場で自分で解釈しなよ。
まあ、「25%速度うpしますた!」といって速度が1/4になってたりするってことはないと思う。
>>391 >そんなの話者やベンチマークの内容によって違うし。
冗談でしょ?
質問でお茶を濁さず、自分の意見を言おうな。
ベンチマーク内容やベンチマーク結果が話す人によって異なるのは当然だが >* 「100%速くなった」というのは、時間が半分になったということ? >* 「200%速くなった」というのは、時間が1/3になったということ? >* 「25%速くなった」というのは、時間が20%減ったということ? ( 1 / (1-0.20) = 1.25 ) これが話す人によって異なるわけがない。
気になるならささだに問い合わせて 同じベンチを自分で回してみりゃいいだろ
既存のRSSのファイルを開いて新しいアイテムを追加する時に RSSを開く → アイテム部分だけ記述して追加 → RSS保存 で行ってみましたがうまくいきませんでした。 具体的には p rss.items なら要素が追加されているのですが p rss.to_s をすると追加した要素が反映されませんでした アイテムを追加したいだけの場合でも maker で channel 要素を再度指定して作りなおすものなのでしょうか? 環境は RSS1.0、Ruby1.8 です
とりあえず、どのライブラリでRSS1.0をパースしたのか?
>>398 Ruby 1.8 の環境で RSS のバージョン 1.0 でファイルを作りました。
すいません、私何か勘違いしてますか…?
>>399 標準添付の RSS::maker を使いました
メーリングリストの方が言及されていた validate で確認したところ
about 属性が抜けていたのが問題だとわかり解決しました
スレ汚し失礼いたしました。
ML見てたけど、Kimさんちょっと笑えるなw
>「Ruby 1.9は1.8より平均5倍速い」、YARV笹田氏 ナ、ナンダッテーΩΩ Ω
りずむ君は純粋な日本人だよね? すごい名前だ・・・
自称「〜倍速い」は絶対信用しねえ
DQN命名親の被害者世代がIPA絡みの記事に掲載される時代か あと10年もすると命名感覚がらっと入れ替わるのかもな トメとかがばーさんの名前になったようにな 笹田さん痩せた?
ピンクなら許す
ピンクは淫乱
淫乱と聞いて飛んできますた。なんの話?
淫乱だからといって黒ずんでいるとは限らないという話。
最近日記の更新がなくて寂しい。
開発が順調という証だよ 開発が行き詰まってくると「webをなめるな」とかlispユーザに喧嘩を 売ったりするようになる
今までrubyは他のスクリプト言語より5倍くらい遅かったから 本当にそれくらい早くなっていてもおかしくない
Matz is nice, so we are nice.
rubykaigiでグぐると2007と2006年のみで、2008のページが出てこないのは なんとかならんのか。 ruby会議だと一応2008がでるけど、2007の方が最初に出てくるのも。
いつになったらruby1.9でrailsが動くの? ずっと待ってるんだけど。
オープンソースの世界でも、「ただ待つ」自分に権威を感じ、「待たされる」ことに理不尽を感じる奴は居るんだよな。
お客さんですから(悪い意味で)
1.9.1でrailが動いたら開発に参加してやってもいい
1.9の側がRailsにあわせることはないから、Railsが1.9に対応しないといけないんじゃないかね
RailsのコミットログをRSSで見てるけど、1.9 compatと冠された エントリーがいっぱいあるお。
>>426 フフフ…奴らはマイナー番号まで表記しなかったことをじきに悔いるようになるのさ
さらっとヒドいこと言ってるな まあ1.8.2と1.8.4でもずいぶん違うし…
まぁ、1.9.0と1.9.0-1がすでに別物だしなぁ
そして恐ろしいことに、1.9.0は開発版 1.9.1は安定版なのである 素直に1.9.1ではなく、2.0として出せばいいと思うんだけどなぁ
それは分かっているが だからといって、バージョン番号付けの法則を変えていい理由にはならないだろう 混乱の元になるのに
Linuxだって2.6以降は命名則変えてるやん 2.7枝存在してないし
1.A.0にすれば万事解決 まさかZまでは到達しないだろうしw
NetBSDの轍を踏むつもりか
>>434 なぁに、base64なら1.Z.0の次は1.a.0でいけるw
>> 437 1.あ.0 まだまだいける
まだまだいくよー
>>438 UTF-8なのかUTF-16(BE/LE)なのかUTF-32(BE/LE)なのかShift_JISなのかCP932なのかEUC-JPなのかEUC-JP-MSなのかISO-2022-JPなのかISO-2022-JP-MSなのか、あと何があったっけ(あれ?)
# 意表を付いてEUC-KRとかGB2312とか
require するときって文字コード指定できないの?
>>441 そういうのは初心者スレでどうぞ
ちなみに、requireで直接文字コードを指定するのは不可能
1.8.xではrequireの前に$KCODEを変更しておくと、それに合わせて読んでくれる
requireの第二引数で指定出来るようにしろやボケってrequireなのだろう
誰がうまい棒
対処法は tmpfile へ $0 の文字コードに変換して書き出して eval するくらい?
じゃあライブラリ作るときお勧めの文字コードは何?
us-ascii
ソースコードにマニュアル埋め込むなんて所詮128バイトのメリケン文化
コンピュータってのはメリケン文化そのものなんだけどな trunk/insns.defとかソースコードに日本語埋め込んでたせいでトラブルが 起きたことあったよね。
なんで「文頭のコメント文字から改行記号までなにがなんても無視」という単純な動作ができないんだろう C とかあのへん全くやってないからわからんのだけど、そんなにも面倒で小難しい処理なん?
>>450 具体的に。
例えばC++の日本語対応関係で言えば、// コメントはバックスラで継続することに
なってるから中身を無視できないわけだが。
> // コメントはバックスラで継続する 誰だ、そんなめんどくさい仕様作ったの…
物理行と論理行うんぬんという話だと思われ 「// は1行コメントだけど、行末にバックスラッシュ使って改行隠してたら論理行としてはまだ1行のままじゃね?」 // 物理1行目 論理1行目 \ 物理2行目 論理1行目 \ 物理3行目 論理1行目 \ 字面の筋は通ってるが…
// 物理1行目 論理1行目 コメント // 物理2行目 論理2行目 コメント // 物理3行目 論理3行目 コメント 面倒だしこれでいいじゃんね コメントがバックスラッシュを「隠す」かどうかというのはわりと面倒な問題 スクリプト言語では1行コメントがバックスラッシュを隠すということが多いと思う # コメントです \ この行もコメントです \ まだまだコメントです という書き方ができるスクリプト言語って何かあるか?
Cはマクロ(プリプロセッサ)あるから更に大混乱だな
Rubyの仕様を決定する過程ってどんな感じでしょうか。 ワーキンググループがあって最終的に投票とかですか?
仕様は特にありません で、まあ、最終的には、まつもとゆきひろ当人とその事項に関係する日本人1人か2人程度で MLの議論を物凄く参考にしつつ実際にコード保守する人の権限でえいやーと決めます
一言で言えば「Matzの胸算用」と。
だからこそ今まではなんとか回ってきたんだけどな ある意味とても日本的だ
その結果出来たのが糞ライブラリの山
この流れで思い出したんだが、みんなコマンドライン引数の解析には何使ってる? 俺はいろいろ試してみて、最終的にROptに落ち着いた 他にも何か良さそうなライブラリがあれば教えて欲しい
> この流れで思い出した なにそれoptparseが糞ライブラリってことなの使いにくいってことなのひどい ちょっとだけインスタンスとメソッドとブロックの使い方が非標準的ってだけじゃない
簡単なやつなら自分で書くな ・・・・・・ライブラリがあるのを知らなかっただけだけど
この流れで思い出したんだが、みんなcgi引数の解析には何使ってる? 俺はいろいろ試してみて、最終的にrailsに落ち着いた
optparse結構楽だけどな。
optparse使いやすいけどなぁ。 最初はぎょっとしたが。
>>459 こういうのは誰かが強権発動しないと回らないよ。
どうせ仕様詳細に興味を持って発言する人なんて10人もいないし。
>>472 いや、むしろ、本当にどうでもいい詳細なところでわらわらと人が現れてああだこうだと自分の好みを主張して決まらないんだよ。
誰かが強権発動しないと、という結論は同じだが。
136 ジュダック(dion軍)[] 2008/05/26(月) 02:49:25.68 ID:m708hYS90 そういや高橋メソッドのプレゼン(つーか、画面遊び)をそのまま資料配布したバカがいた 資料1枚に画面8枚だかを両面印刷して、そして資料は20枚近くになってやがった 160コマ近くの資料を見せて、それで相手に何を伝えたいと思っているのかと
bikeshed問題
しかし、観てるだけのくせに外から難癖つけるばっかりっていうのも
きわめて日本的ではあるわな。
>>462
外からの意見を難癖つけられてると感じるあたりが日本的だわな
「公共の場で異見なんて出るはずがない」のが日本だからな
ねぇねぇ Ruby会議とハロプロ新人講演がかぶってんだけどどうしたらいい?
>>476 ただの難癖を「俺のこれは意見だ!」と言い張るのは日本的というか馬鹿だわな
きっとwebプログラミングをナメてるんだよ。
ちょいと質問。
ttp://www.ruby-lang.org/ja/man/html/_B1E9BBBBBBD2BCB0.html > 自己代入
> この違いは属性参照のときに
> obj.foo ||= true
> が、
> obj.foo = obj.foo || true
> でなく
> obj.foo || (obj.foo = true)
> と呼ばれることを示します。
これは、たとえば str ||= '文字列' は str || (str = '文字列') となってるってこと?
irb> str || (str = '文字列')
NameError: undefined local variable or method `str' for main:Object
from (irb):1
from :0
> これは、たとえば str ||= '文字列' は str || (str = '文字列') となってるってこと? そう。ただ属性アクセスじゃないけど > irb> str || (str = '文字列') > NameError: undefined local variable or method `str' for main:Object > from (irb):1 > from :0 これは str が未定義なのでこうなってる irb(main):001:0> foo = nil => nil irb(main):002:0> foo || (foo = 3) => 3 irb(main):003:0> foo ||= 4 => 3 irb(main):004:0> foo = nil => nil irb(main):005:0> foo ||= 4 => 4
>>483 > これは str が未定義なので
あ、わかりにくくて申し訳ない
||= の自己代入はインスタンス変数でよく見る書式なんだけど、
これ、実は、ローカル変数でも動作するんよ
irb> str2
NameError: undefined local variable or method `str2' for main:Object
from (irb):2
from :0
irb> str2 ||= '文字列'
"\312\270\273\372\316\363"
これってなんでかなと思って質問した次第
もしマニュアル通りの str || (str = '文字列') という内部動作だったら、
最初の左辺の str の評価で NameError が出そうだよね?
この記法だとまずnilが代入されるんかな > a += 1 => NoMethodError: undefined method `+' for nil:NilClass > a => nil
>>485 なにこの素敵機能
っていうか、これ何気にマズくね?
このへんは C のソース読まないと駄目だな きっとドキュメントにない処理が入ってるんだろう
>>484 意味的に str || (str = '文字列') ということであって、構文的にはそう書くと
未定義のエラーになる、ということではないかと。
(代入文は変数宣言のような扱いになるので str が初出になる str ||= '文字列' に
等価なのは、str || (str = '文字列') ではなく str = nil; str || (str = '文字列') に
なるのでは?)
代入イコールローカル変数の宣言だって前からいってるじゃん if false foo = 'foo' end p foo #=> nil
「代入文の存在をパースした瞬間に変数は作られる」とでも言うべきかね 一応マニュアルの変数のとこには書いてあるんだが、 困ったときに参照されないんでいまいち広まらないな > 宣言は、例え実行されなくても宣言とみなされます。 > > v = 1 if false # 代入は行われないが宣言は有効 > p defined?(v) # => "local-variable" > p v # => nil
しかしその理屈だと str || (str = '文字列') では NameError は出るはずがないことにならないか? str = '文字列' が宣言として扱われて str はとりあえず nil になるんだろ?
やっぱりソースコードがドキュメントってのは問題が(ry
>>491 str='文字列' の前に || の左の str が評価される
494 :
デフォルトの名無しさん :2008/05/27(火) 20:35:57
まっつんがGuidoに言ってたlambda式の拡張、"just plain ugly"で一刀両断ですなあ。
pep-3099
http://www.python.org/dev/peps/pep-3099/ lambda will not be renamed.
At one point lambda was slated for removal in Python 3000. Unfortunately no one was
able to come up with a better way of providing anonymous functions. And so lambda is
here to stay.
But it is here to stay as-is. Adding support for statements is a non-starter. It would
require allowing multi-line lambda expressions which would mean a multi-line
expression could suddenly exist. That would allow for multi-line arguments to function
calls, for instance. That is just plain ugly.
それ以前に、ruby_coreでついに->(){}に対する不満が爆発しとるがな。
そんなの難癖にすぎないよ
Ruby人口って実際のところ増えてるの? 過去数年分のMLのトラフィックとか求人にRubyという文字列が含まれてる件数とかの 定点観測データで推移が見られるものってどっかにないのかな。
オープンソースプロダクトの利用者推移を調べる妥当な方法はない、というのが研究結果だった気がする
主観でおkという意味ですね。わかります
matz_diary.alive?
>>478 くまくまの中の人乙。
rails本の2.0&ActiveScaffold対応改訂版マダ?
>>499 rubyを起動するとruby-lang.orgにパケット投げるようにすれば大体わかるだろう。
何というスパイウェア
pnm画像のバイナリ文字列を縮小したものを得たいのだけれど、 $ cat pnmscaletest.rb pnm = File.read('lena_std.pnm') IO.popen('pamscale 0.5', 'r+b') do |io| $stderr.puts(__LINE__) io.print pnm $stderr.puts(__LINE__) io.close_write $stderr.puts(__LINE__) scaled = io.read $stderr.puts(__LINE__) end $ ruby pnmscaletest.rb 3 ここで黙り込んでしまいます。。Ctrl-Cで止めると、 pnmscaletest.rb:4:in `write': Interrupt from pnmscaletest.rb:4:in `print' from pnmscaletest.rb:4 from pnmscaletest.rb:2:in `popen' from pnmscaletest.rb:2 どうしたらよいでしょう。
あ、目的はRMagickやRuby/GDを使わず(インストールせず)、netpbmでサムネイル画像を作ることです。
>>503 ,504
ActiveScaffoldだと、インストールされるたびに、errcount.com にパケットが
送られるよ。インストール数をカウントしているらしい。
my ActiveScaffold では、もちろん削ってる
509 :
デフォルトの名無しさん :2008/05/30(金) 01:19:11
久しぶりにpstore壊れた
まあ壊れること前提にしてないファイル構造だったら たとえばテキストファイルでも同じくらいの頻度で壊れるんだけどね バックアップの手間とかを考えると ディレクトリ構造を擬似データベースとみなして大量ファイルにするより 素直にデカいファイル群にしておいたほうがいいんだろか
で、
>>491 とかの ||= 動作説明問題はどうなった?
漏れにも謎だ
少なくとも
>>490 と
>>493 は矛盾するように見えるんだが
irb(main):001:0> s || s = 'blah'
NameError: undefined local variable or method `s' for main:Object
from (irb):1
from :0
irb(main):002:0> s
=> nil
こうもなるし
MLに質問投げとけ 少なくとも、マニュアルがわかりにくいことが原因なのは確かだし
エラーが出た後に変数が作られるっぽいね
>>514 それに関しては
begin
s || s = 'blah'
rescue
end
p s
と同じコードが動いてるだけだと思うぞ
s ||= 'blah' も代入式の一種だから、そこでsは作られる。 s || (s = 'blah') と等価というのは、実行時の動作に関する話。 構文上の解釈は当然異なる。
519 :
514 :2008/05/31(土) 14:31:04
>>517 thx。それで気づいたけどirbで試す時点で間違ってたのかもしれない
勉強不足なので出直してくるよ
Ruby1.8.7リリースきたー! 今回は追加されたメソッドがかなり多いな(特にArray絡み)
今日でたばっかのruby-1.8.7とrails2.1を動かしている猛者はおらんか
>>522 redmineに移行すんじゃね?知らんけど。
RuBBSのサポートBBSがなんかすごくなってるけどスパム? それとも1.8.7関連で何か起きてる?
1.8.7の使いどころって何だべ? うちはまだ1.8.2でいごかしてるんだが、そろそろうpしたほうがいいかな
1.9のバックポートに魅力感じなければ(まだ)不要かと 古さに不安覚えるのもわかるけど、1.8.6想定した方がいいんじゃね
1.8.2 だと Sarge とかかな? Ruby を楽しみたい(笑) のなら、野良コンパイルででも 1.8.6 入れとくがよろしいかと 要らなくなったら /usr/local/lib/ruby 以下のディレクトリと /usr/local/bin/ の ruby と ruby1.8 を消せばいい あ、 curses が使いたい時は libncurses5-dev openssl というか net/https が使いたい時は libssl-dev readline(irbの矢印キー) が使いたい時は libreadline5-dev のパッケージの事前インストールが必要 ./configure のオプションはたとえば --enable-openssl --with-openssl=/usr/include/openssl --enable-readline --with-readline-dir=/usr/include/readline こんなんでよろしこ
以下、信者が「そんなの○○すればいいだけじゃないか、こいつが馬鹿なだけ」とツッコミを入れるが その○○は信者以外にとってはたいして有難くない、という毎度おなじみのパターン。
どうせアンチの書いた大嘘だろ。
>>530 これはRubyが使われているかどうかの問題というよりも
「Base64のページにpackのことちゃんと書いとけよ」っていう、ドキュメント整備の問題では
記事そのものの大意には同感
使われてたら誰かが指摘するだろ 指摘してるのがるびまだけ、つまり業務とかで使ってる奴はいない
>>529 > ./configure のオプションはたとえば
> --enable-openssl --with-openssl=/usr/include/openssl --enable-readline --with-readline-dir=/usr/include/readline
> こんなんでよろしこ
ヘッダを指定するのは --with-hoge-include=...
それに --enable-hoge や --with-hoge-include はこの場合不要だろ。
>>530 コードにMagic Number埋め込んどいて環境が変わったら動きません、って
アホかと。
>>529 ヘッダファイルがインストールされてれば自動検知なんだっけか
538 :
> :2008/06/03(火) 22:33:35
>>537 見つかれば。/usr/include と /usr/local/include ぐらいは見てくれるかしらんが
妙なところにあったりすると見つけ損ねてくれたりする。
大して妙じゃなくても親切にパッケージ毎にディレクトリ掘ってくれてるおかげで見つか
らなかったり /usr/X11R6/{include,lib} なんて気にしちゃくれんなんてことが前は良く
あったさ。
俺のヘッダとライブラリは $HOME/Applications/{include,lib} あんだけどなあ。
>>538 /usr/include/openssl/ssl.hとか/usr/include/readline/readline.hもデフォ
ルトで探すぞ。
というか、--with-opensslだとディレクトリ指定になってないし、
--with-readline-dir=/usr/include/readlineだと、ヘッダを探すのは
/usr/include/readline/includeの下だ。
つまり、そのオプションは二つとも効果がない。
そしてデフォルトでは全部enableだから、--enableも意味がない。
> 大して妙じゃなくても親切にパッケージ毎にディレクトリ掘ってくれてるおかげで見つか
> らなかったり /usr/X11R6/{include,lib} なんて気にしちゃくれんなんてことが前は良く
> あったさ。
tkではdir_config("X11")してるから --with-X11-dir=/usr/X11R6 が利くはず。
>>530 で、思い出したけど、ActiveRecordでunsignedなタイプが使えなくて
困ったことがあったのを思い出した。
今は、使えるようになったの?
matz死んだの?
45002の意味がわからん
ruby-listか? 俺にもさっぱりだった。 エスパー待望。
Ruby 1.9になって、なんでもEnumeratorを返してくれるようになって 便利になった。 (1..1000000000).select(&:even?) とかで、偶数のリストをメモリの負担ほとんどなしで生成できる。すげえぜ。 でも、こいつを扱おうとすると.eachをつけないといけないんだよな。 (1..100000000).select(&:even?) do |n| n = hogehoge end とか出来てくれるともっと美しいんだけどなあ
547 :
546 :2008/06/05(木) 19:38:50
あれ、と思ったけど違った。 なんでブロック付きでもEnumeratorを返すようにしないんだろ・・・
LP64周りの修正が本体に入ったのも結構最近なような気がするな。
intel solarisでRubyを使っています。 /opt/csw/lib/ruby/1.8/ の下に i386-solaris2.11 や i386-solaris2.8 があるんですけど、どっちを使うかと いうのはどのようにして決定されますか。 今、i386-solaris2.11 を使ってほしいのに i386-solaris2.8 が 使われているという状態になっています。
根拠はないが rbconfig.rb の記述がまずいような気がする
2.8でコンパイルしたのが残ってるんだろ。 which -a ruby とでもやってから、それぞれどのバージョンか確認してみ。
最近、make cleanするとこんなエラーがでるようになった。 rmdir: failed to remove `.ext/i686-linux/enc/trans': No such file or directory make[1]: [clean] エラー 1 (無視されました) rmdir: failed to remove `.ext/i686-linux/enc': No such file or directory make[1]: [clean] エラー 1 (無視されました) rmdir: failed to remove `enc/trans': Directory not empty make[1]: [clean] エラー 1 (無視されました) rmdir: failed to remove `enc': Directory not empty make[1]: [clean] エラー 1 (無視されました) make[1]: ディレクトリ `/home/matz/ruby' から出ます ちゃんとcleanしろよ。 あと、makeでINSNSを作るときに毎回rm rubyってやってるのは馬鹿みたいなんだけど。
553 :
高野光弘問題 :2008/06/11(水) 23:59:14
takano32,TAKANO Mitsuhiroこと高野光弘(日立製作所社員、日本UNIXユーザ会幹事)が、 自身の『32nd diary』で公然と日立の機密を開示し、障害者差別発言をしている問題。 1981年11月12日 千葉県のディズニーランドのそばで誕生 2001年4月1日 千葉大学に入学 2005年4月1日 千葉大学大学院へ進学、日本UNIXユーザ会に入会 2007年4月1日 日立製作所に入社、神奈川県秦野市の寮へ 2007年8月22日 「ついに職場で人が倒れた」と公表 2007年11月13日 「情報漏えい」を言う上司に「死んだほうがいいよ」と暴言 2007年12月28日 「社内システムクソうんこ」と発言し、仕組みも暴露 2008年5月23日 機密漏洩問題について一応の謝罪 2008年5月26日 「給料泥棒とかうんぬん言われた」と謝罪を忘れて告白 2008年5月27日 「心バキバキ川田くん」と前日の発言者の名前を公言 2008年5月31日 「キチガイ」と日立のユーザーに障害者差別発言を連発 2006年10月27日(日立製作所に入社前に忠告されたこと) 「日記やコメントの投稿日時から勤務時間に業務外のことをしていることが判明」は 某社の某親会社が 2ch で祭られたように、NG です。 6月も勤務時間中に更新し続ける高野光弘君の『32nd diary』にツッコミをどうぞ
いちいち2chまで引っ張ってくるな,うっとおしい. 社内でやれ.
相変わらず gem install は重いなあ 30分以上もCPU使用率100パーセントだぞ そりゃさすがにPIIIは旧式CPUだけどさあ
gem install の時間は --no-ri --no-rdoc で半分になる マニュアルがインストールされないけどインストール時間半減のほうが大事だよな
rails入れた時は下手したら一週間かかるかと思った
RubyGemsってなんであんな異様に重いんだ おまけに、各作業の進行状況をほとんど表示してくれないから 実際にかかる時間以上に長く感じる
検索方法を改良したとかそんな小手先ではどうにもならんよな ChangeLogを読んで失笑したのは久しぶりだ コア開発者のマシンはパワフルであることが多いから、この問題に気づけない 気づいたときには一般ユーザーのマシンはフリーズして動かないだろうけどな
20MBのYAMLとか、あほかww
マジでもうすぐ出る RubyGems 1.2 で Bulk Update ができるようになって解消される …らしい
Bulk updateってなに?
てか、20MBも何を書いてあるんだ?ドキュメントそのものか?
Webブラウザで開くなり、DLしてheadで見るなりすればわkる
>>564 Gem::Specificationが13650エントリ。
>>566 thx
1エントリ辺り1.5kか・・・そんなもんかとは思うけど、しかしそんなにライブラリはないよね。
そのエントリは何が単位なんだろう
568 :
567 :2008/06/12(木) 23:37:33
>>565 の言うとおり、ブラウザで見てみたw
一番下のzyps(何をするものかは知らない)だけでも、
zyps-0.1.1: !ruby/object:Gem::Specification
zyps-0.2.1: !ruby/object:Gem::Specification
zyps-0.3.1: !ruby/object:Gem::Specification
zyps-0.4.1: !ruby/object:Gem::Specification
zyps-0.5.1: !ruby/object:Gem::Specification
zyps-0.5.2: !ruby/object:Gem::Specification
zyps-0.6.1: !ruby/object:Gem::Specification
zyps-0.6.2: !ruby/object:Gem::Specification
zyps-0.6.3: !ruby/object:Gem::Specification
zyps-0.7.0: !ruby/object:Gem::Specification
zyps-0.7.1: !ruby/object:Gem::Specification
zyps-0.7.2: !ruby/object:Gem::Specification
zyps-0.7.3: !ruby/object:Gem::Specification
zyps-0.7.4: !ruby/object:Gem::Specification
zyps-0.7.5: !ruby/object:Gem::Specification
zyps-0.7.6: !ruby/object:Gem::Specification
全部のマイナーバージョンを記録してるのね。正直、テキストベースの限界を超えてる仕様だと思った
すっきりはしたけどね
同じテキストベースにしても ファイルを小分けにしたり、YAMLストリーム形式にするだけで メモリ消費量も減ってだいぶ軽くなるだろうに
ファイルの小分けは問題の先送りにしかならないけどな 小分けにしたYAMLファイルの取得合計が10MBとかになったらまた同じ事が起きるだけだ 「ライブラリ名を投げると依存関係を解決してファイル群を返してくるCGI」があれば一発で解決するんだろうけど、鯖側の負担を避けたんだろう 似たような重い動作はCPANでもあるが… っていうか、依存関係を集中管理する必要あんのか? RubyForgeの個々のプロジェクトページに行って直接ファイル取得してるんだと思ってた …ああ、プロジェクト名とライブラリ名は一致しないのか
おいおい、KNOWNBUG(でもなぜかmakeではいまだにtest-knownbug)が すごい勢いで減ってるじゃないか。すげーすげー。 これでRailsも動くようになるの?
rubyってGUIライブラリいいのありますか? javaのswingのようなやつがあれば使いたいんですけど。 javaはなんかいろいろと大変なので^^;
漏れはLinuxでGnome使ってるので、Ruby-gnome2
困ったことに乱立中 開発が継続して行われていて、有名ライブラリのバインディングということで Ruby-GNOME2やwxRuby、FXRubyあたりが有望だと見ているんだが・・・・・使ったことがない
ruby-gnome2って日本語APIなくね? 確かglade使えるよね。
>>572 Rails+Browser
コールバックは使わない機能なんて言っている人もいるんで、
GUIライブラリには期待しないほうがいい。
Railsって、ネットアプリケーション作るテンプレートだっけ? jrubyでswing使うっていう手はどうですかね?
wxRuby有望なんだけど、もっと日本語ドキュメントが充実してればなー
>>572 Windows環境限定でいいなら、VisualuRubyかApolloのほぼ二択だと思う
>>580 APIリファレンスの日本語訳ってこと?
たしかにごくごく一部しか訳されてないね。
>>581 そうです。翻訳止まってますよね。
英語だときつい;;
ちなみに環境はUbuntuなので、VisualuRubyは使えなそう。
jrubyってインタプリタとして使えるんですか?
前にやったら毎回コンパイル入って偉い時間かかったんですけど。
Tkでええんちゃう
うん スクリプトの実行やメソッドの実行をボタン押すだけでやりたい、とかいう簡易な需要ならRuby/Tkで充分 Ruby/Tkはあれはあれで未来無いけどな
しつもーん。 require 'uri' uri = URI.parse('?hoge=huga') uri.normalize! p uri.path で、path が / になっちゃうのは URI として正当な動作? イメージ的にはここは何もしないで欲しい気分なんだけど。
>>585 uri/generic#normalize! の定義では path が空だと / を明示的に
セットしてるから、意図的な動作ではあるようだ。
中身は簡単だから再定義してしまえば?
RFC 2396 を読んでみた。
http://www.ietf.org/rfc/rfc2396.txt まず、与えられたURI('?hoge=huga)にはスキームがないし / で始まってないので、
階層URIの相対識別子として解釈される。
基底(base)URIは文書のコンテキストによるもので、
コンテキストがない場合にはアプリケーション依存とのこと。
(5.1.4. Default Base URI)
uri.rb は / としている。
正規化については
5.2. Resolving Relative References to Absolute Form
の処理が適用され、相対URIを基底URIを使って絶対URIに書き換えることになる。
C. Examples of Resolving Relative URI References
を見ると、
Base URI:
http://a/b/c/d;p?q Relative URI: ?y
→ resolved URI:
http://a/b/c/?y という計算なので、
Base URI: /
Relative URI: ?hoge=huga
→ resolved URI: /?hoge=huga
ということに。
589 :
nobodyさん :2008/06/19(木) 17:48:07
メソッド先頭のdef を書かなくていいように文法変更してよ! 蛇足。これがないとメソッドと他のものとの区別つかないのか? さすがは知恵遅れが作った言語。
君の案を聞かせてよ。 「できることが凄い」のではなく「できないことが知恵遅れ」なら、 まともなアイディアをここにあっさり書けるよね?
def foo p foo end の変わりに foo{ p foo } とか書くってこと?
というか時間帯的にアンチスレで負けてのこのこやって来ただけにしか見えんのだが
>>591 「区別をつけない」に固執するときっとこんな感じだ
ローカル変数とかと書き方いっしょだぜ
foo = {|param1, param2|
puts param1 if param2 === 'ok'
}
なんかこれに思いっ切り酷似したものを頻繁に見てる気もするがきっと気のせいだな
594 :
nobodyさん :2008/06/19(木) 18:17:36
595 :
nobodyさん :2008/06/19(木) 18:25:54
>>593 >「区別をつけない」に固執するときっとこんな感じだ
ローカル変数とかと書き方いっしょだぜ
それじゃあdef撤廃できるってこと?
foo(param1, param2) {
puts param1 if param2 === 'ok'
}
これがいい。
=とか|とかがあると代入とか論理和を連想させられる。
C流を踏襲すればいいのになんでこねくった記法にするのか。
putsとかのかわりのキーワードでも先に考えるべきだ。
どう見てもブロック付きメソッド呼び出しです 本当にありがとうございました
597 :
nobodyさん :2008/06/19(木) 18:33:13
>>593 foo = {|param1, param2|
puts param1 if param2 === 'ok'
}
これはクラスの外から呼び出せますか?
今回の人は全然根性ないな define_method があるから def 撤廃とかそういうこと言う人じゃないとつまらん 帰れ帰れ
こんなところで提案しても意味ないからさっさとまっつんに電話してみれ
Ruby会議のUstreamチャットで 開発者に向かって提案したらいいんじゃないかな。 期待してる。
ソースの可読性が落ちそうだな
つくばに出発、
そういや python も def だが、あっちにも特攻してるんだろうか。
golfに備えて1.8.7をmake中。
ていうか、ソースコードにちゃんとparse.yが入ってるんだからパッチ作ってみせてね。 あんたは知恵遅れじゃないからできないはずないよね。
608 :
デフォルトの名無しさん :2008/06/20(金) 17:30:05
プログラミング 梁山泊
エコーがすごいんだけど俺だけかな
Matz講演、、、 抽象的だなあ。SmalltalkとErlangをライバル視してるのはよくわかった
話すネタなかったんじゃね 本人降臨は2年に1回くらいのほうが中身詰まってていいのかも
gdgdになってきた
細かい話はわからなかったけど、とにかくviみたいな # -*-coding: utf-8 -*- のを書けということはわかった。
616 :
デフォルトの名無しさん :2008/06/21(土) 18:02:28
利用者のIT製品に対する基本姿勢は、Microsoftを相手にするときのそれが最も健全であって、 ブーブー言いながら使うのが一番だと思うが、最近は企業ブランド崇拝みたいのができあがっていて、 Apple教団はご愛嬌と思っていたが、何だかこれも同じような感じで、嫌な雰囲気だ。Googleしかり。 特にヘビーユーザーがそういう信者というか、エヴァンジェリストになって 教義に染まない利用者の不満をさえぎる壁になると異様。 そういうのって普及前のファンダムの色が残っているから、と楽観視していたのに。 これだけシェアを拡大しても、いっこうにあらたまらないな。
っていうか、Microsoft製品以外でそういう信者がいないプロダクトなんて 見たことないがw
ブーブー言いながら追随されることをメインとするのは、支配者だけだよな。 分野に限らず。
ruby 1.8.7 p22
621 :
nobodyさん :2008/06/22(日) 00:23:41
>ていうか、ソースコードにちゃんとparse.yが入ってるんだからパッチ作ってみせてね。 あんたは知恵遅れじゃないからできないはずないよね。 ソースコードいろいろ読みました。 オブジェクト指向の言語なのに解析はCとかで出来てるんですね。 これを見るとdef消すのは難しそうだけど ソースコードの中のファイル名の'keywords'の中のdefの行のdefを funcとかに変えればdefから別のキーワードに変えられそうです。
別にいいけど、その理屈だと標準ライブラリとか第三者のライブラリとかが軒並み動作しないぞ
funcにかえればいいんかよ。おもしろい人だな。
動画とかどっかにあがる予定ある?
>>624 そんなことしたらわざわざ金かけてカンファレンス開いた意味ないじゃん
行かなくてもなんとかなるんだから
626 :
デフォルトの名無しさん :2008/06/22(日) 01:30:31
何か知らんが、Windowsプログラミングをもっとも簡単にできる 言語は何? VB? C#? Java? それともやっぱりC/C++?
このスレで聞いているということは・・・・、そう、Rubyです
Tcl/Tk ならエディタで書いただけでウィンドウが作成できます!
WindowsならVB,C#
1.8.6 と 1.8.7 の違いってどこかに纏めてありますか?
まあ「1.8.6に2.0のメソッドをいくつか持ってきたよリリース」と思ってもらえばおk
やる夫で学ぶJRuby ウpキボン
639 :
635 :2008/06/23(月) 15:34:45
>>633 便利なメソッドが山のようにあって楽しそうなんだが
Symbol#to_procのメリットだけがよく分からん
643 :
日立バキバキ高野くん祭り :2008/06/23(月) 19:59:51
1.日立製作所社員の高野くん(高野光弘)が会社を誹謗中傷して機密も漏洩
2.日立のユーザーにも「キチガイ」との障害者差別発言
3.日立製作所の企業イメージをバキバキにする
4.自身のサイトの『32nd diary』に掲載
5.日立製作所に通報される
6.あせって似顔絵削除
7.火に油を注ぐだけで所属する日本UNIXユーザ会にも通報祭り勃発
8.「給料泥棒」と説教される
9.「殺します」と殺人予告をして警察に事情を聞かれる←イマココ
高野光弘の行動
現在は、過去の記事を閲覧できなくして、「本日の日記はツッコミ数の制限を越えています」としています。
まずは、不愉快な思いをされた方々に謝罪するべきなのではないでしょうか。
高野光弘の発言
「まぁ、どこの団体もそんなにヤワじゃないので、平気なんですけども。
日本UNIXユーザ会が一番対応に慣れてる感じ。」
日本UNIXユーザ会が対応に慣れているか、みなさん確認してみてください。
連絡先
http://www.net.intap.or.jp/oiia/cont2/p0402.html%7B0recid=10168.html
JRubyって結局何に使うのがいいんだろう。 漏れは基本的にローカルのアプリを作るのにしかRubyを使ってないから、 JavaのAPIを使ってGUI作るのに便利かなあとか思ってるんだけど。 ちょっとした小さいツールだと、起動の遅さが気になって使えないよねえ。
JavaならOKという環境にRuby実行環境を持ち込みたいとき
>>644 Javaは入ってるけど、Rubyが入ってないサーバ。
いや、エンタープライズ用途だとごろごろしてるぞ、そういうの。
仕事でやってるとそういうのがでてくるのか。 漏れは趣味だから、Rubyがないなら入れればいいし レンタルサーバとかにも大抵Rubyはある。 だからそういうことでは困らないんだよなあ。
> オブジェクト指向スクリプト言語のRubyに任意のコードが実行される脆弱性が見つかり、アップデートが公開された。 これは何? rubyを使っているサイトで試してみたいな。 なんか一昔のPHPみたいに致命的なバグが見つかるね。 まだ枯れていない言語だから公開系のウェブサイトにはまだ使うには無謀というところかな。
>なんか一昔のPHPみたいに致命的なバグが見つかるね。 一昔?
バグバグでもPHPは使われてるんだからキジャク性は関係ないだろ
>>644 Javaアプリのテストにオススメ。
たとえば、あるライブラリの機能をテストするための
シェルがほしくなったらJRuby+irbで簡単に作れる。
補完もきくしね。
652 :
nobodyさん :2008/06/23(月) 23:08:04
RubyはJavaのLog4jみたいなクラスとメソッドごとにレベルを指定して出力する ログ出力ライブラリはあるの? それともCのprintfみたいなことするの?
654 :
使用書無しさん :2008/06/24(火) 00:06:13
655 :
使用書無しさん :2008/06/24(火) 00:06:35
java 最高
656 :
デフォルトの名無しさん :2008/06/24(火) 00:20:10
>>654 とりあえずLinaxというプラットホームは初耳
Bezzer curveなんて単語あったっけ Bezier curve?
658 :
nobodyさん :2008/06/24(火) 00:50:41
日本企業の正社員は技術の知識も語学力もない。そうじゃないとすると会社広報まで派遣任せか。
低レベル質問で申し訳ないんだけど,話の流れで聞かせて. * securerandom ってどういうシーンで使うの?
名前からして暗号学的に安全な乱数生成モジュールじゃないかね (普通の乱数は、今までの値から次の値を予測できる) 予測できない乱数は、例えばストリーム暗号なんかに応用できる
>>661 なるほどー.
技術的には面白そうだ!なんか試してみよー
thx!
665 :
デフォルトの名無しさん :2008/06/27(金) 01:20:44
","で区切られた10個くらいのデータがある一行の文字列があるのですが、 "aaa,bbb,1000,3000,vvv,zzz,,4444444,ggg,33333" これを配列にするにはどうすればよいですか? よろしくお願いします。
このWSHのJavaScriptをRubyに移植できませんかね?
var i = 16909152;
i=i>
>>23 |i<<9;
/* 67551234 が出力される */
WScript.Echo(i);
>>665 "aaa,bbb,1000,3000,vvv,zzz,,4444444,ggg,33333".split(',')
>>666 i = 16909152
i = (i >> 23 | i << 9) & ((1 << 32) - 1)
puts i
>>665 素人が調べながら書いてみた。こんなので大丈夫?(メモリの確保とかわかんね)
#include <stdio.h>
#include <stdlib.h>
int main()
{
char str[] = "aaa,bbb,1000,3000,vvv,zzz,,4444444,ggg,33333";
char *t, *result[10];
int i,j,count=0,num=0;
for(i=0; i<(sizeof(str)); i++){
if(str[i] == ',' || i == sizeof(str)-1){
t = (char *)malloc(sizeof(char)*(count+1));
for(j=0; j<count; j++){
t[j] = str[(i-count+j)];
}
t[j+1] = '\0';
result[num++] = t;
count = 0;
} else {
count++;
}
}
for(i=0; i<num; i++){
printf("%d: %s\n", i, result[i]);
free(result[i]);
}
return 1;
}
これってRuby…?
670 :
666 :2008/06/27(金) 09:35:16
671 :
デフォルトの名無しさん :2008/06/27(金) 09:52:24
正規表現についての質問です。 ・入力された文章の英数字部分を[]でくくる。 ・入力された文章の<div>以外の < を < に変換する。 というものです。 宜しくお願いします。
>宜しくお願いします。 なにが?
674 :
666 :2008/06/27(金) 10:16:46
>>667 出来たと思ったけど、出来てなかったです。
JavaScriptだと
var i = 8135682;
i=i>
>>23 |i<<9;
/* -129498112 が出力される */
WScript.Echo(i);
-129498112 が出力されるんですけど、
Rubyだと、
i = 8135682
i = (i >> 23 | i << 9) & ((1 << 32) - 1)
# 4165469184 が出力される
puts i
4165469184 が出力されてしまいます。
>>674 667じゃないけど、iの範囲と、オーバーフロー、アンダーフロー時の仕様が必要じゃね?
Ruby1.9って pthread ない環境で make できるの?
Windowsなら。
Windowsでもなくて pthread もなくての話だお。
言語明瞭意味不明。 これは、なんとか大臣の必須の素質。 あとで、つっこまれないために必要。 けど、質問者がこれやると、 誰も返事しないと思う。
なんで意味不明なんだ?
つ recursion
>>679 何を言いたいのかわかんない。明確に書いて。
既に明確だから、これはお前の頭のほうをどうにかすべき状況。
>>678 残念ながら、1.9では今のところグリーンスレッドはサポートされていない。
Fiberは残ってるので、復活するかもしれないが。
ほんとこのスレって誰が書いてるかよくわかるよなw
何でも見破る俺、みたいな感じすか。
687 :
デフォルトの名無しさん :2008/06/28(土) 12:54:30
sort_by の結果って昇順みたいなのですが、これを降順にするにはどうすればよいですか?
(1) reverseでひっくり返す (2) sort_by に渡すブロックがプラマイ逆の値を返すようにする
(3) Matzを説得する
3だけ難易度が高いw
>典型的な返事(1) >とでもすればいくらでもxxできると思うのですが、それではだめということ? このmatzのレスポンスは確かに典型的ww 妥当な姿勢だと思うけど、MLで出会うとなぜかたまにイラっとくるw
「スレ立てるまでもない質問」スレで解決出来なかったので質問します EUC-JP 文字列の表示幅 (半角何文字分か?) を取得したいのですが うまい方法はありませんか? EUC-JP は例えば以下の特徴があり、表示幅をバイト数で単純に求められません ・半角カタカナが 2 bytes ・一部の全角文字が 3 bytes また、タブ文字 (半角 1 〜 8 文字に相当) も含んでいます
>>693 p 'オブジェクト指向プログラミング言語'.split(//e).length
ってか今初心者スレってないの?
>>694 それって全角文字も 1 文字ってカウントされませんか?
あとタブ文字の文字数は正しく扱われますか?
>>696 そこまでわかってるんならもう一処理かませば文字幅も出るだろうにwww
何というDQ(ry
っ「地道に条件分け」
タブが何文字幅になるかは設定(環境)で変わるってのは理解できてるか?
Matzは神 といいつつおれはjavaを使っています。 Rubyの時代は終わった。GUIがクソ。速度もクソ。
Rubyの良いところって何ですか? Pythonより一つでも優れてることがあるなら教えて下さい。 日本人が作った言語だから誇らしいとかですか???
充実したメソッド群じゃないかな Regexp#scanとか良すぎ でも文法はPythonのほうが個人的には好み それにしても「一つでも優れてることがあるなら」ってどんだけ
釣りにマジレスいくない
GUI方面が他の言語と比べて微妙なのは、本当にどうにかならんかな
Apolloは強力だけど、今のところLinuxではまともに動かないし
WxRubyには日本語ドキュメントや日本語の使えるGUIビルダーが無いし
WideStudioは外観がなじまないし
>>702 定期的に沸いてるからスルー推奨
=とかnewとか何でもかんでもメソッドなのが気に入らない 無理に統一しようとして逆に意味分からなくなってない?
>>704 他の言語ってそんなにGUI環境整ってる?
>>705 演算子のオーバライド(笑)がシンプルに理解できていいじゃまいか
脳が足りない子にはRubyお勧め
GUIがどうとか言ってるやつは、Mac買ってRubyCocoaでもいじれば いくらでも素敵なGUIが作れると思うのですが、それではだめということ?
Mac買うお金がありません。もちろんMSは嫌いです。 でもスクリプト言語でGUIが作りたくてたまりませんっていう人なんだろうな。
Ruby-gnome2はいったい。 Pythonだといろいろ充実してるんだけどなあ・・ やっぱり英語圏はいいな
なんか胡散臭いんだよねRubyって。色々と。
そういえばJRubyでSwingって手もあるか
文句があるなら使わなきゃいいのに。そもそもPythonで満足してんんだろ?
Ruby厨ってどうして馬鹿が多いの???
それを欲しい人がそれを作るしかないんだよ。
Rubyって日本語にclosedだから楽して金儲け主義の日本の 出版社には受けがよくて本が色々出たけど、boomは 過ぎ去った感あるよね。
>>699 分かるけど UNIX 系では慣習的に 8 文字でしょ?
だけど
>>693 は
> タブ文字 (半角 1 〜 8 文字に相当)
って書いてるんだよな。
カラム 7 (mod 8) に TAB があったら 1 文字分だし
カラム 0 (mod 8) に TAB があったら 8 文字分でしょう
まあ 1 〜 8 の可変幅と解釈したとしても
>>699 のようなレスにはならないと思うけど
>>721 > 分かるけど UNIX 系では慣習的に 8 文字でしょ?
いや。
ema糞厨の局所的変態的スタンダードをUNIXの習慣にしないでください
正直8文字も使ってたら、コーディングには横幅いくらあっても足らんな 特に最近の傾向では横に長くなって仕方ないし Ruby標準?の2ってのは、慣れると結構いいな
4派もいたかと ごく一部には3派もいるらしい。変態だと言われてるとかw
javaのSwingが異常すぎる。 jrubyってコンパイル遅くないか? なんかモードがあるのかな?コンパイルに1分くらいかかる。
字下げの為のタブと、表組みの為のタブとで意味は違うしね むしろ字下げでタブを使うのが、どちらかというと邪道かも知れん そこに、言語や規約に応じた字下げの適数もあるだろうし「タブの標準」は マルチスタンダードでも仕方ない
まーたはじまった
こういうどうでもいいことは盛り上がるよなw 技術的なことになるとさぱーりなやつに限って。
俺の会社は基本3字下げ defとかendとか3字の単語が多いから綺麗に揃うよ
>>728 その辺に転がってた
require 'java'
JFrame = javax.swing.JFrame
frame = JFrame.new("Hello Swing")
frame.getContentPane.add javax.swing.JLabel.new("Hello World") ←(3)
frame.setDefaultCloseOperation JFrame::EXIT_ON_CLOSE ←(4)
frame.pack
frame.setVisible true
こんなコードをswing.rbとして
jruby swing.rb
で実行してみたけど、せいぜい5〜10sだったよ。
Celeron 1.8GHz、mem 512MBのマシンで。
あおきさんかわいそす・・・
タブインデントして各々エディタ側で好きに表示すりゃいいのに なぜ彼らは最適なスペース個数を求めて 十年一日な宗教戦争を繰り返し続けるのか。 全く不思議な連中だよ。
タブのみで構成されてるならいいけど、ときどきスペースがまざってるやつがいて。。
>>736 あんたみたいなハードタブ絶対主義者がいるからだよw
別に本気で言ってるわけじゃないし ニーソ派と白スク派の争いみたいなもん
>>736 >>737 v = hoge.page?(moge)
? # なんか長い記述その1
: # なんか長い記述その2
;
こういうインデントをする人が居て、 = と ? と : と ; の位置を
揃えたいとかのときに、ハードタブにスペースが混ざるらしい。
んで、こういうインデントを肯定すると、全部ソフトタブにして
しまえって言うのにも、一理あるなとなるらしいよ。
741 :
740 :2008/06/29(日) 21:23:06
>>740 って書いてみたけど、これはRubyでは思いっきり通じない記述だな。スマソw
まざってるのなんとかしてほしいなあれ 添付ライブラリくらい揃えてくれよ
公式リファレンス刷新みたいな足場固めが評価されていないのは厳しいな なんというか本当に胡散臭くなってきたわ
添付ライブラリのことを言うなら、いい加減日本語ソースを入れるのは止めてほしいなあ>ささださん Rubyの国際化を妨げている
>>745 きっとタブはインデントにしか使わない人なんだろう。
実行文の後にコメント入れる時にはスペースしか使わないんだ。多分。
みんな色々考えてるんですね スペース2回打って2文字下げしてた俺は馬鹿なのでしょうか? 一般的にはタブを2文字に設定してタブでインデントするのかな
>>747 エディタによってインデント専用のキーバインドがあったり
Enter キー叩いたときに自動で次の行のインデントが入ったりするよ
インデントの結果は半角空白が入ったりタブが混在したり設定によって様々
eclipseしか使えないゆとりな俺はどの言語でもハードタブ以外考えられんわ 会社でもスペースでインデントしたら怒られるし。 実務でスペースインデントしてる人なんているの?
750 :
704 :2008/06/30(月) 00:26:00
>>706 >>710 DelphiとかVisualBasicとか、あの辺をイメージしてたんだけど
よく考えると、スクリプト言語ならそれほど大きな違いはないかもしれない
適当なこと言って申し訳ない
>>708 オープンソース版のQtとqtruby4をインストールして少し触ってみたけど、これは良さそうだ
dll類が少しサイズ大きい(合計20MB少し)ことを除けば便利に使えそう
WxGladeも試してみたけど、日本語表示や動作の不安定さで断念
>>711 RubyCocoaの実力がわからない状態で、それだけのためにMac買うのはちょっと……
実務だけどスペースインデント。 RailsとRubyのお仕事だけど。 vi, emacs, TextMate 混在だし、lessで見た時に崩れるっていうのもアレで。
ソースコードからタブ追放
>>752 その思想の結果がYAMLのスペースインデント強制ですね、わかります
最初キーボード作ったやつがTabキーをスペース2つにバインドすればよかったんだ 計算機の00ボタンみたいに
ほうほう。で、バックスペースのバインドはどう切り分けるの。 前がスペース二つなら強制で二つ消すか? ソフトでやるこったから結局タブ派論争の解決にならんわよ ソース整形ツール(タブ問題だけなら正規表現で丸められる話だけど)と タブ周り自在に設計できるエディタで個々人の趣味吸収すりゃええがな
ruby-mode.elに (setq-default indent-tabs-mode nil) 書いとけ。
>>750 RubyのGUI対応は十分叩かれてもいいレベル
叩いてどーなるもんでもないと思うが。
cgi.rbのことですね、わかります
叩くな。作れ。
>>755 >タブ周り自在に設計できるエディタで個々人の趣味吸収すりゃええがな
それで済む話だといいんだが
現代にはインデント指向のフォーマット(Python/YAML/Markdown)があるため話がややこしく
RubyでGUIとか言ってる人たちは、 どういう状態になるのが理想なの? 他の言語のアレとかでもいいから、 何か具体例とか方針を教えて欲しいな。
>>762 Delphiのように何も考えずにGUIでひゃっほいできる状態
AWT というか Swing というか? そうじゃなくて、 もしかして VB のようなものが求められているのかなあ。
RubyCocoaならインターフェースビルダー使えるな
Ruby/Gtk2ならGlade使えばいいやんけ
一番の問題は、GUIライブラリが少ないことではなく 色々あるのに広まっていないことなんだよな 今でもRuby/TkとVisualuRubyくらいしか知らないユーザーは、決して少なくないはず
Ruby-Gnome2は(Linuxでは)結構いい選択だとも思ったけど、 リファレンスがほとんど英語のままだったりするんだよね。 チュートリアルは日本語なんだけど。 いくつか書こうかとも思ったけど、知識も技術も低いから 返って迷惑になるかなあとか
ぜひ翻訳してください。 まぁおれはjavaユーザですけど。EclipseとJavaは無敵のコンビ
JRubyの初期動作がもう少し早くなれば、JRuby+Swingという選択肢も 出てくるんだけどなあ。ちと気になる。
俺もメイド喫茶でまぜまぜもえもえしたいぜ!
>>762 DelphiのようにSwingコンポが扱える環境
775 :
デフォルトの名無しさん :2008/07/01(火) 00:36:29
>>775 追記ちゃんと読んだ? あと、俺はJava好きだぞ。(Eclipseとセットでだがな)
しまった、コピペにレスしてしもた。
抹消線おおすぎだw
うわぁ。Rubyについてちょっと否定的な事を書くと、みんなでフルボッコにして Rubyは悪くないです。すばらしいです。って言わせるんだね。
抹消線の多さからして、ちっとも「ちょっと」じゃないのは明白だし、 別に訂正しなくても全然構わないブログの記事を訂正したということは、 間違いを認めたということだから、「言わせてる」んじゃなくて「(自ら)言ってる」わけだね。
> 別に訂正しなくても全然構わない まったくもってそのとおりだよねぇ。 ブログ主ファビョり過ぎだよ。もっと自身もって Ruby 信者きもいよ、って言えばいいのに。
782 :
781 :2008/07/01(火) 10:18:21
×自身 ○自信
ビビり杉、の間違いだろw っていうか、ビビってみせておいて 「Ruby信者ってこんなに恐いんですよー」って言いたいとかなwwwww
「客観的な多くの人々の一人として乗り込んでみました」 っていうニュアンスを最初に選んだのが、間違いの元だった気がするね。 初めから「独断と偏見」を押し出していれば、後から何を指摘されたって 「これはボクの独断と偏見だって言ってるじゃないですか〜ヘラヘラ」 みたいに逃げ切れる。 世のブログの9割以上は、物を知らないことや思考力が無いことをその言い訳で乗り切って、 ゴミみたいな記事をいちおうは「そういうモノ」として成立させてるわけだ。 なのについうっかり客観的なつもりで書いてしまったから、そうじゃないところを徹底的に指摘されて、 色々と直さざるを得なかった、と。
Rubyにかかわるとろくなことにならない
PowerShellが神過ぎて最近めっきりRubyを使う機会が減ったな。
PowerShellは存在自体が富豪だからなあ 何年かしてPCスペックが底上がりしたら流行るかも
もうそいつに仕事依頼するのやめようとおもいはじめてるおれ。。。
オブジェクトobjがクラスClsあるいはそのサブクラスのインスタンスで あるかどうかを判定したい、ただし、Clsが定義されているかどうかは 不明、というとき、どのように記述するのが普通ですか? とりあえずこんな感じにしてみたのですが、もう少しまっとうな方法が あってもよさそうな……。 >> obj = nil => nil >> Object.const_defined?(:Cls) && obj.is_a?(Cls) => false >> class Cls; end; obj = Cls.new => #<Cls:0x7fe89430> >> Object.const_defined?(:Cls) && obj.is_a?(Cls) => true
obj.class.ancestors はどう?
const_defined? 使うよりは defined? Cls 使う方が普通かも
793 :
693 :2008/07/02(水) 00:28:15
結局、Ruby だから日本語処理に有利とかそういうこともなく Ruby でも自力で文字コードを解析しないと駄目なんですかね?
>> 793 Kconvなり使ってればいいだろ
>>791 Clsが未定義のとき、評価される式に定数Clsを含められない、という縛りが
あるので、ancestorsの中を調べるときにやっぱり困るという問題が……。
>>792 をを、そういうモノが。Benchmarkで軽く評価してみますた。すると、何とも
微妙な結果が。まぁ、1処理に1回くらいしか動かない部分で100万分の1秒以下
の差なんてゴミみたいなもんなのですが。
require 'benchmark'
n = 1000000
Benchmark.bm do |x|
x.report("null ") { n.times do; end }
x.report("const_defined?(1)") { n.times do; Object.const_defined?(:Cls); end }
x.report("defined?(1) ") { n.times do; defined? Cls; end }
end
class Cls; end
Benchmark.bm do |x|
x.report("const_defined?(2)") { n.times do; Object.const_defined?(:Cls); end }
x.report("defined?(2) ") { n.times do; defined? Cls; end }
end
user system total real
null 0.078000 0.000000 0.078000 ( 0.078000)
const_defined?(1) 0.282000 0.000000 0.282000 ( 0.281000)
defined?(1) 0.171000 0.000000 0.171000 ( 0.172000)
user system total real
const_defined?(2) 0.250000 0.000000 0.250000 ( 0.250000)
defined?(2) 0.625000 0.000000 0.625000 ( 0.625000)
>>794 どうも
EUC-JP から Shift_JIS に変換すればバイト長と文字幅が一致するかな
タブの問題が解決しないけど…
Perl なら
1 while s/\t+/' ' x (length($&) * 8 - length($`) % 8)/e;
という 1 Liner で $_ のタブを半角スペースに展開できるみたいだけど
untabify や expand に相当する機能が標準ライブラリとして提供されてたりしないのだろうか…?
warata
>>795 ancestors.map(&:to_s).include?("Cls")
じゃぁだめなのかねぇ
>>801 字面からして遅そうですが、実測するとやっぱり
>>790 より1桁遅かったです。
&& obj.is_a?(Cls) まで加えると、実はdefined?よりconst_defined?
の方が速かったという……。(でも字面はdefined?の方がきれいなんだよな)
なんかとてつもなくアブノーマルなことをしようとしてるようにしか見えんのだが。 それが速くないと何が困るんだ? もう少し具体的な用途とかを解説してくれ。速くする意味が分からん。
意味を求める意味がわからん
セキュリティフィクスのあたった ruby-1.8.6-p230 で Rails が動かなくなって10日以上たつのに、 いったいいつになったら修正版が出るんだ? 大体、メンテナンスリリースで非互換になるような修正が 入るって、どんなリリースエンジニアリングしてるんだろ?
セキュリティ上の修正なのなら、文句はRuby本体ではなくRailsに言うべきなのではないかと… あーでもどうだろう
>>807 修正ミスってSEGVが発生してるんじゃねーの?
You security people are insane. -- Linus Torlvalds
Ruby本体側の修正が妥当なのなら、Railsが折れてフォローアップすべきだと思える 新機能つけてみました系ならともかく、一応セキュリティ修正だろ
妥当じゃねーよ。ただのバグ。
え、具体的にどのへんが原因で?
>>808 なんかもう、phpにwebアプリ舐めるなとか言ってたmatzに対して
アプリ舐めるなって言いたい気分だ
マシなサンドボックス提案でも出してからほざけよ
クズ挙動はクズ挙動、広く周知してなんぼ
>>813 セキュリティーフィックスといいつつパッチが100以上あたっているからわからないwww
海外のブログで「Rubyの脆弱性への対処は大失敗だ」とか言われてるな
1.8じゃ根本解決無理の流れだな
Railsの行儀が悪すぎなんだろ。ActiveSupport(笑)
あれか。ひさしを貸して母屋をとられるというw
修正版出そうとしたらなんか物言いが付いてるんで、いまそれ待ち。
あとねえ、リリースエンジニアリングはいちおうちゃんとテストは通してから 出してるよ(ってかコミットの前に必ずテスト通してからコミットしてる)。逆 に言うとそれ以上のことはしてない。どこかにいいリリースエンジニアリング のテキスト、ないかなあ。前に一時期探してみたんだけどどうにも探し方が悪 かったのかあんまり見つからないんだよね。なんか経験則みたいなのはそこそ こ溜まってきたけど、今の俺に足りないのはしっかりした理論的バックグラウ ンドだと感じている。
リリース前に実アプリを動かして問題を報告してくれるテスターが少ないんだと思う。 あと、今回の直接的な原因は仕様の曖昧さに由来すると思っているのだけど、 それは RubySpec が充実すれば Rails 側に「RubySpec 守れよ」 という 圧力というか守ってない方が悪いよね的な空気にできるんじゃないかと期待。 最近の Firefox は傍から見た限りでは結構リリースエンジニアリングが 上手くいってると思うのだけど、どういう体制をとってるのかねえ。 新規開発をやる期間とバグ修正だけやる期間を分けるとかしてるんだろうか。
戦うプログラマー
>>822 それはリリースエンジニアリングとは言わないだろwww
826 :
デフォルトの名無しさん :2008/07/05(土) 02:52:30
>>717 ソレよりも顧客を騙してビジネスサイトにRuby採用を訴える方が罪深い
信頼性って障害が起こったときの対応で決まるよね
今こそルビーのピアスと羊の刺青を入れてMatzの本気度を全世界にアピールすべき
リリースエンジニアリングには理論的なテキストはないんじゃないか? 各プロジェクト(*BSD, Linux各ディストリ, etc)ごとに経験則があるだけで。
>>827 Java屋からRubyに乗り換えたようなとこはある意味とてもわかりやすくて避けやすい
RubyをきちんとやったのならJavaなりPHPなりの「本体」を捨てる理由がないことに気づくと思うんだが
そんなんだからお前らはJavaビジネスで負けて逃げ出したんだよ、とかそんな感じだ
アンチスレで無知さらして逃げてきたのが多いのは何故?
あなたが「そうだと思いたい」からでしょう。 あなたの脳内世界限定で、そういう人はこれからももっともっと増えると思いますよ。
>>821 おまえ嫌われてるんだよ。2ちゃんに来るな。
>>831 結局言語の問題じゃなくて人の問題なんだよな、どこまで行っても……。
いまだにSEGVの話公式サイトに書いてないんだなwww
言語側に問題は無いとまでは言わないけど こういった修正とか対応の早さをシビアに求められるような仕事に対して 安易にRubyを採用させようとする人側の問題は大きいと感じる
Rubyコミュニティ(笑)としてはぶっちゃけ迷惑だよな 「Rubyによる迅速プロトタイプでお客様の要望をがっちりキャッチ、そして熟練のJavaプログラミングで堅牢な運用をご提供」 みたいなステキなアオリ文句の会社とか出てこないもんかね
そもそもの問題として、Railsってあんま快く思われてないよな
>>838 Rubyで記述されてるってだけで本質的には異言語だからねえ
まあしかしPureRuby思考では絶対に生まれ得なかった産物であることも確かでして、えー、そのなんと言いますか
>>825 じゃあどういうのをリリースエンジニアリングって言う?
マジ参考にするんで教えて。
>>821 知ってるが2ちゃんねらには嫌われるくらいがちょうどいいだろ。
>>836 公式サイト俺の管轄じゃなくて申し訳ない。
中の人に一応伝えとく。期待はすんな。
>>842 みたいなのが寄生してたら・・・それが一番問題なんじゃないの。ただのナリキリ君ならいいんだけど。
xxはこれ出来るのに、yyは何で出来ないんだ?などの 積極的な議論のネタを提供するなら別に構わんのじゃね? 「考えれば無意味と判る」なんて根拠レスな書き込みだったら退屈なだけだが。
>>838 そうなるとJavaフレームワーク + JRuby というのが当面現実的かも。
あと、RailsみたいにRubyで構成したDSLの方向。
>>839 Railsがないと単なるtoy languageで終わる
>>845 > Javaフレームワーク
Seaser2のことですね分かります
髪型がきもす
>>848 嫌なら辞めろよ誰も頼んでないだろ
お前が自分からヘラヘラやってるくせに何2ちゃんに愚痴書いてんだよ
こういう卑怯なやつが一番腹立つわ
>2ちゃんねらには嫌われるくらいがちょうどいいだろ とか何しに来てるんだお前は。 アンチスレ逝けよ 俺は別に卑怯とは思わんが、印象悪くする行動は控えろや 自分から掃き溜めに来といて愚痴るとか、何したいんだよ 本人証明とかしない方が良かったよ。周り巻き込んでRubyの空気悪くしてどうすんだ?
shyouhei 明日ふと俺がいなくなっても普通に世界はなんも問題なく回るんだなあ。俺いてもいなくてもどーでもいいなあ。 ... 08:02 PM July 03, 2008 from tig.rb shyouhei 結局俺の二年間って何だったのかなあ。 08:01 PM July 03, 2008 from tig.rb shyouhei なんかだんだん、おまえらには俺にリリースさせようという気がないのが分かってきたよ。 07:59 PM July 03, 2008 from tig.rb shyouhei 落ち着け俺。まだぶちきれるような時間じゃない 02:53 PM July 03, 2008 from tig.rb 病み過ぎ。 MP溜まるまで死んだふりしてていいです。
>>852 強制隔離だな
なんか楽しいゲームでもやっとれ
ゲームで癒える世代かどうかは知らんけど
女でもd(ry
まぁ気楽にいこうや
>>851 > 周り巻き込んでRubyの空気悪くしてどうすんだ?
それが目的なんだからしょうがない。
嫌ならとっくにやめてるから気にすんな。
そんなことより
>>834 の思うリリースエンジニアリングって結局何なんだ。気になって寝れないよ。
858 :
デフォルトの名無しさん :2008/07/05(土) 23:36:01
HSPから飛んできました。 Rubyのお手軽ライブラリは、まだ出来ていないのですか? HSPみたいに簡単に色々なことが出来るようなライブラリは、作れないのですか?
>>858 具体的な機能を書けば、それぞれ何らかの方法があると思うよ
↑をやるなら初心者スレの方が親切にレスがつくだろうけど
また、
>>858 だけから展開したいのならアンチスレでどうぞ
>>859 Rubyが苦手とする、HSPで出来るようなことは、簡単に出来るようになる見込みは無いのでしょうか?
ネイティブデザインのウィンドウを出すとか、ボタンを出すとか、線を引くとか、画像を張るとかetc
HSPの少ない命令群だけでもライブラリ化してあれば、素晴らしいらしいRubyの文法にふれる機械も出来るのに・・・
>>860 一言で言うと、RubyでクライアントGUIが使いたいと?
適材適所の観点からは、開発者の優先度はかなり低いと思われ
HSPにこだわるってことはWindowsだろ?それこそHSP、VB、C#、JScript等
なんでもあるじゃんw
クロスプラットフォームでも、Javaでいいんじゃね?
基本的に、作ってる人たちが使う気もない機能の開発優先度は絶望的だと思っていい。 お客さんはいらない、と。注文ばっかでうるさいしね。
何も書かずにウィンドウが生成されて、 一行で線が引ける・ボタンが作れるってのは特化した言語ならでは 簡潔さを売りにしてるRubyでもここまでは無理だw 一応、Rubyにもマルチメディア系のライブラリはある(ボタンとかは用意されていない) Star RubyやRuby/SDLなどなど まあRuby自体が高速な言語でないので、複雑なゲームとかには耐えないだろうけど
>>861 JAVA使うくらいなら、C#の方がマシですね。
>>862 そう言う姿勢が、HSPと違うんですね。
Matzとか言う人が、HSPをさんざん罵っていたので、いつか作ってくれるのかと期待していたのですか・・・
言語が大切なのではない、環境が重要なのだ!まだ理解できていないのでしょうかね。
ところでHSPはウェブアプリケーション作れるの?
RubyもHSPも作ってる人が必要なものを作ってるという姿勢は一緒だろう
きっとHSPでcronジョブ書いたりWebスクレイパー書いたりしてるんだよ。
そもそもまっつんってRubyで何やってるの? エロ画像の連続ダウンロードとか?
>>865 .NETに乗っかればいけるんじゃね?よく知らないけどまだ無い?
>>860 手軽で、かつ即座に(他の何かのインストールを必要とせずに)利用できる
クロスプラットフォームなGUIライブラリが標準添付されないかぎり、実現の見込みはないだろう
しかしそうなるとrubyの容量が一気に膨れ上がるので、望みは薄い
>>863 マルチメディア系以外にも、ボタンを置いたりできるGUIライブラリがあるんだから
そっちも紹介しておいたほうがいいのでは
>>864 HSPでも姿勢はそう変わらないだろう
作ってる人が使う気のない機能が、HSPでは積極的に作られるか?
たとえば、HSPが公式にLinuxに対応する現実的な見込みはあるか?
>>895 CGIに使えるよ。HSPCL Runtimeだっけか
データーベースにも、俺の知る限りhspdbでaccessのmdbが使えるようだ。
利用価値は判らんw
DB使えたところで構造化で難点あるから処理に困るよね
しかしHSPはBASIC世代にとって、「ちょっとしたゲーム」作りたい時には、未だに最も手軽な環境だろうと思うよ
ヘボIDE付きで、ボタン押せば実行、そのまま.exeにコンパイル。DirectXも扱えるラッパ付き。
この辺、rubyで実現するのは色々悩ましい。
StarRuby方面をみんなで色々拡充して、バッチ/シェルスクリプトでも用意しまくっていくしかあるまい。
アンカーミス失礼しました。
>>865 へのレスのつもりだった
>895に期待
HSPの人は、Rubyをバカにしたりしない! そんなことばかり言ってるから、流行らないのだよ Pythonに負けてしまうのだよ PythonならHSP並に簡単とは言わないけど、Rubyよりは大分楽に出来るんじゃないかな
もう世間は夏休みだったのか
>>873 Ruby使いみんながHSPを馬鹿にしてる訳じゃないんだよ……
ただまあ、MatzがDISってたからねえ
納得して貰えるとは思わんw
なんでRuby界隈は、自らイメージダウンに走るボケが多いんだろうな
個人的にはこの主張には同意できるんだがな
------
最後に、誤解している人がいたみたいだけど、私はRubyのデザイナーではあるが、
別にRubyと比較しようなんて最初から思ってはいない。
私は言語デザイナーである前に、言語おたくなので、あらゆる言語の「より良い形」に興味があるのだ。
私は「HSPが総合的に良いツールであること」を否定したことはない。
ただ、「HSP言語」はどうかと思うのは事実だし、
「HSP言語」がもうちょっとマシな言語だったらもっと良いツールだったとも思う。
ttp://www.rubyist.net/~matz/20040928.html#p01
そら逃げだ >っていうか、仮にも言語を作ろうってんなら、 みんなもうちょっと言語そのものにも関心を払おうよぉ*1。 >*1 マイノリティである言語屋の魂の叫び ツール全体と言語を分けたらなんだよ。 こいつは「Rubyは言語として(は)イイんです!」って言いたいんだよね 駄目な言語が普及する可能性っての念頭外だからね それでいいんだけど、マイノリティであることを嘆いたら自己否定だよ
しかしどうみてもRubyは最近普及してるようにみえるが (噴出する不満も普及ゆえのもんだし) 日本発のHSPが海外でも大人気なんて話はとんと聞かない
私は「rubyが総合的に良いツールであること」を否定したことはない。 ただ、「cgi.rb」はどうかと思うのは事実だし、 「cgi.rb」がもうちょっとマシな言語だったらもっと良いツールだったとも思う。
Pythonと比較できなくなってしまったからってHSP叩くなよみっともないw
噴いたw まあその後PHP叩いてる訳で、ちったぁ向上心はあるようだがw
HSPは素晴らしかった。ああ言うものが、一般人に分かりやすいんだと言うことを、知らしめてくれた。
そして何より、一般の人がやりたいことの、大部分を簡単に実現可能であるのだ。
中の人はやる気は無いようだが、Cコンバーターでもあれば、もうRubyは選択肢とはならないだろう。
>>880 確かに時代はPythonだよな・・・マイノリティであることを望むのなら、いいのかもしれないけどw
個人的にはRubyには「仕様は実装」の精神を持って、常に変化を恐れずに、進化していって欲しい。
それはPythonや他の大きな言語には、出来ないことだから。
ただもう少し頑張って、ユーザーを増やすことは必要だろう。
このままでは、LinuxとFreeBSDのような関係になってしまうよ。
そして、それでもいいと考えてしまう風土に落ち着くことになってしまうんだ。
世の中に数えるほどしかいない職業。
SUNには結構居そう
> 「HSPが総合的に良いツールであること」 rubyってどう考えてもHSP以下ですよね というかHSP上でrubyが使えるようにしたらいいんじゃないですか?
887 :
デフォルトの名無しさん :2008/07/06(日) 08:14:27
Matzの会社を財務分析してみたんだが。
http://d.hatena.ne.jp/AntiSeptic/20080704/p1 などと思わせぶりな言い方をするものだから覗いてみりゃ、
なんて事無い田舎の零細企業の財務諸表であって、面白くもなーんともなかったわけだ。
それにしても、この程度の収益で2007年度って、
あの会社にとっては多分空前絶後の景気のいい年だったはずだの
Rubyとゆー「鉱脈」があるだの言っているのは何なのだ。
Geekのヨタ話というのは、いつもこんなしょぼいスケールで行われているのか?
あそこの技術者の平均レベルは、他の普通の会社よりはずっと高いと思うって、
これじゃあ、技術なんてIT企業の収益とは何の関係も無いと証明しているようなもんじゃねえか。
そもそも、この会社が何をやっているのかがHPを見た限りではよく分からん。
要は受託開発だろ労働力を人月で売ってるだけだろマーケ屋がこねくりあげた横文字得意げに使ってなに悦に入ってやがんだコラ。
更には製品・サービス部門まであって、なにやら参考価格が書いてあるところを見ると、
多分にパッケージっぽい印象を受けるが、それでいて全体の粗利率が26%程度ではどうしようもないだろ。
あそこに入りたい人は、損益計算書も注意して見ておくといい。まぁこれはどんな会社でも同じだけど、
ここを見るといろんなことが見えて来る。株価指標を計算してみるのもいい(非公開会社でもね)。
889 :
デフォルトの名無しさん :2008/07/06(日) 09:45:30
なんだ結局Rubyって使えないのか・・・ 興味はあったんだけどな・・・ WindowsならスクリプトはVBS+batで十分なのか。
HSPが言語としてへなちょこなのは実際に使えば歴然だと思うが… そして、VBAとOfficeの関わり以上に目的志向なこともな お勧めスレでは 「中級の壁くらいまで何でもできるがプログラム学びたくない人向けでプログラミング学習には向かない」 という超絶妥当な評価を受けている HSPを使ったことのない奴が議論に混じってる気がするぜ
>>889 ただの荒らしアンチじゃねーかw
bat使ってて、コマンドラインインタプリタの存在意義が
わからんわけでもあるまいにwww
とりあえず、ここ最近の流れを見ていて HSP信者にはPython信者以上にRubyアンチが多いということは理解した まぁRubyとPythonなら、ある意味似たような言語だから 客観的に評価できる人も多いんだろうけど RubyとHSPでは目的もコンセプトも違いすぎるからな……反発もするか
教祖様がそのコンセプトを無視してケンカ売ってるからな。 HSPがカバーするゲーム作りの領域でももRubyが上回ってるならともかく 足元にも及んでいないから失笑されることになるんだよ。
matz が言及しているのは(狭義の)HSP言語仕様であって、 実行モデルや処理系の話ではなかったのだが、 周りはそうは受け取ってくれないと想像してなかったのが彼の脇の甘さ。
足元にも及んでいない、ってw わざわざ低いレベルに合わせてやってないだけですよw
>>890 みたいな
「プログラミングに関わりたくないがプログラムは作りたい人向け」
ってのは誉め言葉なんだけどな
これをHSPの規模で実現してる言語は少ない
彼の言葉を借りれば、 --- 最後に、誤解している人がいたみたいだけど、私はHSP使いではあるが、 別にRubyと比較しようなんて最初から思ってはいない。 私は言語使用者である前に、言語おたくなので、あらゆる言語の「より良い形」に興味があるのだ。 私は「Rubyが総合的に良い言語であること」を否定したことはない。 ただ、「Ruby環境」はどうかと思うのは事実だし、 「Ruby環境」がもうちょっとマシな環境だったらもっと良いツールだったとも思う。 なぜ流行っているのかの考察はいいと思っが、そこから解決策を出して欲しい。 でなければ、この(HSPような)分野では、いつまでたってもRuby環境は、HSP環境に及ばない。 そしてPythonなら、それが比較的簡単に可能だと言うことも忘れてはならないだろう。
>>896 HSPをHSPとしてだけしか使ったことのない人にとっては屈辱にしか取れないと思うぞ
まあ、ただの単一言語症ではあるんだけどね
Rails以前の頃ム板を爆撃連投してた、Rubyしか知らないRuby厨と同じようなもんだ
3年前のネタをいつまでもネチネチと…
言語の仕様(Rubyの場合はソース?)の善し悪しでいったら HSPもRubyも特筆すべき機能もない単なるスクリプト言語 HSPはゲーム、RubyはawkやPerlの代わり、 といったように得意分野が違うだけのこと 違いはあっても優劣の差はない
優れた言語では、自分の求めるライブラリを容易に記述できるので、 各々が個人的なライブラリを構築し、公のライブラリが洗練されないまま残る
>>898 >Pythonなら、それが比較的簡単に可能だと言うこと
ここ詳しく
>>900 それしかネタがないんだろう。書かなきゃいいのにねぇ。
907 :
デフォルトの名無しさん :2008/07/06(日) 22:21:20
ところで、Rubyの主戦場であるテキスト処理と、HSPの主戦場である画像音楽映像同期GUIイベント処理と、 どっちが難しいん?
>>907 どこを迷う?テキスト処理の方が圧倒的に楽だろう
ってどう見ても釣りだよな・・・HSPだって全部自前で処理してるわけじゃないし・・・
それにしてもMatzも情けないよな
あれだけ言って、未だにRubyでHSPのような使い方も出来ないのだからw
ここ最近、そういうのも少しは増えてきているが、それでもPythonの比じゃないしな
まだ「RubyよりPythonの方がGUIやゲームに強い」と思ってる奴がいるのか
>>909 そう、まだいるんだよ。
この世の全員を騙すのって難しいよね、やっぱり。
なんで関数名の後にスペースを入れると叱られるんだ? それで問題が起こるなら、言語のデザインが悪いとしか思えない。
GUIやゲームは興味無いから別にいいよ
Rubyのテキスト取得って早いの? 例えばHTMLを読み込んでそこから情報を抽出するとかだと、 javaとどっちが早い?
なんか殺伐としているな、ここ。
>>914 一般的に速くはない。というか遅い
ただし、処理するテキストの量や処理内容によっては
十分に許容できるだけの速さであることも多い
911じゃないがエスパーすると p (:foobar, :hogehoge) とか、メソッド名と引数の開始の(の間に空白文字を置くと warning: don't put space before argument parentheses とか言われる件じゃね? 俺は、この場所に空白文字を入れるのはキモイと感じるのでやらないけど、 そういう流儀を持っている人も居るような気はする
>>914 目的にもよる
テキストの取得程度なら、ほとんどC言語レベルの話だから差は0と言っていい
ただしHTMLのパース、それも非常に大量のHTMLになると差がつく可能性はある
俺は気にするほどの差ではないし、工夫次第で何とでもなると思っているが
1%でも動作が速いほうがいい!というなら、JavaやC言語、D言語の方が理に適った選択だろう
919 :
デフォルトの名無しさん :2008/07/07(月) 02:56:32
普通に看過できない方の性能差にびびった。 ここまで開くのか
最近Twitterがやけにダウンしてると思ったら、Rubyだったのか…。
924 :
918 :2008/07/07(月) 07:15:38
>>919 なるほど、この記事を見る限りWebアプリでもJavaと比べて2.5倍ぐらいの差は出るのね
「1%でも」という言い方はどう考えても妥当ではなかった。すまない
むしろ2.5倍で収まっているのがおかしい
>>918 パージングしたいわけではなくて、
決まりきったフォーマットから何行目のデータをsplitして、
自分の作ったクラスに格納して、
それから自分のフォーマットファイルに書き出すという事をしたいのですが、
格納とか書き出すのとかは遅いですか?
ちなみに予想では最高で100万個くらいのクラスが発生します。
rubyのGCとjavaのGCはどっちが優れてるのでしょうか?
目的がはっきり決まってるなら自分でベンチマーク書け。その方が確実 rubyならbenchmarkライブラリ(profile併用オススメ)、Javaは自分で調べてくれ
rubyってそこらへん便利なんだよな。 UnitTestも簡単だし、ベンチマークも簡単に出来る。 EclipseでRubyプラグインってどう?使ってる人いる?やっぱRubyはEmacsか? おれの中では C => Emacs C++ => Visual C++ Java => Eclipse ってイメージ。
* Perlの方が速い。 * Perlの方が仕様が安定している(伝統的にRubyは後方互換性に重点を置いていないが、Perlはそうではない)。 * Perlの方がライブラリの管理が容易(CPANから最新版のライブラリを取得してインストールすることがほぼ自動的に行なえるが、RubyはGemsが普及してきたとはいえ、必ずしもGemsだけでは済まない)。 * Perlの方がM18Nに強い(というかRubyは一連のスクリプトを同一エンコーディングに統一しないといけないので、用途によってはすごく困る)。 もちろんRubyの方が優れている部分も多いのですが、仕様の安定感とライブラリ管理はMatzの興味の持ち方からして、当面大きな前進はないかと。
仕様が安定してるから今日書くスクリプトの動作が速いかというと別にそうでもないよな
Rubyで困ったらPerlやPythonで即っと書けばいいじゃん、と思うのは異端だろうか まさかRubyしか使えないってわけでもなかろう
>>931 better C としての C++ もいいよ。
でも本質的に重い処理は何使っても結局遅い。
道具を変えても O(x) の x が減るわけじゃないからね。
現実世界ではC/C++で重い処理はRubyではほとんど実行不可能になってしまうという
Rubyに問題があるわけではないからそれこそ問題ない
>>932 > 道具を変えても O(x) の x が減るわけじゃないからね。
関数型言語の賢いコンパイラはアルゴリズムまで書き換えて
最適化するやつもいるんだが…
936 :
935 :2008/07/07(月) 14:08:23
> アルゴリズムまで書き換えて アルゴリズム自体を最適化って言った方がいいのかも
>>932 道具を変えるとオーダーが増えることはあるけどね
3倍遅くても、3倍多くのマシンをおけばいいって発想なんでしょ 逆に言うと、ハード側でスケールするように全体を設計できるような能力がない人はrubyを使っちゃダメ
>>931 最近は頭が悪すぎていくつも言語を憶えられない人もプログラミング界隈に増えている。
裾野が広がったこと自体は別に悪いことじゃないと思うんだがな。 でもそれで飯を食おうとするな、とは言いたい。
>>928 Eclipse覚えなきゃ、と思いつつもややこしくてまだ使ってない
Emacsに慣れなきゃ、と思いつつも勝手が違いすぎてまだ使ってない
そんな俺は今でもWindows用のエディタ愛用です
>>931 別に異端じゃないよ。むしろ大勢だろう
ただ、俺の場合だと別段Rubyで困ることがない
CGIスクリプト書くときに「普及してる」って理由でPerlを使うぐらいだ
速度を出したい時は、PerlもPythonもRubyも使わないしな
Rubyだとオブジェクト指向にならなくね? インターフェイスも必要ないわけじゃん、動的だから。 そうなるともはやデザパタも何もないよね。
そんなことはない
遅延評価のメリットと型の固定のメリットそれぞれを理解してないやつ大杉
遅延評価っつったって、メソッドは使う「前」に定義しとかなきゃいけないんだろ? 微妙だろw
必要な時に、パターンを形成するクラス群に、 関連するメソッドが揃っていればいい インターフェースみたいに、それを静的に保証する仕組みは無い
>>942 によると、
Smalltalkではオブジェクト指向できないらしいな。
使う「時」にあればいいのでああて、「前」に定義しなければいけないことはない 使うときになければ何呼び出すんだよw
Javaのインターフェースの不自由さは、 多態を理解するのには、役にたったんだよな・・ オブジェクト指向を勉強していた頃に。 ダックタイピングを知った後だと、メンドイだけですね。
Javaの面倒くささは技術力不明のやつらを使うときに、縛りをかけることができる。
一人ないし相応の相手だと
>>949 の通りメンドイ。
質問お願いします 一時間ごとにwebサイトを巡回するクローラーはcron使わないで作れますかね?
>>951 そりゃ作れるだろ
ループが出来て時間が取れるなら。sleepがあればなお良い
凝るのならdaemonにしてみてくれ
ユーザーに cron を許可してないシステム上で1時間ごとにスクリプトを動かしたい、という要望だと理解 cron 許可してないんだから無茶すんな っていうか迷惑だから極力避けてくれ
外からcron等で叩くという手も無いわけではない CGIでもいいし、sshのコマンドでも可能 発想を柔軟にすればいいんじゃね?
まあ、その辺は管理者が判断すること。
>>953 余計なお世話
そういうのを禁止したいならルール作ったり、監視して勝手に落としたりしろ
一般化するな
なんにしろ、Rubyとは関係ないようだ
いきなり立ってごめん
ダックタイピングって実行してみなきゃ分からないて事でしょ。 これってひどくない?
実際Rubyのバグの多くは型があいまいであることに起因するものが多くを占めているからな。 ひどいどころの話じゃない。
ダックタイピングって、いい加減なものにそれらしい名前つけて満足してるだけに見えるんだけど、それは俺が古いからなんだろうな
>>960 ダックタイピングと「実行してみなきゃ分からない」ことはまた別の話
実際、C++でダックタイピングやればコンパイル時にエラーを出してくれる
最近になってもtypoが発見されるように、デバッグしにくいのは、たいへん大きなデメリット
それはRubyのIDEやデバッガが貧弱ってだけの問題なので ダックタイピングに一般化するのはどーかーなー。
ダックタイピングについていったわけじゃないです
>>962 言語を使う側にとっては実用的な単語じゃないから、忘れていいと思う
・明示的な型チェックは良くない
・メソッド名にto_sやto_i、<<などを積極的に使う
という点だけ頭に置けばいい
「ダックタイピングを念頭に置いたクラスの設計と運用」というのは 明らかにパワーの入れどころを間違っている
Yuguiさんの「初めてのRuby」結構いいみたいね。 だんこーがいが偉くほめてたな。 まあ、信憑性は微妙なんだけども
買うか迷っていたんだがDKお薦めじゃダメだな。
小飼氏のレビューが恐ろしく当てにならないのは確かだが 買うかどうかは自分で読んで決めようぜ
ピッケルとRuby Way以外の選択肢が出てきた感じ? Programming Language Rubyも翻訳中で近々だっけか。
>>971 が的確すぎてフイタw
本は読んでこそだ。ジュンク堂万歳w
初めてのRuby、店頭でざっと読んだけど、悪くはないよ。 たのしいRubyとか読んでた頃に、 これがあったらなあ・・って感じ。 でも、欲しいのは初心者向けの本じゃなくて、 もっと深い所を書いた本なんだよな。 プログラミングRubyの次に読めるような・・ そういう本がない。 (レシピ系の本でもなくてさ・・perlのラクダ本みたいな)
matzがなにか書いてたんじゃないの?1.6の頃に。> ラクダ本みたいな
青木のるびま出張版みたいなヘンなのはあんだけどなw
>>974 Rubyアプリケーションプログラミングは?
>>975 Rubyにおいて1.6時代の書物はすでに古文書です
内容は悪くないと思うが
>>975 Ruby ソースコード完全解説?
オンラインで読めるんですが、難しいですねえ。
(rubyの本というより、Cの本な気が・・)
>>976 アレ、るびまの奴を勉強中です。
難しいですけど、ためにはなってますね。
プログラミングRubyを読んだ後、すぐ上のレベルって
ちょっと間が空いてるなあと。
Procとかeval系とかの使い方をちゃんと解説した例って、
上のるびまの奴くらいしかないですよね・・
その辺のレベルを網羅的に、
わかりやすく書いてある本がでないもんかなと。
dankogaiが全体的に褒めてる場合は不備が少ないという点で良本認定だよ 内容が万人に向くかとかそういうのを全く担保しないので技術書以外では使えない基準だが で、読んでみるとわかるが確かに隙のない本 Rubyを独学で学んで使ってる人や自称中級者、ブログなどでRubyスクリプト片を公開することのある人などにおすすめ すこし昔に「最初はレシピブック読んでスクリプトの書き方真似しとけ」とか言われたが思想的にそれに続くものだ
この本は中途半端に薄くてそれでいてデカいのが気になる 本屋で最初は探せないこと請け合いだ
RubyKaigi2008の先行販売でバカ売れしているのを見て、 「お前らそれでいいのか」と思った。 とうにRuby使える連中が大半のはずなんだが。 といいつつ俺も評価用に買ったんだけどさ。
あの人の書評は思想とか社会系ライフハック系の本は結構地雷度高いと思う 全く駄目な本じゃないのがまた微妙に腹立たしいというか書評うまいのがムカつくというかそれじゃ逆切れだな るびま出張版はどこからどう見ても完璧にイロモノ一発ムックにしか見えないが 中身の中級者有用度は昨今の書籍ではピカイチだ 緑のWindowsいじるぜ本もなかなかだぞ
「初めてのPerl」も、確かに最初は薄さが気になったけど、買って損のないものだった ただ、それは後に控えるラクダ本の存在が大きいって言うのもあるわな 順序から言うと、ラクダ本から出来た本だし。 本当に、そろそろRuby的ラクダ本が必要なのかも知れない(普及させたいのなら)
るびま出張版って良いと思うんだけどなあ あれに気づかされる間はRuby初心者だと思ってる
>>984 俺、まだまだ初心者だ・・
あれをスラスラ理解できて中級者だと、
Rubyの世界って、レベル高いなあ。
「いや俺はそういうふうには書かない」とぶつくさ言いながら修正するのがよい自称中級者
>>968 そうなんだよね
その上rubyの場合その設計を置いておくところがテストケースしかないというのもね
>>983 つるはし本でいいじゃん。
ただ、添付ライブラリについてはもっともーっと詳しく書いた本がほしいところだが
これはどっちかというとマニュアルの充実をのぞむってことだけど
>>984 良いと思える人には普通に良書確定でしょ。
しかしスコープが狭いw
狭いの覚悟で開き直らないと、コード添削とか本にならんだろうしな
ああいう路線のCやC++の本とか読みたいもんだ。なんかないかな?
>>990 元ネタ(というか参考資料)を読んでみては
プログラミング作法やコードコンプリートとか
るりま参加最大の障壁は、ML参加やSubversionよりも「Rubyがビルドできる環境」の準備だと思う
さあ、次スレを誰か立てるまで黙るんだ
>>992 単純に、Wikiとかじゃダメなのかねえ
>>995 以前は普通の(誰でも書き換えられる)Wikiだった
そこで何か問題が起きた?
Rubyのラクダ本は、もうすぐ"The Ruby Programming Language"の訳が出るからそれで決まりでしょ。
>>997 書式が自由すぎてデータを再利用するのが難しかった。
検索とかフォーマット変換とか自動索引とか、足りない項目の自動列挙とか、mathnによるメソッド書き換えとかを検出するのが。
ム板で1000取るって痛いよね
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。