1 :
デフォルトの名無しさん :
2011/04/27(水) 23:59:30.15
>前スレ983 >なんかよくわからんけどmaybeモナドとかいうやつみたいな >メソッドチェーン中にぬるぽでもよきに計らってくれる >うまい書き方は無いものか Ruby FacetsのKernel#tryみたいなやつ? @example ? @example.name : nil @example.try.name # 上記の書き方と同じ
ググッてたらこんなのまで‥ class Object alias_method :try, :__send__ end class NilClass def try nil end end 使用例 : possibly_nil.try(:method_name) あと blank.rb とかも でもこういうのが当たり前だ、って環境でやってると どこかで大穴に落ちそうな気がするぞい
弄り回してDSL的なことや魔改造が出来るのは長所だけれど 無茶苦茶に弄り回すのはご法度よね gotoに通ずるところはあると思う
ActiveSupportとかRuby Facetsとかの組み込みクラス拡張系は すごく便利なんだけど、ほかの人がソース読めるかというのが気になって 自分用の書き捨てスクリプト以外では、使うのを躊躇してしまう…… せっかく便利なのになんかもったいないな
書きやすいのと読みやすいの両立は難しいな
それの場合は単に対象についての知識がコモディティ化してるかどうかだから難しい話ではない。 Forthで書いた長いコードみたいな、書くときは集中していてスタックの状態変化を把握してるから いいけど、読むときにはサッパリ、みたいなのが「難しい」。
未経験新人にRuby叩き込んでるのだが教えやすい言語で感動した。 Java教育してた時は本当に大変で、サーブレットやJSPまで習得させるのに数ヶ月かかったりしてた。 Rubyだと1週間で、大抵のことは皆自分で出来るようになる。 Railsもフレームワークの基礎知識だけ教えればあとは本読みながら勝手に習得してしまう。
いろんな意味でやれること限られてるからな 「プログラミングというもの」を教えるにはかなり都合がいい 「オマジナイ」もエンコーディング関連くらいだし
>>5 tryってそうやって実装するのか。面白いな。
考えたやつ頭いい。
Rubiniusってどうなの。今1.2.3だっけ?
15 :
398 :2011/04/29(金) 16:58:46.73
Ruby技術者って他言語使える人が多い気がする。 関数型言語とかも使いこなしていてすごいと思う。 なんでなんだろ。俺もRubyを極めたら見えてくるのかな。
やっぱりプログラミングは文芸だよ。 目的を果たすためだけの道具になりきれてないんだよ。 だから「バグは必ず出てくる、統計的に明らか。」なんて開き直るんだ。 いきなりごめんね。
PHPとかRubyとかがプログラマの敷居を随分下げたと思うが コンパイルって何?ってレベルのPGが出てくる始末で、結果としては果たして良かったのか悪かったのか。
わかってない人はJavaやC#でもわかってないから問題なす ところでRubyの原則やぶりをまとめた文書はないですか 通常メソッドは小文字で始まるのにFloatは違う、 ?が末尾につくメソッドはtrue/falseを返すのに defined?は文字列かnilを返す等々
20 :
デフォルトの名無しさん :2011/04/29(金) 20:27:16.97
?つきメソッドがtrue/falseを返すなんていう約束あったっけ? まぁ、いずれにせよdefined? はメソッドではないのだが。
>>18 アクセル踏めば車が走る、蛇口ひねれば水が出る
それでいいじゃないか by ぱとれいばー
>>19 defined? hoge # hogeは定義されてるのかなぁというふいんき(何故か変換できない)
defined hoge # おまえは何をいっているんだ、というふいんき(なry
返り値なんてオマケです。エロい人にはそれがわかるんです
変数名に'?'使えないのが片手落ち。
>>20 foo? は true オブジェクトか false オブジェクトを返すというのはただの習慣ではある
ただ、かなり強い習慣なので、 obj.foo? == true や obj.foo? == false というコードが動作しない場合は
抗議されても文句は言えない
>>22 Sony leaked? はあっても
Sony? leaks は変だろ
そういうことだろ、たぶん
>>18 それはFORTRANが生まれたころからずっと言われ続けてる話だわな
>>20 defined?は演算子でしたね。失礼しました
ちなみに組み込みクラス/モジュールを眺めた限りでは
true/false以外の値を返すメソッドは以下(目視でやったので抜けあり)
Encoding.compatible? -> enc or nil
File.world_readable? -> perm_int or nil
Process::Status#success? -> nil, or true or false
ああ、これまで foo オブジェクトの保持の有無を true か false を返してたメソッドを、
foo オブジェクト自身か nil を返す、というように作り変えた困った子ちゃんがいるのですよ
誰かなんとか言ってやってください英語で
変更した理由はおそらく、普段の言動およびコードから判断するに
「メソッド定義で !!@foo と書いてあるのがイヤだから」だ
>>24 「真偽値を入れとく変数」は古来から大変便利なものと相場が決まっている
foo_p とかにしてみてるが、Ruby の文脈ではわかりにくいと評判
28 :
デフォルトの名無しさん :2011/04/29(金) 22:37:23.60
?付きメソッドの返値をtrueやfalseと比較するようなバカなことを していなければ困ることはないと思うんだがな。 結果をtrueやfalseという値として書き出したい場合は困るかな。 いちおう !! obj というイデオムはある。
>>28 「真偽値を返す」という名目のメソッドの返り値は true か false であるべき
Array#find も結果によって文法上の真偽値を返すが、真偽値を返すメソッドとは言わないだろ普通
Ruby教えてたら「かっこいい」という理由であらゆるメソッド名に!をつけてた人がいて、 こういう人が未来のプログラミング言語を創っていくんだなとしみじみと感じました。
まず過去の言語を学ぶように指導してくれw
1年経っても継続してたら 誰にも簡単な感嘆プログラミングとか なんかそんな新パラダイムを生む逸材かも知れず
破壊神になるまえに止めてくれ(w
>>27 どうしても !!@foo がいやなら
@foo ? true : false
とかやればいいのにね。
あまり気持ちのいい表記でないことは認める 若干のハックを感じる Boolean() とか Object#true? とか適当なメソッドがあってもいい なくてもいいけど
trueやfalseは真偽値ではなく、真偽値「の代表」だと思ってるなあ
だから 〜? メソッドが nil や妙な真値返しても不思議には思わないし
最初からそういう前提で組んでる
…でもまあ、自分で書くメソッドならだいたい true/false かな
というか、それ以外を返すメソッドなら何か別の命名を考える
>>19 >通常メソッドは小文字で始まるのにFloatは違う、
これは Kernel#Float() のこと?それとも Floatクラスの定数のこと?
前者ならInteger()とかString()とかの型名メソッドシリーズのひとつだから、
後者なら定数だからだな
>>36 だからAPIとして「代表的」な値を返すべきなのですよ
返り値を再利用する人もまずいないはずの値を、典型的な代表的な値にしないのは不自然で不親切
「true か false が欲しい場合はメソッド呼ぶときの頭に !! をつけるといいです^^」とか作者が言うな
それはメソッドの中でやっとけ
もし「foo という内容があったらそれを返し、なければ nil を返す」というメソッドを作りたいなら foo という名前にしろ
>>37 他の言語でも
if (NULL!=(hoge=obj.method())) {
adaburakatabura;
}
みたいの結構多くね?
個人的にはどっちでもいいけど
中学生がコミッタだなんてくやしい。 だから腕相撲と100m走で俺に勝てないとコミットできないようにしようぜ。 Rubyは肉体派コミュニティに生まれ変わりますッ!
そして勝った人は
>>39 に好きなだけコミットできます。
trueが必要になる場面てどんなとこなんだ? 単に〜?系メソッドで機能を統一したいっていうパラノイア?
>>41 > trueが必要になる場面てどんなとこなんだ?
t/fを記憶しておきたい場合
t/f判断が必要な時点でメソッド呼べばいいじゃんと思うかもしれんが
t/fの判定にコストがかかる場合、変数として保存しておけないと困ることもあるよね
irb で obg.has_hoge? したときに Hoge オブジェクトが inpect されてずらずら表示されたらイヤだろ true とか false とか一語で表示して欲しい あなたは if の条件のところにしか書かないから値はなんでもいいかもしれないが、 それは相手に手間をかけた隠蔽を期待してるわけで、あまり親切な振る舞いではない メソッドを作った時点で true か false の2択にしておけば、 ・ 条件分岐用の真偽値が欲しい場合 ・ true か false が欲しい場合 の両方に対応できる
どうしても絶対に true か false がほしい場合には、 !!obg.has_hoge? とすりゃいいだけの話だろ。
小学生コミッタが生まれるのも時間の問題だな。
おばあちゃんこみったーが誕生してほしいな
グレース・ホッパーみたいな人か……
>>44 それをメソッド作成者がやってくれた場合は全員が幸せになるんじゃね
メソッドを public にするってそういう気遣いだと思うぞ
実のところ、
if var = hoge.foo? then
var.some_method
end
のように返り値オブジェクト(のメソッド)を利用することはないはずなので、
真か偽であれば「なんでもいい」はず
なんでもいいなら、代表的な true か false を返せばいいじゃん?
メソッド作成者が「!! とすりゃいいだけの話」の何が問題?
ソラエッチ君がいるすれはここですか?ソラエッチ君がいるすれはここですか? ソラエッチ君がいるすれはここですか?ソラエッチ君がいるすれはここですか? ソラエッチ君がいるすれはここですか? ソラエッチ君がいるすれはここですか? ソラエッチ君がいるすれはここですか?ソラエッチ君がいるすれはここですか? ソラエッチ君がいるすれはここですか?ソラエッチ君がいるすれはここですか? ソラエッチ君がいるすれはここですか?ソラエッチ君がいるすれはここですか? ソラエッチ君がいるすれはここですか? ソラエッチ君がいるすれはここですか?ソラエッチ君がいるすれはここですか? sora_hきめぇえマジネーミングせん須木めぇw まじなめてんじゃねえかこいつw ソラエッチとかまじ変態オタなんじゃねえのw ソラエッチw オンザエッヂのパクリかここいつ?なまえてんのかもまじでこいつ いっぺんマジ 空から落っこち他方が良い是こいつw
wwwwwwwきめぇwwwwソラエイチきめぇwwww なんていうかきめぇえwwwコミッタとかきめぇえwwwww うあうぇあwwwwwwまじきめっていうかイカくせぇwwwアンモニアってんじゃねねぇw まじねでwRUbyとかまじできめぇいかくせえぇwwwまじくせえコードかきすぎw wwwwwwwウンコードダラケノウンコミッターじゃねえのかw sora_hっていうクソクソ中学生まじなめてんじゃねえのかこいつw まじいかくせぇえwwwwwww まじsora_hくせぇwwwwwwwwww俺はsora_hのかきこみがわかるwww 独特のきもさをかもちだしている 消臭剤でもきえないののきもさwwwww wwww捕食者のおれからみたら sora_hは無限にいるwwwww デフォルトの名無しが全員sora_hにみえてきもくてきもくて生姜ううぇぇwwwwwwwww
きもいのがわいてるな PHP使いみたいだな
>>43 > irb で obg.has_hoge? したときに Hoge オブジェクトが inpect されてずらずら表示されたらイヤだろ
それは時々あるな
オブジェクトを取得しそうなメソッドの名前ではないから、「対象オブジェクトまたは nil」という動作は不合理?
get_hoge や hoge で Hoge オブジェクトか nil が返ってくるのは構わないよな
nilってなんだ? Objective-Cのぱくりか?
塾で使う鉛筆バキバキに折られちゃったから 塾長にいじめ相談してます いま歯つかってえんぴつ研いでます
じゃあ塾いってきますね
56 :
デフォルトの名無しさん :2011/04/30(土) 11:59:28.79
>>53 nilの語源は古く紀元前2000年ごろにはすでに
中国の鼎に記されているという
民明書房刊『Rubyクッキングレシピ』より
59 :
デフォルトの名無しさん :2011/04/30(土) 13:11:59.18
Z会って創価学会みたいなものですか?
60 :
デフォルトの名無しさん :2011/04/30(土) 13:26:14.28
sopa_hって女王アリみたいですね その取り巻きたちが必死に2chに自演してるみたいですが sopa_hの配下greyiea,glasssagaっていうきちがいとか(通称 働きアリ)たちは sopa_hがしんだらIRCも崩壊しRubyのガキどもももいなくなるでしょう sopa_h(指揮官)の上でなりたっているRubyウンコネットワークなのです Perl忍者さんたちみたいに分散してチームを作っていると 一部が追いやられてボコボコにされてもメインとなるコアのPerl忍者さんはしにません 次のPerl忍者さんが現れて再生されます つまりsopa_h率いるウンコルビーチーム(pasratce)っていう yちょうちょうちょう超ちょうちょうちょうちょうダサッダッダダサダダササダサウンコチームは滅びてしまいます pasratceっていうチームはうんこくさそうですね うんこさくて有名です pasratcepasratcepasratcepasratcepasratceっていうだsだsだsだだ だせえーーうんこちーむ(pasratce)なんてよむのこれ コイツらきもそう パスチアケェ? 意味不明ですね マジかっこ悪いよ 本当にだせえなまえ うわーーーーーまじだせえーーー中二秒(笑) 痛々しくて見てられません FPSも弱そうな連中ですね(笑) すごいださきもウンコ臭がただよってます もうpasratceっていうタダサダサ sopa_hが率いるウンコザコチームは終了です
61 :
デフォルトの名無しさん :2011/04/30(土) 13:27:36.60
pasratceに入る方法おしえてください
やっぱり中二くらいじゃないと入れませんか?
h264形式の動画ファイルからSARを引っこ抜きたいんだが なんかライブラリないかしら。 mp4コンテナのPARならRVideoで引っこ抜けたんだが、そのPARを設定したいんだよね‥
>>57 ラテン語じゃないっけ
nullと同じ単語の活用形が違うだけだったような
>>64 nullはラテン語の形容詞nullusから派生してる単語で、
nilは名詞nihilの短縮形みたいなものなので、
同じ単語ってわけでもないね。
もちろん語源を遡れば同じなんだろうけど。
英語のnoとnothingみたいな関係。
rvm の github 経由インストールがまだすこしおかしい ~/.bin/ とか変なディレクトリがw
おはよう今日も頑張ろうねぇ〜
>>66 $HOME/.bash_profileを新規作成して設定書き込むので参った
$HOME/.profileがあって$HOME/.bash_profileがなかったら、.profileのほうを優先して欲しい
>>69 Perl忍者より69のほうがきもちわるい
2.0はいつなのか
72 :
デフォルトの名無しさん :2011/05/04(水) 00:42:19.45
おまえはなにをいっているんだ
Objective-C 2.0はとっくにでてますよ クソゴミ
Rubyコミッタっの人って↓なイメージなんですがあってますか? ひげおやじ ごみ収集家 中二 魔法少女
厨っぽい人は確かに多いな。敷居が低いからだと思うけど。
76 :
デフォルトの名無しさん :2011/05/04(水) 14:27:49.07
たこやき仮面を忘れるな
Rubyに限らず、ソフトエェア関連で濃縮されてる方々はそういう傾向が‥ とりあえず万国共通なのは風呂にはいらないことらしい オープンソースの会合にいく際のFAQに 「シャワーくらいあびてこい」って書いてあってわろた
風呂に入るとコーディング力が落ちる。
>>74 他は大体わかったけど魔法少女ってだれだ?
少女だから、あの人かな? 俺も自信ないや
___ _ / ____ヽ /  ̄  ̄  ̄ \ | | /, −、, -、l /、 ヽ | _| -| ・|< || |・ |―-、 | , ―-、 (6 _ー っ-´、} q -´ 二 ヽ | | -⊂) \ ヽ_  ̄ ̄ノノ ノ_ ー | | | ̄ ̄|/ (_ ∧ ̄ / 、 \ \. ̄` | / ヽ ` ,.|  ̄ | | O=======| `− ´ | | _| / | | (t ) / / | 「Rubyコミッタに選ばれちゃった!」 「ででででっていうwww」
_____ / ̄ ̄ ̄ ̄\,, /−、 −、 \ /_____ ヽ / | ・| ・| 、 \ | ─ 、 ─ 、 ヽ | | / / `-●−′ \ ヽ | ・| ・|─ |___/ |/ ── | ── ヽ | |` - c`─ ′ 6 l |. ── | ── | | . ヽ (____ ,-′ | ── | ── | l ヽ ___ /ヽ ヽ (__|____ / / / |/\/ l ^ヽ \ / / | | | | l━━(t)━━━━┥ ドラえもん、PHP使いがいるよ あいつDISったらどんな反応するのかな ドラえもん「きっと悔しがるだろうね」 ドラえもん「のびたくんはRubyコミッタに選ばれたからDISればだまっちゃうとおもうよ」 のびた「そうだね PHP使いうざいからDISろう」
_____ ,,,;;;;;;;;'' '';;;;;;,,, ヽl/::::::::::::::::::::::::::`.:.、 ______;;;;;;''''" ''';;;;;;;;,,, . /::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;:::ヽ / _ノ_ノ:^) ''';;;;;;;;;,,, /:::::::::::::// ヽ`y / _ノ_ノ_ノ /) ''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |::::::::::::/ / ̄`ヽ/ ̄ヽ| / ノ ノノ// |(6\|.─| ・|・ || ___ / ______ ノ . V ヽ.__ノっ.__ノ| _.. r(" `ー" 、 ノ ヽ. ____) | _. - '"´ "-、 ゙ ノ ヽi、 / ‐ ' " _.. `ー''"ー'" r|、` '' ー--'´ ァ' "´ __ '"´ -" ̄ "- ̄ヽ / ----,,, ,,_.- ' " /" _ ----ヽゞ;;;,, ,,,,:;;;;;;;;;;;;;;;;;;;;;;;;;;; / '''''─ " (___-" ヾ ヽヽヽヽ'';;;;;,,,. ,,,;;;;‐″ │ _..ヾ ヽヽヽヽ '';;;;,. .,;;;;;;' │ ,,,-‐ '"´ ヾ__)__)__)_) ''';;;;;; ,,.,;;;;‐''' │ "─r'--,,,,,--'''''''' ヾ;;;;;;;;;;;;;;;;;;;;;;;;''"
>>74 >魔法少女
性転換の人ですね、わかります。
オードリー・タン?
鳳たんとお茶しながら英語とHaskell教えてもらいたい
/二__,--、r'"___、 ヾト、.ヽ レ'"~,-,、 ! ! ' '" ̄ .ノ\ヾ:、 K/ー'~^~_/ ヽミ:ー‐‐'" ヽ i !〉ー―'"( o ⊂! ' ヽ ∪ Y」_ / i ∪ ,.:::二二ニ:::.、. l 、... | PHPをdisるのやめてくれませんか?・・・ ! :r'エ┴┴'ーダ ∪ ! !l< いや・・だから・・・ ブヒィィィィッ!!! .i、 . ヾ=、__./ ト=. | ヽ 、∪ ― .ノ .,! \
のびた「なんか言ってるよドラえもん」 ドラえもん「うん」 のびた「なんかあの人きもいね 豚みたい」 ドラえもん「うん」 のびた「ほっとこうか?」 ドラえもん「そうだね Rubyコミッタの品格のみせどころだね」 / ̄ ̄ ̄ ̄\,, /−、 −、 \ /_____ ヽ / | ・| ・| 、 \ | ─ 、 ─ 、 ヽ | | / / `-●−′ \ ヽ | ・| ・|─ |___/ |/ ── | ── ヽ | / |` - c`─ ′ 6 l |. ── | ── | | | . ヽ (____ ,-′ | ── | ── | l < うわ・・・PHP使いがなんか言ってる・・・ ヽ ___ /ヽ ヽ (__|____ / / \ / |/\/ l ^ヽ \ / / | | | | l━━(t)━━━━┥
Rubyのよさって「楽しさ」「美しさ」以外に客観的に説明できることってなんだろ?
いつもはキャビンを吸っているのだが震災の影響で売ってなくてラーク吸ってる まずい。客観的に説明したいが、できないなぁ
つーかコミットの質で言語の評価が決まるわけじゃないけどな。 Rubyのコミッタは誰でもなれるみたいなことを言われるけど、Rubyが日本語圏だからそう見えるんだろ。
近頃は&:symbolを使うのがナウいのか。 へへ使いまくって知らない奴を困らせてやるぜ〜。
(&:D)
>>94 ary.inject(&:+)
は結構使うかも。
:+)かわいいし、合計求めるたびにブロックちゃんと書くと長いし
97 :
デフォルトの名無しさん :2011/05/06(金) 18:02:47.79
実はinject(:+)でOK $ ruby -ve 'puts 1.upto(100).inject(:+)' ruby 1.8.7 (2011-02-18 patchlevel 334) [i686-darwin9] 5050
injectってinjectのサンプルを書いたときしか使ったことがないな
1.9のプレゼンの時、1文字でも少なくしていかに少ない文字数で実現できるかをアピールするためにinjectではシンボルを引数にとれるように実装した
map,sortも取れてもいいじゃん
>>98 既存のメソッドで書けないものがあったら、だいたいinjectで書けるくらいに汎用だよ。
ただし大概ややこしくなるから愚直にループ回したほうが簡単だったりするがw
>>99 1.9のそういうところはキライだね。マッツ最高。
動作もスピーディーで記述も短くできて概念も現代的な inject の最大の欠点は読み下せないことだ
injectのブロックパラメータ?の順序の覚え方を教えてくださいw 今は機械的に、rが先、とあいまいに覚えてる。
>>104 合計の
ary.inject{|r, i| r + i }
をイディオムとして定型で覚えてしまってるなあ。
だから迷ったらこれを思い出すことにしている。
inject使用者のほぼ全員がそれを毎回思い出して確認してると思う ( ) の引数とブロック引数の順番には意味は何もないから丸暗記しかない
injectは慣れれば強力なんだが、かなり初心者殺しではあるな :+の用例は初めて見たとき「なんだこりゃー」と唖然とした記憶が
108 :
デフォルトの名無しさん :2011/05/06(金) 21:46:47.72
inject/reduceのブロックの最後で値を返すのをよく忘れる。
eval, __send__, method_missingはなにしてるのかわからん それが格好良いと濫用する奴がいて困る
>>109 どれもコンセプトは簡単なんだがな
method_missing は暖炉の奥にでもしまっておいて結婚式のときだけ使うようにしておくべきだった
method_missingは 似たような処理をする、似たような名前のメソッドを大量に定義しなければいけない場合に便利 とか妄想してみました
:+ とか &:hogehoge とかで一番困るのはweb検索で調べられないことだな
めためたプロトタイピングになっちゃうよな
分かる方がいれば教えてください Windows 7 (x64)で、p によるテキスト出力で、ファイルへのリダイレクトが極端に遅いことに気がつきました これは仕様でしょうか、それとも何か環境に依存する可能性があるものでしょうか バイナリはruby-1.9.2.msi(artonさんの Ruby-1.9.2-p136 )を使ってます a.rb ------------------- start = Time.new 1.upto(1000) {|n| print n.inspect, "\n" } $stderr.print("#{Time.new - start}\n") start = Time.new 1.upto(1000) { |n| p n } $stderr.print("#{Time.new - start}\n") ------------------- > ruby a.rb 0.095005 0.087005 > ruby a.rb > output.txt 0.003001 25.423454 # これだけ極端に遅いうえ、ディスクがいやなうなり方をする マニュアルを見る限り、p obj は print obj.inspect, "\n" と同じと説明されているので余計に気なります
>いやなうなり方 たまたまBADセクタとかいうオチじゃ・・・
>>109 内部的にはともかく、表面上はわかりやすくない?
乱用しない方がいいのは確か。どうしても困るときだけ使うようにしないとね。
>>111 それだったらメソッド定義のクラスメソッド作った方が安全じゃない?
それでも大量に定義することにはなるけど、
method_missingで変な名前のメソッド拾う危険を考えると……。
一般的にはクラッカーのことをハッカーと呼んでいるみたいだけど、 ハッカーが一般的な場所で名乗る場合にはなんと言えばいいんでしょうかね。 「ぼくわるいハッカーじゃないよ!」と言えばいいんでしょうかね。 でも、ハッカーもともとはファッカーが由来みたいですし、 そう考えるとマスメディア各所がファックファック言ってるのは滑稽でもあります。
118 :
デフォルトの名無しさん :2011/05/07(土) 18:02:12.09
>でも、ハッカーもともとはファッカーが由来みたいですし、 どこで見た?
>>114 Windows版特有の問題っぽいな
XPとUbuntuは仮想マシン上で実行
------- a.rb -------
CNT=5000
t0 = Time.now; CNT.times {|n| print n.inspect, "\n" }; t1 = Time.now; STDERR.print(t1-t0)
STDERR.print ", "
t0 = Time.now; CNT.times { |n| p n }; t1 = Time.now; STDERR.print(t1-t0)
--------------------
・Windows 7 (64bit) ruby 1.9.2p180 (2011-02-18) [i386-mingw32]
> ruby a.rb > nul
0.026001, 0.021001
> ruby a.rb > a.txt
0.007, 13.9828
・Windows XP SP3 (32bit) ruby 1.9.2p180 (2011-02-18) [i386-mingw32]
> ruby a.rb > nul
0.0625, 0.078125
> ruby a.rb > a.txt
0.015625, 8.296875
・Ubuntu 10.4 ruby 1.9.2p180 (2011-02-18 revision 30909) [i686-linux]
$ ruby a.rb > /dev/null
0.005182719, 0.009835972
$ ruby a.rb > a.txt
0.005969758, 0.033596167
>>119 のコードをxp(32bit)で追試
(1.8.5-p12) 0.015, 0.032
(1.9.1-p429) 0.046875, 2.875
(1.9.2-p0) 0.03125, 2.953125
なんじゃこりゃ
大学の時に言語の講義でruby習ったんだが、あれって大学とかで教えるものなのか?
122 :
デフォルトの名無しさん :2011/05/07(土) 23:22:14.70
疑似コードではなく、何か特定の言語を使わないと、具体的にアルゴリズムを 書いて試したり出来ないので、何か言語を選ぶ必要はあるだろう。 その採り上げた言語の文法を教えるのが目的なら、大学的ではない気がする。 俺の時(20年くらい前)は、言語はPascalだった。
>>121 まあ、そこそこな感じ
オブジェクト指向でわりと現代的、
スクリプト言語で事前コンパイル不要。
「余分なおまじない」が少なく標準出入力とテキスト処理が基本、
というRubyの特徴は大学教養や学部情報授業にかなり適する
昔はPascal/Delphiだった位置
124 :
114 :2011/05/07(土) 23:27:13.38
>>119 ,120
確認ありがとうございます
以前は遅くなかった気がしていて、最近変えた Win7(x64)が原因なのかと
思って質問したのですが、どうやら 1.9.x (かつWindows)の問題のようですね
自分の環境の問題でなかったのは安心ですが、さてどうしたものか
バイナリの配布元に報告してみたら?改善されるかも知れんぞ
前にも同様の報告があって、 「1.8から1.9で特に変更してないんだけどな」 で終わってた気がする
大学におけるRubyはかつてのPascalだというのは云い得て妙
授業は分かりやすく進むが授業後の勉強研究生活で一切使われないという点を含んで
>>126 さりとてユーザー側ではどうしようもなく…
> 授業は分かりやすく進むが授業後の勉強研究生活で一切使われないという点を含んで すげー珍しい例だと思いますよ。 普通プログラミングの授業のある理学系や工学系の大学なら、その後に控えてる 実習やらなんやらの授業で、しっかりプログラミングもしなきゃ卒業できませんから。
>>127 >>128 んまー、授業程度のプログラムなら、
CよりRubyの方が遥かに楽に作れるからなん。
ただCでチクチクとSEGVに怯えながら書くもの勉強のうちという人もいるから、
一概に良いとは言いがたいなん。
みんなRubyで書いてC誰もかけませんなん、だと困るから、
学科全体で「この講義はCで書かせる」とか連携できてることが前提かもなん。
大学でダラダラ勉強してる奴より高卒で18から現場にいる低学歴の方がずっと優秀だったりする
131 :
デフォルトの名無しさん :2011/05/08(日) 17:39:36.51
大学なら2言語めからは独習だろJK
>>114 io.c:rb_io_flush() の fsync() 呼び出し
>>133 純粋に本質だけを教えることなんて不可能でしょ?
135 :
デフォルトの名無しさん :2011/05/08(日) 18:25:00.66
だからなんか動く言語を1つ教える。 大学生ならあとは必要に応じて自分で演繹できる。
3年間で言語を4つぐらい詰め込む大学って一体……
そんなあなたにBruce Tate御大のいやなんでもない
プログラミング入門で1言語 本格的なプログラミングでもう1言語 関数型言語でもう1言語 実習ではPrologを使う回とかHDLを使う回とかもあった 情報系ならこれぐらい普通
大学の4年間でPHP一つしか教えるなとか主張する人がここにいるようだ
実際はその学科がカバーしている領域の偏りによるんだけどね。 ネットワーク屋が多いとJava プログラミング屋が多いとScheme 制御屋が多いとCかC# 言語処理屋が多いとPerl(Rubyも増えつつある)
独習タイプの連中を見てると、大抵はボツだけどたまにやたら膨大な知識を身につけてる人がいる。 大学だとどうしても理論ばかりになるのだが、俺らとは別次元の知識を身につけてる。 C言語なんかで低レイヤを書くとレベルの差に歴然とするんだよ。 どうやって勉強したのかがいつも不思議に思う
勉強なんかしてないよ。 プログラミングで遊んでるんだよ。
>>141 情報系だとOS実習とか普通にあるからねえ。
>>130 > 大学でダラダラ勉強してる奴より高卒で18から現場にいる低学歴の方がずっと優秀だったりする
そりゃ大卒者に何を求めるかって話だな。
専門卒相当のスキルが欲しいのに募集が大卒だったりすると
専門学校相当の教育を現場で叩きこまれたほうが優秀とかは普通にある話。
原因は求めている人材と応募条件とのミスマッチで、
根本原因が本邦では各種学校の進級、卒業条件が一部例外除いてザルなせいで
応募者を足切りするにあたって「ちゃんとした高卒」が欲しいなら
「高卒相当=大学入学試験合格者=大卒資格者」とかそんな理屈で大卒を条件にしなきゃいけない、
とかのバカな現状が理由だから募集条件をそうそういじるわけにもいかないし。
研究職でもない限り、大学に行く必要性は特に無いんだけどな
>>144 率直な疑問なんだけど、大学中退の俺はどういう評価になるんだ?
>>146 昔の外務官僚みたいな理由がない限りは、
「高卒相当の能力はあるんだろうけど普通は卒業するところを中途で辞めた胡散臭い奴」ってとこじゃね。
もちろんリアルのお前さんがどうかは関係なしとして、な。
なにぶん足切りってのは効率のために大雑把に切り落とすのが趣旨で、そこに有望な人材が眠ってたとしても諦めるって方式だしな。
>>146 採用選考においては、高卒未満
物凄く光る何かがない限り、高卒より就職困難
実際は、光るかどうかのチェックすら行わせてもらえない可能性が高いな コネでもなんでも使って、大量募集大量面接の通常採用チャネル以外で勝負
150 :
146 :2011/05/08(日) 23:18:13.72
高卒未満なのかw それなりの会社に履歴書送りまくったが面接まで行けたのが3割程度だったかな。 面接に行っても大学辞めた理由を詰められてほとんどアウト。 しかしベンチャーだと何故かやたら受けが良いのだ。 もう安定した人生は諦めるしかないな。
COBOLさんがなかまに なりたそうに こちらをみている
>>145 日本も欧州みたいに職業高校の地位を高くするべきだと思うけどね
あと中学生で労働基準法教えとけと思ったり
>しかしベンチャーだと何故かやたら受けが良いのだ じゃあ採用されたんだ? そうでないのなら、単にベンチャーの採用担当(社長?)が、はみ出し者の扱いを心得てるだけに過ぎない マトモな人間なんてそもそも来ないので、意に沿わない人に穏便にお帰りいただく技術くらいはどこも持ってる 一般企業採用担当なら怒鳴ったり皮肉ったりして人生論や社会人論を語って追い返すところ、 ベンチャーでは頷き同調して手を振って送り返し激励しつつドアを閉める Ruby関係ねえ…
そろそろマ板にでも行ったほうが良いかもなw
>>150 >それなりの会社に履歴書送りまくったが面接まで行けたのが3割程度だったかな。
大卒だってそんなものですよ。
./test/test_hogehoge.rb:114: warning: instance variable @foo not initialized め、めんどくせえ… 書き間違いを検出する意図はわかるが、でもめんどくせえ 「@foo = '...' unless @foo の代わりに @foo||= '...' とだけ書くと警告出ないよ」とか 台無しノウハウばかり貯まる
>>155 それって-wオプションを付けたときだけだよね?
>>156 超一般論として、できるならしてると思うの
>>157 rake test でもよく見るな
-w つきで実行してるのかしら
invalid multibyte char (US-ASCII) これってどうやったか解決できますか?
force_encoding のコストって文字列の大きさとかに依存しないよね? どんな文字列でもエンコーディング情報ちょろっと書き換えるだけのライトな処理だよね? 正規表現のマッチの都合とかでガンガン書き換えちゃっていいよね? …ああ、スレッドとかの関係で、エンコーディング書き換えた直後に他の場所で利用される可能性はあるのか じゃあ、dup したものをガンガン書き換えちゃっても重くなったりしないよね?
>>161 サンプルスクリプト書いて実験してみたらいいんじゃないすか
>Twitter の処理能力の限界を超えました。 だからRubyにしとけっていったのに…
rubyで限界だったから捨ててるのにw
そこでCじゃなくJavaに行った開発陣の限界を超えたということか
>>165 JITを考えるとCとJavaとじゃ性能的にそう大差ない(桁違いではない)
とすると、単に施設の拡張が追い付いてないだけじゃね
167 :
デフォルトの名無しさん :2011/05/11(水) 20:18:50.17
1.9.3にFile.writeが来そうな気配。
114の話?
169 :
114 :2011/05/11(水) 20:37:43.42
Windows で p obj が遅い件、自分なりにちょっと調べてみたので報告しておきます
結局は
>>132 の指摘のとおりなんですが
1.upto(5000) {|n| p n}
を疑似的にC言語で書きなおすと以下のような感じになってました
for (int i = 1; i <= 5000; i++) {
printf("%d\n", i);
if (! _isatty(fileno(stdout))) {
fflush(stdout);
_commit(fileno(stdout)); //※、rubyソース上では fsync()
}
}
この _commit() の存在が、出力の数千倍の速度低下を招いている原因です
対象は 1.9.1 以降すべてと、1.8.7-p248 以降です
1.9系だけではありませんでした
ChangeLog を見ると、修正は単体で反映されているようなので、現状では一応仕様のようです
もっとも、どんな不具合の経緯で修正されたかは分かりませんが、
rb_io_flush() の関数コメントには
* Flushes any buffered data within <em>ios</em> to the underlying
* operating system (note that this is Ruby internal buffering only;
* the OS may buffer the data as well).
とあり、Windows だけOSレベルで flush するのはコスト的にどうかとは思いますが
[ruby-core:20043] flushしてからstat呼んでるのにファイルサイズがとれないという話 これlinuxでも保証はされてないんじゃないかなfsync(2)読む限り
Linuxの場合はman見ると > It also flushes metadata information associated with the > file (see stat(2)). って書いてあるから大丈夫なんじゃまいか
現状では Linuxでは fflush のみで、
Windows のみ fsync (相当)を行っていることが問題
>>171 がfsyncの説明なら
Linux だって fsync をしない限り、サイズ等のメタデータは保証されないってことにはならないの?
173 :
171 :2011/05/12(木) 06:51:07.50
>>172 ,170
ああ、ひどい勘違いしてた。スレ汚してすまない
ファイル周りなんて基礎なのに一向に枯れないねえ。
Windowsどころか下手すると自称POSIX準拠どうしでも違ってるところがあったり、 Rubyの歴史的にはlibcのバッファリングを使わないようにしたのはついこの前だったり、 そう簡単に安定するわけがないあたりだと思う。
仕事でRubyはあり得ないしそんな細かいことまで気にならない
おれ仕事でRubyばっかりなんだが… Scalaやりたいって訴えが全く聞いてもらえない
Scala使って会社が儲かる理由を説明しないとなw ねぇよ、ねぇw
好きだけじゃ喰っていけないからな。夢見るルビリスト。 安定して無いのに業務で使おうだなんてやっぱり無謀過ぎるよな。無茶しやがって。
和製プログラム言語ってなんか違和感が…
>>178 ある程度 拡張の可能性があって、複数人数で開発しているようなプロジェクトはScalaは向いていると思う。
適材適所だよ。
>>177 の会社はなぜScalaに移行できないんだろう? 知り合いの会社は社内プロジェクトや
Javaのテストプロジェクトなどを中心にいくつかScalaに移行して行っているよ。
本質的には「プログラムを作る言語なんてなんでもいい」はずなので(必要なのは出力だけ)、 その問題から望む出力をいちばん作らせやすいのを使うべき そうなっていないのだとしたら、そりゃ、別の理由が優先なそういう分野のお仕事なのだろうし仕方ない
すれちがいですから。
RubyアンチスレにいたJava信者か?
Rubyはじめました やめました
実務で使うとしたらRailsのための言語って位置付けだろ。 他にわざわざRubyを選ぶ理由が見当たらん。
>>188 雑務を処理するためのスクリプトとかさ、
Rubyはむしろそういう用途が主だと思うけどなあ
まぁ金が取れるとしたらRoR案件くらいしかないわな。 ビジネスロジックにはまず出番無いし、Rubyでやりますって言ったらたぶんピコピコハンマーでたぶんピコピコされる。 GUIのアプリだとWindowsでいごくことがほぼ前提条件確定なんで、.NETかJavaしか選択肢がなくなる。Rubyのるの字も出てきません。
>>190 うむ
Programmers' Best Friend だと何度
シェルスクリプトでやってたものを Perl が代替してそれを Ruby がもぎ取った
Perl と言われて CGI しか思いつかないような人には、残念ながら理解できない
Perlはsedやawkと同類として扱われてたような
シェルスクリプトだけではプログラム起動くらいしかできないからな 実際は sed とか awk とか grep とかあのへんのテキスト処理プログラムも含んでると思う そんなもの必要なくねシェルだけでだいたい書けねとか言う人は zsh 使いなので塩撒いとけ
DebianをインストールするとPythonは入るけどRubyは入らない Perlをもぎ取ったのはPythonだろ? 現実を見ようよ。
ぶっちゃけ
>>192 を書いた直後から懸念はあった
シェルスクリプトというものが通じない可能性を
>>195 公開配布されるシステム起動スクリプトだけがシェルスクリプトではない
あなたはシェルスクリプトと言えばLinuxなどに付属するプログラムが起動されるとき専用の
システムスクリプトだと思うかもしれないが
RubyはWebアプリケーションや雑務処理用のスクリプトとしてなら 仕事でも使われることがあるけど、GUIや商用ゲームでの採用例はまったく聞かないな ゲームは純粋に性能の問題でスクリプトを使えない、ってことだと思うけど GUIはもうちょっと何とかならないかなあ、と思うことがある 何が用意されれば、商用GUIアプリでRubyが使われるようになるんだろう。RAD?
$HOME/binにあるような自作プログラムを書く言語、と言わないと通じない人種がいることは理解しないとだめこ
LinuxにおけるPerlの位置を奪ったのがPythonなのは異論ないなあ
>>197 有名どころでいえばCivilizationやBattlefieldにPythonが使われてるようだけど
そういうゲームしてる人のPCってスペックが超絶だからね
現在のPython実装とRuby実装の性能の差が採用不採用に反映してるかは疑問
>>196 >>198 いや通じてるよ。
ここまで話が噛み合ないと、
「お前がもぎ取ったと思うんならそうなんだろう お前ん中ではな」
と言わざるを得ない。
Pythonに標準でGUIがついてたからという、言語的には心底どうでもいい些細な理由がきっかけだと思うw ライブラリ重要 PythonのようなGUIライブラリを充実させるための人員はとても確保できないから仕方ないな 作るだけなら頑張る人だけでなんとかなるけど
Linuxの脱Perlはスパゲッティライブラリバージョン地獄に陥ったからだったはず(どっかに記事があった) Rubygemsが整備されてなかったRubyじゃ二の舞だし、Pythonにならざるを得まい Rubygemsも正直どうにかして欲しいんだが サーバ側の登録ライブラリが増えるに従って実行者のマシンスペックが必要になってくるとかありがち過ぎる そしてトドメとしてBundlerだ おまえらRubyの実行環境はRailsしかなくてメモリとCPUはサーバにタップリで使い放題だと思ってるだろ
>>203 Pythonに標準添付のTkinterはTcl/Tkバインディングだけど
(QtやwxWidgetバインディングじゃなくて)
Linuxや商用アプリでそんなに使われてたっけ?
>>203 > Linuxの脱Perlはスパゲッティライブラリバージョン地獄に陥ったからだったはず(どっかに記事があった)
へええ。探してみよう
gemでメモリ不足になってインストールを断念したときは椅子から転げ落ちたw
, - ,, ミ ,ミ ∧/∩" ,,- ,,(´・ω・`) 良くわからんがガンバレ ミ ;⊂ ノ `''''"(つ ノ (ノ
Core i7&メモリ6GBのデスクトップでさえイライラするRubyGems いったいRubyGems開発者はどんなモンスターマシンを・・・
Perlは元の地位に戻っただけで Pythonに取って変わられた印象は無いなあ Perlで面倒だった部分をPythonが担当してる印象
おまいら様はutf-8の正規化とかどうしてるの? 全部やると面倒だからバイトシーケンスが異なる同一文字の処理だけやっとるけど…
うちのUbuntuではこんな感じ $ for lang in perl python ruby; do echo ${lang}; aptitude search "?section(admin)?depends(${lang})" | wc -l; done perl 112 python 138 ruby 16 $ for lang in perl python ruby; do echo ${lang}; aptitude search "?tag(suite::gnome)?depends(${lang})" | wc -l; done perl 20 python 77 ruby 13
>>209 もしかして自前で判断してやってるのか
そーゆーオリジナリティは迷惑だから即刻やめろ
>>202 GUIは、whyのshoesとかよさげだったけどアレがあったしな
いまだとTitaniumDesktopでRubyバインディング使うとかか。
Webkitベースだから基本ブラウザで表現できる程度なら何でも出来るし。
> 日本初のプログラミング言語「Ruby(ルビー)」 [笑] # もしかして、「日本発」のミス?
どこで書かれたかを端折るなんて コミュニケーション能力ゼロだな。 だからプログラマは〜みたいに言われるんだよ
215 :
uy :2011/05/15(日) 03:04:37.07
これだからプゴルラマはゴミなんだよな かみました プログラマはゴミ
プログラマがゴミだとしたら そのプログラムを使うユーザ様はさながらゴミにたかるハエですな
Rubyはプログラミング言語マニアのおもちゃ
いいえわたしたちがMatzのおもちゃ
いいえMatzがみんなのおもちゃ
String#encoding なのはなんで? String#charset じゃだめだったん?
>>220 そうは言うがな
irb> p "ねこだいすき".toutf8.charset
Unicode
これ実際に必要な情報なんも入ってないじゃん?
かといってたとえば巷の charset=UTF-8 が「間違ってる」かというとそうでもなく…
encoding の別称が charset で各種定義に使用されており、character set とは別物だと考えるのが妥当だと思う
曖昧な charset じゃないのは混乱避けるためなんじゃね
1つはWebアプリフレームワークを習得しとくかーと思って いま流行っぽいPadrinoに手を出したら、SQLite3へのアクセスでエラーになる 何でだろうと思ったら、DBのパスがこんな状態になってた c/padrinotest/db/padrinotest_development.db (Windowsのパスでは c:/padrinotest/db/padrinotest_development.db となるのが正しい) SequelとPadrinoのどちらに原因があるのか分からないが 相変わらずWindowsでのRubyは鬼門やで・・・
>>219 と思わせておいて、Rubyがモルモンの資金源
開発者全員が無宗教なPerlに転向しようず!
>>220 charset は MIME 用語なのでやめたんだと思う
HTTP やメール関連くらいでしか見かけないだろ
資金源てどこでもうけるんだよw
Larryは福音派じゃなかったか?
MIME の charset の部分を encoding とだけ呼んでしまうと、 B エンコーディングとかを指定する部分をどう呼ぶべきか困ってしまう きちんと character-encoding と呼ぶべきだが、これはあまりに長い ということで、いわゆる encoding には charset という語を新設して、 MIME encoding は base64 か Quoted-Printable を指定する手段を指す語としたのさ =?charset?encoding?text?= 短いは正義 日本人なら硬さで勝負 この規格(を流用したHTTP)での charset の部分を指定するものだから、encoding=UTF-8 ではなく charset=UTF-8 と書く MIME と無関係の Ruby では charset という語を採用する理由がなく、 Character Set に関係するデータでもないので、妥当に String#encoding を採用した と思う
229 :
デフォルトの名無しさん :2011/05/15(日) 13:51:44.54
>>226 たぶん、「収入の十分の一を教会に納める義務がある」という奴だと思う。
matzのそれだけで維持できるわけないけどw
アメリカ人の4割は恐竜と人が共存してたと思ってるんだっけ? 宗教おそるべし、もしくは我々のほうが嘘を教えられてる?
Rubyコミュニティに入るにはやっぱりそのナントカ教を崇拝しないといけないの?
誰だったかちょっと前、悪マニのbeyondが絡んできた時に禅宗ですがとか言ってたぞ
カソリックでも洗礼受けたあとは月一で月謝みたいの出すしな
日本人のほとんどは無宗教です、とかいいながら死んだら坊主に大金がとんでくわけだし
>>232 空飛ぶスパゲッティモンスター教を信仰してます、って言えばOK
モルモンモルモンって言ってる奴はbeyondによる謀略にまんまと引っかかってることに気付くべき
何がしかの神を信仰してないと役職につけないコミュニティって ボーイスカウトぐらいしか思いつかないなあ
238 :
uy :2011/05/15(日) 21:38:42.13
人とのコミュニケーション、ゼロ状態と 宗教に入って週1くらいで教徒同士で集まって「おお、神よー・・・」とかいってるのどっちが健全?
後者だな。 前者は人間といえない。
高1の妹に話しかけても「ん」か「や」しか返事してくれないけど一応コミュニケーションは取れてる。
そもそも設立者のジョセフスミスが設立前からの逮捕裁判歴をもつ犯罪者
一夫多妻のカルト宗教(モルモン軍をもって政府と衝突 和解するも やめたわけではなく「中止」しているだけ)
やめた人間を滅びの子として糾弾するカルト宗教
モルモン教関連性暴力告発ページ
http://www.interq.or.jp/tokyo/jamnet/ こういうカルトに入る1/10税だから問題なわけだがw
ユタ州の来歴を知らない子がまたまたやってまいりました
おまえら次の日曜に近くの教会で歌って来い、いいストレス発散になるぞ RubyでJavaでいうstatic finalなクラス変数の変わりになる手段てなんかある?
>>243 「static final なクラス変数」って、要は「クラスに所属する定数」ってこと?
代わりも何もクラスに所属する定数って普通にRubyでも使うじゃん
要するに代入できなくてコンパイル時に定数展開されるような何か、ってことだろ。 性能のことを言いたいなら、そういう場合はサクっとCで拡張ライブラリを作るのが、 訓練されたRubyistってもんです。
モルモン教に行けばパツキンの若いおにゃのこに出会えるよ
コンパイル時に…って話になると言語選択自体がおかしいしなあ…
>>243 それを使って何したいのか言ってくれれば
Ruby的な代替手段をお教えできるかもしれないかもしれません
モルモン教の伝道師といえばスーツにマウンテンバイクというイメージ。 なんか気さくに話しかけてきたから、 「私はラムダ教ですのですみませんね」って言ったら、 「わーぉ」と言って帰って行ったわ。
λ算法騎士団は秘密結社だから、そう名乗ったら偽者に違いあるまい
>>248 > コンパイル時に…って話になると言語選択自体がおかしいしなあ…
JRubyならクラス定数で望みの挙動になるかなあ
どんなに取り繕ったところで、ruby開発者が世間一般がカルト教団と認識しているモルモン教の宣教師って事実は変わらないんだけどな
>>253 ああ、そうだな。
で、その事実に対して我々はどう対応すればいいのさ。
「カルト臭がするRubyを排除してカルト臭がしないJava、Perl、PHPに乗り換えましょう」
なんてキャンペーンでも打つか?
>>253 が beyond と一緒になって「カルト教団言語マニアックス」ってサイト作って宣伝すればいいだろ。
ここでプログラミングの話を邪魔し続けるよりも1000倍生産的だ。
>>255 彼はプログラミングの知識がない可哀想な人なんです
技術的な話にはもう一切ついていけない
>>253 みたいのをからかって遊ぶのは面白いからmatzに是非続けて欲しいな
恥ずかしい
理系の人間にありがちな技術系以外はさっぱりな人。 カルト教団を見破れなかったとしても温かく見守ってあげましょう。 子供はかわいそうだけど。
結局論破できなくて人格攻撃に移行という負けパターン来ました
アホがいっぱい釣れてるしむしろ成功の部類
うん、負けでいいよ 満足したらもう来ないでね
>>253 みたいなのにもっと来て遊ばせて欲しいなw
>>260 そういう子供を囲い込むのもカルトの手だろ
マインドコントロール
気がついたときは自分も共犯者
脱退後の報復の恐怖
自分で判断できるようになったときにはもう手遅れ
そろそろ宗教板にでも行こうか
怪しい宗教家が作ったものだろうが犯罪集団が作ったものだろうが、 タダで使えて便利なら気にせず使うに決まってんだろ。 Ruby使ったらモルモン教に染まるわけじゃあるまいし、アホくさ。
意図的かどうかいいかわるいかは置いといて広告としては機能するだろね あの有名ハッカーが使ってるあのエディタみたいな感じで
嫌韓厨みたいなもんだからいなくならないだろうなあ
EOF
でもruby使ってる時点で、まつもとの思考には染められてる訳で。 他人のプログラム読むのって苦痛だけど、まだ染まってないから。修行して教義を理解してくれば問題なく読めたりする。
プログラミングにまつわる思想は染み付くかもしれないが、 宗教思想に染められるわけではないのでどうということはない。
ある宗教、例えばA教があったとする。 A教にとてもとても否定的な人は、自らが非A教という宗教のとてもとても熱心な信者であることを自覚したほうがいいかもね。
アレフに超否定的な俺は宗教家だったんか
所ジョージの吹き替えも好きだった
RubyがだめならJRubyを使えばいいじゃない
RubyKaigi東京でやるのか。 大阪とか京都の方がいいんじゃないか? 外国人ガクブルしてる。
278 :
デフォルトの名無しさん :2011/05/17(火) 23:35:13.32
>>277 この手の会場は1年以上前からの予約が必要でな。
島根でやればいいじゃまいか。
次は造幣局を貸しきりにしてRubyHanamiにしようぜ
dup して force_encoding(::Encoding::ASCII_8BIT) してたメソッドを多用してたらしい処理に 200MBくらいの文字列渡したらメモリ使い切ってデスクトップが吹っ飛んだ 引数をなんでもかんでも dup して force_encoding するなメリケン氏ね
>>282 dupのCopyOnWrite化が望まれるなw
dup して force_encoding してくれてないがためにエラーの原因がつかめずに悩むことが多い
というか、dup しなかった場合は def foo(str) str.force_encoding('BINARY') ... hoge(str) end の ... の部分にいるときに、別スレッドで str_orig.force_encoding('Windows-1252') とかされたら hoge には Windows-1252 の str が渡るんだよね?
>>285 Ruby はそういうもんだと思って手元で対処するしかなかろう
arr.map{|e| e.to_i}
...
puts arr.inject(0){|r, i| r +=i; r}
で ... にいるときに別スレッドから arr << "5" とかされることを freeze なしで防ぐことはできないし、
freeze してしまったらこの世の誰もそれを変更することができない厄介者に成り果て、
誰かが freeze したかもしれないオブジェクトを受け取らなければならない API なメソッドは
結局最初に dup しないといけなくなるのだ
dup 最強
freezeはあるのにmeltはないのか…
>>287 オブジェクトをロックするシステムがあると便利かなあ、と思うことがなくもない
>>285 はようは「今この文字列のエンコーディング情報書き換えるのちょっと待ってすぐ終わるから」と言えれば十分なわけで
ひつもん sjis = "日本語".encode('Shift_JIS').force_encoding('Binary') s = sjis.encode('UTF-8', 'UTF-8') p s.encoding, s, s.valid_encoding? で、 s が「エンコーディング名がUTF-8でバイナリ列はsjisのまま」なのは仕様?
「エンコーディング変換するよ今なら安いよー」 「ういっす、俺UTF-8らしいんすけど」 「あ、UTF-8なの? じゃあ変換する必要ないね、そのまま通ってよ」 「しゃーす」 というようなことが起こってると予想 self のエンコーディング名が食い違ってるかもしれないという前提がないんだろう そういうののチェックは別なメソッドの仕事 irb> p sjis.dup.force_encoding('UTF-8').valid_encoding? false
UTF-8とみなしてUTF-8に変換 すればバイナリ列に変更を加えないままエンコーディング名だけが変わるのは当たり前かと
「そもそもUTF-8とみなせません」というエラーなりなんなりは、出てもいいよね っていうかString#encodeのマニュアルに書いと毛
dupして(またdupだ)force_encodingしてvalid_encoding?するというのが妥当だと思う trueだからといって必ず正しいわけではないが、falseは常に誤りだ
UTF-8とみなしてEUC-JPに変換なら正常にエラーが出るから実用上問題ないんでない? もともとencode('UTF-8' ,'UTF-8')なんてやる時点でいろいろ間違ってるし別にいいんじゃないかしら。
295 :
デフォルトの名無しさん :2011/05/18(水) 22:51:59.45
引数が同じだったら具体的なコード変換はスルーするのかしらん。 String#encode の実装は transcode.c だっけ? 見てみるか。
>>293 文体から物凄くarton氏の匂いがするのは気のせいか
Rubyらしくない複雑さだなあ いやエンコーディングの問題自体が本質的に複雑だというのは分かるんだが
「概念は出来てるがそれで力尽きてしまい実際のメソッドの使い勝手が悪い」というのは Ruby の十八番だと思う
>>285 だって、文字列という基礎オブジェクトの状態をグローバルに変更するか複製するしかないという時点で
なにか方向性が間違ってると気づいて踏ん張って立ち止まって欲しかった
force_encoding それ自体の仕様のせいで force_encoding 「するしかない」状況のほうが多いのよ
force_encoding を多用して欲しくないなら、force_encoding が 1回で済むくらい使いやすくするべきだった
外人が well-formed のエンコーディング世界に浸って動こうとしないと非難するなら、
well-formed なコード世界に浸って「手元で試したメソッド動作が素直だから」とか思考停止するのも自己批判されるべき
んが、1.9.0 時代にさんざんやって思いつかなかったようなものが今更思いつくともぶっちゃけ思えねwww
UTF-8 以外のファイルを LAN/WAN に流したら懲役刑とかそういう国際法できないかな
アラブの大金持ちあたりが Unicode 以外のキャラクタセットを買い取ってある日突然使用料請求するとか
ある意味、時間が解決してくれつつあるんだけれども
んまー、古いシステムの都合って場合ってのもあるっちゃある。
まあ別に遊んでたわけじゃないだろうしな いろいろだだ漏れ破れまくりだが、糞みたいなエンコーディングの現実を繋ぐ相互干渉としてはうまく動いてる方だと思うぞ 誰かがうっかり何か思いついて2.0くらいでもう一皮剥けたメソッドと概念が出てくることを期待
そもそも、>289のコンセプト (おそらく、String#encode関連でエラーなどになるかどうかでfromの妥当性を推定する)は あんまりうまく動かない irb> sjis = "日本語".encode('Shift_JIS').force_encoding('Binary') irb> s = sjis.encode('UTF-8', 'EUC-JP') Encoding::InvalidByteSequenceError: "\x93" on EUC-JP irb> s = sjis.encode('UTF-8', 'Windows-1252') "“ú–{Œê" irb> s.valid_encoding? true
str.encode(to, from) で InvalidByteSequenceError になるのと str.dup.force_encoding(from).vaild_encodng? が false になるのって同じだよね どっちかだけ起こるってないよね普通
>>302 >str.encode(to, from) で InvalidByteSequenceError になる
これを期待してエンコーディングの妥当性を判断しようというのが方針としてだめだめ。
irb> p Iconv.conv('UTF-8', 'UTF-8', "\xC0\xAF") Iconv::IllegalSequence: "\xC0\xAF" irb> p NKF.nkf('-wW', "\xC0\xAF") "" irb> p "\xC0\xAF".encode('UTF-8', 'UTF-8') "\xC0\xAF" チッ
文字列があるエンコーディングに関してwellformedであるかどうかというわりかし重要な事項を調べる方法が 「実際に対象文字列のエンコーディングを変更してvaild_encoding?する」しかないのがいろいろまずいのだと思う Encoding.well_formed?(str, encoding) とかあるといいのに 「ただ捨てる」だけの明示的なオブジェクト複製というのはふつう嫌われる なんとかしてそれを行わない方法を常用するように、バランスが働く
妥当性を確かめるメソッド、というのは確かにあってもよかったねえ。
文字列のdupに関してだけメモリ管理業者とゴミ収集業者がなんとかして頑張れ。
大まかな推定であればNKFのguessでいいわけだから、 求められてるのは一通りデータを全部舐めるようなガチのチェックってことでいいのかな
デイブトーマス原発にビビって逃げたか
は?
昔はjisしかネットワークで通らなかったことはあるな。今でも通らなくても文句は言えない。 世界は7ビットでも困ってないし。
おまえの言う世界には北アメリカ大陸しか存在しないのか?
アメリカ人なんじゃない? アメリカ人はアメリカが世界だと思ってるってよく言うし。知らないけど。 アルファベット以外の文字を使ってる国を日本ぐらいしか知らないんだろう。
>>311 それをいうならMTAじゃねーの
7bitしか通らないネットワークてFTPとか困るだろw
rubyて日本生まれの割には多バイト文字関係めんどいのう
めんどくさくしないってことは、めんどくさくしないシステムから漏れた人が涙をのんでるってことだよ 全員が少しずつめんどくさいかわりに、全員が利益を享受できることを選ぶ者がいてもいい
1.8は多バイトめんどくさいけど1.9はめんどくさくなくね?
というかRubyでもまだ全体的に見ればマシなほうじゃね 本当に面倒なのはそもそも文字コードが色々あることすら考慮してないし
プラットフォームやライブラリにマルチバイト操作の関数なんかが準備されてても 海の向こう製のアプリなんかは、全然それを使ってなかったりするしね。
インターネットは今でも亜米利加中心。ティア1の接続事業者は亜米利加に有るし。 島根の田舎に居ると知らないだけ。 開発者が手抜きした結果、使う側が苦労してる漢字だよな。 7ビットで済む環境でマルチバイト処理する理由が無い。 日本語前提のアプリで、右から左への表記に対応した処理したり、ハイフンやスペースを自動的に挿入する様な表記処理したりしないだろう。
アメリカが中心だからアメリカが困っていなければ世界が困っていないとは。 脳みそアメリカナイズされてるね。
CHAR_BITが7のC言語を作る仕事に戻るんだ
はっきり言ってアメリカ人はガチでアホなんだよ インチ単位系とかもいつまで使い続ける気なのか
極東の原住民が何か吠えてるようだwww
そこらへん文句言ってるのは極東の原住民だけじゃないんだなこれが
326 :
デフォルトの名無しさん :2011/05/20(金) 23:09:23.99
Rakeの後継ってありますか?
日本でも電気屋にはインチがあふれているが
>>326 Rake Anotherっぽいのはある。Slopとか
329 :
uy :2011/05/21(土) 07:53:47.91
だから言ってるだろ 仕事でそういう要求きてるとかじゃない限り、ソースコード中にマルチバイト使うなと 無駄なことに時間費やすなよ 無駄なんだから この問題は初期のコンピュータの設計者の頭の調子が、以下略だったんだ たかが256バイトで全て表現しきれると思ったか ソフトウェアではなくハードかミドル的に対処すべき問題
Stringというクラス自体が邪悪。 あんたたち金輪際Stringはつかうんじゃないよ!
自然言語だからといって英語も日本語も同じように扱おうとするから破綻する。 プログラムにおいてStringと認められるのは英語のみ。 他は全てバイナリデータだ。 日本語の自然言語処理をしたければバイナリ処理をしたまえ。 もっとも、日本語をJStringと定義するのは自由だがね。
また頭のおかしい人がいるな
日本語だけマルチバイトのストリング使えバいいじゃないwww
1バイトで文字を取り扱いきれない言語は日本語だけだと思っているのか……?
じゃあシングルバイトのストリングを実装した設計が間違っていたとも言うのか? 島根に向かって土下座でもしとけ。教祖の実装は絶対!
>>336 1.8のString側ではマルチバイト文字だろうがなんだろうが1バイト単位で扱うってーやり方が問題アリだったから、
1.9ではStringにエンコーディング情報持たせてマルチバイト対応したわけで。
1バイトずつ処理したけりゃそれ用のメソッド用意すりゃいいだけだしね。
>>336 何も知らないなら無理してレスしなくていいよ
君つまんないから
ruby 1.9.2p136 (2010-12-25 revision 30365) [i386-mswin32_100] p Dir.glob("**/*") 漢字名が含まれるディレクトリ下の要素を全く拾ってこない。
ファイル名やディレクトリ名に漢字とか使わないからどうでもいい
341 :
uy :2011/05/21(土) 21:54:38.43
>>331 全俺が超同意した。
もう、どうやったって無理だからなマルチバイト
自分の周りの環境だけ対応させたって
英国圏がマルチバイトへの対応が遅すぎて話にならない
そっちのツール使うときにどうせ日本語動かなかったり文字化け
10年遅い時代を生きたいならかまわないけど、
いい加減、マルチバイト文字を「マルチバイト文字」とかいって画面に表示させるのが不健康だという事に気づくべき
マルチバイト文字なんてねーよ。それは文字じゃないし、文字と扱わないで良いんだよ 無理なんだから 死ね
>>340 自分で作るディレクトリには使わんが(スペースも)
最初からカタカナとかあるしな…
>>341 じゃあここから英語でレスしてくれ
ファイル名やディレクトリ名に漢字とか使わないでね なんて注意書きはエンドユーザには絶対に通用しない。 OS側で使える以上、奴らは絶対に使う。 つまりエンドユーザ向けの開発には使えないという事。
>>343 まあそんなものを持ち出す前に、
・自分で手間かけてあれこれしてインストールしなきゃいけない
・CLI中心でGUI軽視
の時点でRubyはエンドユーザーに提供するような用途では使えない
奴らはCLIの時点でもう使う気起きないんだから、ただでさえ柔軟性が要求されるディレクトリやファイルの処理なのに
PATH通したりカレントディレクトリ移動したりしてオプションメタメタつけて起動なんて最初からやるわけがない。
ディレクトリ名に漢字使えるとか使えないとかそれ以前の問題。
Rubyは Programmer's best friend
プログラマが自分の手元でぴょこぴょこ作業を自動化するのに使うのが主な用途
プログラマならマルチバイト文字やスペース入りのディレクトリ名ファイル名はRuby以外でもめんどくさいことになりがちだから
もともとあまり使わない。
かといってエンドユーザ向けのアプリがバリバリ作られる C, C++, Java, C#がEnd-user's best friendかっていうと
best friendというかなんというか… むしろ悪友という気が…w
腐れ縁
>>344 > ・自分で手間かけてあれこれしてインストールしなきゃいけない
> ・CLI中心でGUI軽視
そこでTitaniumDesktopですよ
>>342 こいつにレスしてるのもうお前だけなんだが。。。
Rubyのシルバー持ってるのに内定がでないお… というか面接官にRubyネタが通じないお…
>>350 マジな話、言語の話なんて人事は無関心
アピールするなら、「こういうものを作って発表したら、こんな反響がありました」とか
実績がからむ話のほうが食いつきがいい
それ以前にこの業界はやめとけといいたいけどな
元請の場合はプログラムなんかしないし、下請けの場合は100%ブラックだ
>>339 WindowsXPで
>ruby -v -e"p Dir.glob('**/*')"
ruby 1.9.2p180 (2011-02-18 revision 30909) [i386-mingw32]
["漢字名が含まれるディレクトリ", "漢字名が含まれるディレクトリ/要素", "漢字名が
含まれるディレクトリ/要素/sample.txt"]
他に
ruby 1.9.2p0 (2010-08-18) [i386-mswin32_100]
ruby 1.9.2p0 (2010-08-18 revision 29036) [i386-mswin32]
ruby 1.9.1p243 (2009-07-16 revision 24175) [i386-mingw32]
ruby 1.8.7 (2009-06-12 patchlevel 174) [i386-mingw32]
でも同じだった
# coding: utf-8 p Dir.glob('**/*')
>ruby -v -Ku -e"p Dir.glob('**/*')" | nkf -Ws ruby 1.9.2p180 (2011-02-18 revision 30909) [i386-mingw32] ["漢字名が含まれるディレクトリ"] 確かに、サブディレクトリが列挙されない 1.8.7や 1.9.1だと ちゃんと列挙されるけどSJISの文字列が返ってきた
>>341-343 マルチプラットフォームのファイルを同期できるDropboxは面白いぞ
Windowsで生成ことができないファイル名やディレクトリ名はWindowsでは同期されない
エンドユーザ相手にはいんだよ、そんなんでw
RubyKaigi初めていくんだけど知人いないのに懇親会とか言ってもしょうがないよね。 泣きながら独りで飯を食うだけになりそう。
あくまで主観だけど 他の言語の集いと比較すると人付き合い苦手(非リア充)な感じの人が集まってるからあんま気にすんな。
あいつがリア充だったころ俺はうな重だった 奴らがペアプログラミングしてるころ俺はペヤング食ってた わかるかなぁ、わかんねえだろうなぁ
359 :
デフォルトの名無しさん :2011/05/23(月) 05:40:03.02
Dropboxはオープンソースになって自分のサーバにインストールできるようになるまで使わない。 便利だからといって個人的なファイルまで他人のサーバに置くのは流石に気持ち悪い。
360 :
デフォルトの名無しさん :2011/05/23(月) 09:06:44.04
むかしのRubyKaigi懇親会はみんな話すことが出来なくて食べ物だけが 消費されていたが、最近は食い物はあまるようになった、とどっかのブログで見たな。
>>360 みんなはなせなくて食べ物ばかり減っていく光景想像してわろた
というか、事前用意して発表するのでない限り、対面で話す内容なんて特にないんだよな お互いの私生活なんて知っても仕方ないし、 Rubyやプログラミングの話するなら家のPCでメッセージ飛ばせばいい これならirbもメールログもGoogleも完備な上、時間も実質無制限だ いや、無線とノートPC持ってくる人も多いんだけどさ
Twitterのオフ会でわざわざ集まりながらリプライで会話する人たちに似ている
これまでのレスをまとめると、独りで行く人は懇親会に参加してもあんまり意味ないと・・・。
自ら絡んでいくか、絡まれる必要があるかもしれない。 絡まれるためにLTでウケを取るという技も一応あるか。
366 :
uy :2011/05/23(月) 12:41:32.71
コミュ障wwwwwwwwww これだから、COMIC1とかM3はあるのに、プログラム関連でそういう発表場みたいなもんないんだよね
368 :
忍法帖【Lv=24,xxxPT】 :2011/05/23(月) 15:00:33.47
懇親会は、知らん人と話して人脈を作るためにあるらしい
貰ったサインの数で景品(2009)とか 会いたいと希望する人(入場時に名札に書く)と会わせることが出来た数で景品(2010)とか という懇親会の企画は人脈作りを狙っているらしい。
学生ですけど、就職先探しに懇親会にでるのは有りですかね?
>>371 なし
そんなアンオフィシャルものに出るより前に「決まっている」はずだから
なにより仕事とプライベートを自分のために安易に混ぜてはいけない
まあ、インターンでも探せばいいんじゃないのかしら
>>368 > RAnt
そういうノリだとMavenはRavenになるのか。胸が熱くなるな。
インターンなんてやって現場見せたら絶対就職する香具師居ないだろうなw
だいたい地雷だけど全部が全部地雷ってわけじゃ……。
「つらいおしごと」のレベルで留まってる現場の方が絶対に多いと断言できる ひどい所にぶち当たると心が死ぬのも確かなので、選択肢がないならロシアンルーレットだが
地雷というか底なし沼のほうがしっくりくるな
いや底は有る。 が、深さがちょうど爪先立ちして口だけを外にだせる高さになっていて、 コイのように水面でパクパクしてるというイメージ。。
Moonwolfって人を追い出すチャンスだって!
福島第一原発での5重下請け仕事
>>356 そういうのを運営委員会に提案してみてはどうかな。たしかに懇親会は知っているひとがいないとねえ。
せんせー、
>>356 くんがひとりでごはん食べてます
まぁその前に開催できるかも怪しいけどな。 東京はまさに茹でガエル状態。 そろそろ気付いて飛び出す頃。
立候補するとプロファイリングされるのか。 ちょっとビビった。
>>381 ねーよ
懇親会で名刺配って回るアホが翌日どう思われてるか知らんわけでもあるまい
そう思ってるのおまえだけじゃねw
仕事欲しけりゃコード書けや(または発表でもしろ)、とは思わないでもない 名刺で初めて(ネット上の)名前知るような人はそもそも論外 懇親会の意味履き違えてるしポイだポイ まあ、そういう人はそもそも数撃ちゃ当たる式で生きてるのでダメージもなかろう
>>388 お前のオレオレ懇親会定義なんぞどうでもいいわカス
もう名刺配っちゃった人は必死だよねw
逆に聞きたいけど懇親会で名刺配らない状況ってあるの?
言語勉強会でもカンファレンスでもみんな配ってるよね
んで、それを元に話ふくらませたりしてるよね
>>388 参加したこと本当にあるの?
名刺なんてただの挨拶代わりだろw どんだけひねくれてんだ
394 :
uy :2011/05/24(火) 15:30:38.68
誰こいつ? みたいな奴の名詞もらってもな・・・ 会場に名詞専用ゴミ箱、用意しといてくりゃれ
キチガイがいるな
懇親会に出てマイナスになることはないが、 懇親会に出たからといってまともにコードも書けないのに仕事につけたりするとかそういうことはない。 コードを書けることが第一。
元レスの意図を忖度するに、 何か実績があるわけでもなければ、 Rubyに興味があるわけでもないのに 人の合う場に現れてうまい話を探して回るような、 いわゆる「ゴロ」的なものを想定しているんだろうが、 そもそもそんなゴロが来たがるほどの場じゃなかったと思うんだが。 なにか景気のいい話があるでなし。
いちばん最初は
>>371 なので、まあ、学生に役立つ就職コネクションはあんまし醸成されないとは思う
やるなら懇親会とかの「前」なんじゃないかね
懇親会なり二次会なりで盛り上がるのは、トーク発表なりそれより前のネット上なりで正しく目立っててなんぼ
>>371 こんな目的で来られたらさすがにウザいぞ
>>371 自分売り込みたいなら発表すればよかったのに。
まだ間に合う
内定が出ない。 ってか学生が苦しめば苦しむほど儲かるシステムつくったリクルートにイラつきを覚え始める。
はいはいよそのスレでやってねー
404 :
uy :2011/05/24(火) 22:15:12.69
rubygemsの最新verって今いくつ?
rubygemsはオフィシャルサイトがある そこチェックすれば今後は人に聞かずに済むようになるのでそこ行って調べれ
>>409 何も考えずにアップグレードすること自体には問題はないの?
411 :
405 :2011/05/25(水) 11:01:29.91
ググったら1.8.3はバグの塊みたいじゃん 安定版yokose
rubygemsに安定版などという考え方はあまりない いちおう1.8.0からは新フィーチャー版だから気をつけてねみたいなところはあるんだが 警告出ただけでギャーギャー騒ぎやがってpristineしろってンんだろカス、みたいに思ってるとは思う
1.8.3にアップグレードしてみたら既存のgemライブラリ全てが警告吐くようになってわらたw
gem pristine --all すると、警告がどんどん少なくなっていくのがちょっと面白い
>>412 ,414
よく分かってなかったんだけど、お二人のおかげで助かった
moonwolf、すげーキモいな。 追い出すチャンスとか言ってる割に、粘着する気満々じゃん。
いつもRubyのことを気にかけてくれる良い人じゃまいか。 ツンデレっていうんでしょ?
malaかitkzの仲間にならないかなw
>>416 このmoonwolfよりキモかった
昔のRuby界隈はどんだけヤバかったんだって話だよな
Rubyのコミッタで一番イケメンな人ってだれなん?
俺だよ
Rubyは言語そのものの機能や性能に関して語る人がいなくなった。 このままではRuby言語は終了してしまう。 言語仕様を精査して、定式化しようという人はおらんのか。
JIS規格になるとか、なったとかやってたやん
424 :
デフォルトの名無しさん :2011/05/28(土) 02:07:05.41
>>425 すげえ分かりやすいなJIS規格・・・
図とかも織り交ぜて説明されてたら、
7000円でも買っちゃうな。
PDFの中身がメージだからえらい重くて閉口したが。
true<=>false でエラーが出るバグはいつごろ直りそうですか?
なんだよ俺のライブラリ引き受けるスキルのないやつは黙ってろクソが!
true<=>falseに何を求めてるんだよエラーなんて出ないし何かえしても文句いえないだろ?
騙るな騙るなwww TrueClassとFalseClassの大小比較なんて意味なんてないだろう。 NoMethodError: undefined method `<=>' for true:TrueClass でいいんだよ。
>>425 × 2008年3月27日よりJIS規格の著作権保護のためPDF閲覧のセキュリティを強化しております
○ 2008年3月27日よりJIS規格の利権ゴロのためPDF閲覧の面倒臭さを強化しております
>>419 昔も何も、そもそも開発者がカルト宣教師・・・
人間、謙虚さを失ったら終わりだな。 ま、謙虚さを履き違えてる人も多いが。
mypreciouserovideolist.sort{|a,b| a.include?("飯島愛") <=> b.include?("飯島愛")} 出来なくて悶絶したことならある
いますぐmypreciouserovideolistをpするんだ
>>435 それ
mypreciouserovideolist.select{|v| v.include?("飯島愛") }
で良くね?
コードの意図的には、飯島愛を含むmypreciouserovideolistの要素を優先して前に出したlistが欲しかったんだろう 抜いて出すならfindでいいんだけど
mypreciouserovideolist.sort_by{|x| x.include?("飯島愛") ? 1 : -1 } こう? なんかめんどくさいな
こんなときのためのEnumerable#partitionじゃないの? mypreciouserovideolist.partition{|x| x.include?("飯島愛")}
>>440 partitionだけでは用済まないだろ
連結しないと
いやflattenするだけだけど…
まあ実際にはもう少し色々な項目と比較はしてるんだろう いいんじゃね三項演算子で
>>435 > mypreciouserovideolist.sort{|a,b| a.include?("飯島愛") <=> b.include?("飯島愛")}
含むか含まないかで考えるから大小比較できないんだ。
videoの飯島愛成分の濃度で比較するべき。
でもさ臑に着ず有る人多いよね。 カルト教信者とか、お釜とか変な人多いw
生意気な厨房じゃなくて、JKのコミッタはまだかね。
今年でOfficeXPのサポート切れるから バージョンUp対応の仕事がちらほらきてるな プログラミングというか理数系で女子が少ないのは 先天的な問題なんだろうか、後天的な問題なのだろうか まあデキる人はデキるのはわかってるけど COBOL作った人とか
女子は基本的に働く必要ないと思ってるのが大半だからな。
>>444 今時そういう属性をもとに「スネに傷」なんて思うのは四十代以上のオッサンぐらいだよ。
あの世代はマトモな教育を受けてないからな。
いわゆるネトウヨも若年層が中心と思われてたけど
調査してみたら四十過ぎのうだつの上がらない
うすらみっともないオッサンばっかだったらしいしな。
そういうこと掲示板で書いてると、 日常でポロッと同じようなことが口に出るよ
それはない。 ネットではさんざんほむらちゃんまじほむほむとか、 あずにゃんは俺の嫁だとか書きまくってるが、 リアルでは至って紳士的。
笑い方とかで中身モロバレだけどな
プログラマなんて午前と午後で心理学テストで使う人格を使い分けられる人種だろ(ワインバーグ話
* FIleUtils * File * FileTest * Dir なんで統一されてないの? 多すぎね?
全部違うものなのになんで統一するの?
FileUtils.cd FileUtils.mkdir FileUtils.pwd FileUtils.rmdir はディレクトリ操作なのに、 なんでDirUtilsにしないの?
ディレクトリもファイルだから(てきとう
気分です。 特に意味はありません。 気にしないで下さい。
ファイル、ディレクトリ、パス文字列、ファイルの中身の操作は きれいに分類するのは難しい。 かといってごっちゃにすると数がすごいことになる というわけでどの言語のライブラリもすっきりしてないんだけど Rubyのはさすがにごちゃつき過ぎな感は否めない。
クラシカルな階層構造による分類はもう限界に達しつつある。 Ruby3.0ではFoo.Bar.Bazではなく[Foo,Bar]Baz的なタグ管理を導入すべきかもな。
>>459 >数がすごいことになる
これは別によくね?
やっぱFileとStreamに別けた方が自然だわ。 FileがIOを継承してるとか理解できない。
まあ、今作りなおしたらFileはFileTestモジュールとIOモジュールをincludeしたクラスとかになるかと思う クラスやモジュールの直交性に関しては 「今考えるとちょっと違うよね」「うん、まあ、今さらどうしようもないけどね」 みたいなことがなくもない
でも今からでも徐々に直して移行したほうがあとから困らないと思うけどねえ。 ruby2.0までにはちゃんと直すことにすればよくねw
File周りなんて変更加えたら その時点でどれだけ困るプログラムが出てくると思ってるんだ なぜこの程度の想像力もないのだろうか
>>466 そういうレスをしたいなら
よりよいAPIにユーザを移行させる際にRubyプロジェクトがやっている取組についての
例のプレゼン資料を貼ったりしようぜ
と書けば誰か貼ってくれるかな
String周りであれをやっておいていまさら……という気がしなくもない。
469 :
uy :2011/05/30(月) 22:12:44.35
個人的にはmkdirとかとりあえず言語に入れてあっても 頭おかしい奴しか、普段使わないだろJK と思う `mkdir` こっちでかいたほうがタイプ数少ないしバッチコマンドは言語関係ないのに なんでわざわざ言語依存の記述をおぼえて使おうとするかねぇ
そんなでかい釣り針にひっかからなくても…
元々debian前提なんだからmkdirコマンド呼べばいいじゃんってのが合理的な主張とは思う。 rubyで作る様なスクリプトの多くがos非依存の動作が求められたり長期的な運用で使われることが前提ではなく、その場凌ぎのバッチ処理スクリプト代わりに使われてることがほとんどだしね。 何か動作おかしかったら、その時点で修正すればいいとか、描き直しちゃえばいい程度の軽いスクリプトの設計思想だし。 逆に修正しないことで失ってるデメリットも考察するべきだと思うけどなあ。 まだrorで化けの皮が剥がれずに新規参入もちらほら見込めてるうちに、理想的なfile,string.cgiが提供できてないばかりに見限られたりして利用者が増やせずじり貧にマイナー言語の道に先細りしていってもなあと思うけど。 せっかく進化の過程で問題点が見つかってるのに、放置したばっかりにがん細胞の様に全体に影響が転移して、進化も止まって駄目言語と見なされて滅びてしまっても困らないの? 様々な実装を取り込んで進化を続けていくことでより優秀な種を残せて未来につながると思うけどね。 いつまでもがん細胞の様ないまいちな実装といっしょじゃ。優秀な種は残せず未来は見えないと思うけど。
>>473 Ruby使わずにシェルスクリプトを使ったほうが幸せなんじゃない?
475 :
uy :2011/05/31(火) 04:00:58.70
わーい>< こんな長文擁護レスもらったよぉぉぉ><
>>470 ざまぁ
>>471 ざまぁ
>>472 ざまぁ
OS依存だね、けれど言語依存とどっちがいい?
いや、どっちがコーディング楽?
それにOS依存っつったって、
OS側に何かソフト入れりゃすぐ動く程度の依存だろ
君は普段から、OSに依存しないRubyコードを書いているのかと・・・
そんなに、環境をコロコロかえているならば、その生活スタイルをまず変えたほうが良い
>>466 そんなソフトはメンテされてないだけだからいらぬ。
matzさんでまだ秘書雇ってないの? Twitterみてたら相変わらず遅刻してるみたいだがw 奥さんにでも秘書してもらえばいいのに。
有能で独創的な人間は 遅刻するもんだってポリシーだからな
>>475 他の人に説明してもらわないとダメなやつがざまぁとか口走るのか…
> 君は普段から、OSに依存しないRubyコードを書いているのかと・・・
> そんなに、環境をコロコロかえているならば、その生活スタイルをまず変えたほうが良い
OSに依存しないコードを書くことと、環境を頻繁に変えることは別の話だろ。
わざわざ掘り起こさなくていいよ
>>480 掘り起こすも何も、遅刻の話なんて前には出てなかったじゃん
自分の中で何かに納得して「やっぱ」なのだろう。
別に言語依存でもOS依存でも、 これぐらい覚えるの大した手間でもないからどうでもいいな。
デビアンで動かないスクリプトは糞。デビアンで動くスクリプトなら正義。 これでいいんじゃないw
サポートレベルからすればBest Effortまでは考慮していいと思うけどね。
ttp://www.ruby-lang.org/ja/news/2010/08/18/ruby-1-9-2-is-released/ サポートされるプラットフォーム
Supported
このプラットフォームにおいてRuby 1.9.2が正しく動作することが検証されています。
Ruby 1.9.2はこのプラットフォームで継続的にメンテナンスされます。
Debian GNU/Linux 5.0 on IA32.
Best Effort
これらのプラットフォームにおいてRuby 1.9.2がおおよそ正しく動作するこ とが検証されています。
Ruby 1.9.2はこれらのプラットフォームで継続的にメンテナンスされると信じています。
mswin32, x64-mswin64, mingw32
MacOS X 10.5 (Intel) および10.6
FreeBSD 6以降 (amd64, IA32)
Solaris 10
Symbian OS
488 :
uy :2011/05/31(火) 17:06:03.01
>>479 はぁ?
漏れのこの簡潔な文章から、意味を読み取れないお子様が以下略なんだろ
何故、今更貴様らに長文をかいて説明してやらなくてはならないのか
それと
ずいぶんと、悲惨な環境にいるみたいだな
Linuxなんてサーバー用途以外の全てにおいてWindowsに劣るんだから素直にWin使えばいいのに(笑)
その劣る環境のデビアンを教祖様が使ってルビーが作られ、信者のみんなが祝福を受けている現実w
初心者スレとハシゴでどうにか構ってもらおうと必死な奴がいるなw
>>490 新着レス表示すると滑稽なんだけど、気づいてないんだろうなと思う
ねー、テスト書いてるんだけど、 たとえば数字を one とか eight とかにするメソッド to_en があったとして assert_equal 'one', to_en(1) assert_equal 'two', to_en(2) 「to_en(12) は 'twelve' ではなく 'one two' である」ということを言おうとしたとき assert_equal 'one two', to_en(12) だけ書くべき? 「いやコレ twelve になりそうだけど違うんスよ」みたいな意図を含めて assert_not_equal 'twelve', to_en(12) assert_equal 'one two', to_en(12) という「○○ではなく△△」みたいに書いたほうがよくないですかね でもこれを押しすすめると、解説的アサーションがもりもり増えるんですが、どうしたもんでしょう
to_en のコメントに書いとけ
# not "twelve" but "one two" assert_equal 'one two', to_en(12) これでいいよ というか、アサーションの内容なんて普段誰も読まね テストメソッド名も読まれないし、思いっきり間違ってても(過去のメソッド名のままとか、英語めちゃくちゃとか)気にされない rspecのitが、かろうじて読まれる可能性がある程度
これからの内部表現はUCS4だ!とか思って、 ライブラリ内でぜんぶUCS4にしたらメモリ食い過ぎだって怒られた
497 :
デフォルトの名無しさん :2011/06/01(水) 19:05:18.30
それなんてglibc
C#、F#、Scala、Haskellと比べると Rubyってどうなの? Rubyの本を買おうかどうか迷い中。
比較対象が……。
書き換えられても気づかないよねとは思うから正しいとは思う。
rubyスレ全般で猛烈にかまってほしいやつが書き込みしてるな
Linus Torvalds氏は5月30日(米国時間)、Linuxの次のバージョンを「3.0」にすると発表した。
従来のルールであれば「2.6.40」になるが、Linus Torvalds氏は「40」という数が大きくなりすぎていると感じているとし、
次のバージョン番号を2.8.0にするかもしれないと説明。
その後すぐに「3.0」へ変更する話が持ち上がり、最終的に「3.0」で落ち着いた。
コミットされた内容は「3.0.0-rc1」への変更になっており、2桁ではなく3桁のバージン番号が使われている。
これはこれまで3桁のバージョン番号を採用してきたため、すぐに2桁への変更ができないことに理由がある。
正式なリリースまでに「3.0」と2桁のバージン番号へ変更となる。
Linus Torvalds氏は、あくまでも今回の変更は「バージョン番号」だけの変更であって、それ以外に特別なことはないと強調。
通常、メジャー番号が変更されると後方互換性が失われたり、大幅な機能変更などがあったりするが、そうしたことはないと説明している。
あくまでも通常リリースと同じと位置付けている。
通常のリリースサイクルを考えると、Linux 3.0カーネルが登場するのは2011年の7月から8月が見込まれる。
以降はLinux 3.1、Linux 3.2と順次リリースが実施されることになるが、これは従来の3桁に置き換えると3.0.1、3.0.2に相当することになる。
http://journal.mycom.co.jp/news/2011/05/31/064/index.html
バージョン番号が3桁を前提にしてるライブラリが全部ズコーしちゃうなこりゃ。
3桁のバージン番号について詳しく
そういうアホなライブラリをこの際描き改めればいいだけだろう。 デビアン使いの教祖様は大変だろうけど、ウィンドウズ使ってる下々の民には関係ない話。
ドラゴンボール並の勢いでバージョン上げていかないと ユーザーのモチベーションが下がるというのは紛れもない事実。 1.9への移行が遅々として進まないのはそういうメンタル的なものも無視できないよ。
1.9.2p???を1.9.2.???にするだけでもいろいろ変わりそうだな
>>507 パッチレベルは失敗だと思う
素直に4つめのバージョン上げてくれたほうがたぶん普及するんじゃないかな
初心者スレで使用メモリを表示するプロファイラが欲しいとのこと そもそも作れる?
510 :
デフォルトの名無しさん :2011/06/02(木) 16:54:51.30
Moonwolfさん戻って来ないね。 Rubyの正しい潰し方を、はてブ経由で発見して以降 短いながらもMoonwolfさんのファンになったのに残念だなぁ
MLにあったrequireで配列うんぬんは require A, B, C みたいに書ければいいけど[]があるとなんか気持ち悪いな。[]がなけりゃ配列でもなく 関数の引数渡し状態だからまた別なんだけど
なんだまた複数requireの話やってるのか requireたくさん書けで終了でいいじゃん
シンボル受け取ったら文字列にしてほしいわ
514 :
デフォルトの名無しさん :2011/06/03(金) 00:25:01.46
File.writeが入ったか。
File.writeall(fn, File.readall(fn) + "\nhello, world") みたいのつけてクレクレ
>>515 無意味
あなたはコレクションという概念とイテレーションという概念を学ばなければならない
これで完璧 File['log'] += Time.now.to_s + ":" + mes
何か楽しくないなあw メモリ喰いそうだわ。 Syslog.log(Syslog::LOG_INFO, "hello world") じゃだめなのw
よく思うけど、引数に定数使うのって面倒
>>519 整数のマジックナンバーとかのほうがわかりやすいよね!
暑苦しいのが常駐してるな。
妄想してみた 後置forを導入、その値はmap相当 (x * 2 for x in 1..3) # => [2,4,6] ついでにセレクタもつける (x * 2 for x in 1..3 if x.odd?) # => [2,6] もしネストもできるとすると一番内側以外は flat_map相当で すると内包表記っぽい感じに! whileと後置whileがあるので 素人考えでは実装できそうな気がするけど Rubyの制御構造ってスコープを作らないので 同名のローカル変数があったら書き換えちゃうし ループ変数が後までずっと残るのはやだなぁ などとスコープがアレなんで採用は無理っぽい 妄想終了
523 :
デフォルトの名無しさん :2011/06/05(日) 03:55:28.48
>>523 すごく綺麗なプロジェクトですね
RDocもRSpecもきちんと整備されてるし
お手本にします
再利用されてもないのに始めからクラスやメソッドに別けとくのは大嫌い。 暇人のやる事だわ。
クラスやメソッドに別けとくのは、再利用されるためだけでなく 可読性を上げたりバグの切り分けをしやすくしたりするために有用。 それが分かっていないのは経験不足だと思う。
メソッドをなるべく小さく保つのはRubyでは鉄則 「このへんの動作をユーザーがメソッド上書きで変更したいと思った場合に絶望しない程度」が目安 実際の行数はまあどうでもいい が、クラスやモジュールの粒度については実のところかなり微妙 適切であればなんでもいいのだが、最初から適切になってることはまずないし、適切になるまで収斂する保証もない 1ファイル1クラスとかだと一覧性悪くて探すのめんどくさいというのは確かにあるし、 ファイルアクセスがあんまり多いのもいただけない
528 :
デフォルトの名無しさん :2011/06/05(日) 09:31:03.23
基盤系のものでないなら、 解決しようとしている問題の粒度にベッタリ合わせちゃうってのが 簡単かつわかりやすいかな
>>526 だから、有用となる前提条件も書かずに呪文みたいなこと唱えても意味無いってば。
それが分かっていないのは経験不足だと思う。
いちいち規模を考えて最適化するのも面倒だな。 大は小を兼ねるで普遍的な描き方に統一したほうが楽。 まあスクリプト程度でそこまできっちりしてもしょうがないとは思うけどな。 何か問題があるならそのとき描き直せばいいって解決が前提だもの。
Rubyのスレでこれ系の話はしないほうがいいなw 知らないかどうでもいいと思ってる人が大半に思えるw
宗教論争こそ2chの華だろw
可読性にしても、バグ解決の問題切り分けにしても、 細分化のしすぎはむしろ余計な混乱を生む。 ただの程度問題
534 :
デフォルトの名無しさん :2011/06/05(日) 13:13:46.08
大きな塊で中が絡み合ってると割とどうしようもないけど、 細分化されてる場合だと、IDEやクロスリファレンスツールとかの 支援ツールが使えれば楽に追える*可能性がある*という違いはあるかな。 はたして今、 Rubyにそれらのツールが整備されてるか? ってのはまた別の話になってくるけれども。
クラスやメソッドを沢山定義すると、それだけドキュメントも沢山整備しないと駄目ってことだからな。 面倒臭いったらありゃしないぜ。
でも実際整備されてない現実だから大規模開発では使われないのかと。 まあrubyの大規模フレームワークなんて出されてもスクリプト書く程度の用途で便利に成るとは思えないけどw
メソッドはユニットテストの単位でつくればいんじゃね 作業(?)をひとくくりにして言語化できる場合はメソッドにしちまうな 大抵そのレベルでユニットテスト必要だし プログラム全体で画面2P以内ならババっと書いちまうけど
ついに出たか… EffectiveとかMore EffectiveとかExceptionalとか付ければ売れると思ってやがる
Exceptional C++は読んでいて頭が痛くなってきたがRubyではどうだろうか
俺はModern C++ Designの方が頭爆発したな よし、早いもの勝ちだ 住民でEffective Ruby執筆しようず
>>540 Exceptional C++は読んだ事ないけど、Exceptional Rubyは
100ページぐらいだし(appendixなどを除くと70ページくらい)、
基礎的なことから順を追って説明しているから普通に読めると思うよ。
前半がRubyにおける例外の仕様/実装を事細かく説明していて、
後半がエラーハンドリングをどう書くべきかを説明している。
これ読んでプロジェクトのコーディング規則にいくつか混ぜると良さそう。
rubyでプロジェクトは無いよw
どこか日本語で出してくれ
例外処理はケツの穴から撒き散らされる七色のクソを必死に受け止める作業 綺麗な対処法などない
Net::HTTPなんかわけわからんエラーばかりで、結局ネット接続は外部に追い出したりした思い出
547 :
デフォルトの名無しさん :2011/06/05(日) 18:08:06.56
Emacs で Ruby書くいいやり方が分からない。 Rails3 使ってるんだけど、REPL開いても依存関係解決されてないから意味ないんだよなぁ。 結局、ターミナルから rails runner でいちいち走らせてて、全然サクサク開発じゃない。
shell-modeとか使わないの?あ、スレ違いごめん
550 :
デフォルトの名無しさん :2011/06/05(日) 21:33:11.99
>>549 いやいや、例外って大抵、「自分で完璧にコントロールできない外部」
でひり出されてくるじゃん?
自分でどうにかできるところをどうにかしたところで
そこの部分はどうしたって残るわけでさ。
ほとんどの例外ってキャッチしたところでどうしようもないよな。
プログラム的にキャッチ可能であることに意義がある
だからうんこひり出て来てキャッチできても結局手が汚れるのは代わらないだろうと。 お漏らししてるの見つけたら描き直してお漏らししない様にしちゃったほうが速い。 原発の安全対策と同じだよ。漏れた時のことなんて想定して無い。 非常用発電なんてあとから用意すれば間に合う。40年間それで問題なかった実績が有るし。
リトライ、ロギング、異常処理の分離ぐらいかな。 if文で異常処理に入る事も少なくないから 例外のポリシーはそんなにないかな
どんなポンコツスクリプト書いてるのやらw 恐いもの見たさで見てみたいから良かったら晒してくれw
ポンコツ. 【意味】 ポンコツとは、老朽化したり、破損した物。中古品や廃棄物。 つまり、新たに書いたものには当てはまらない、この場合は、 幼稚な ・ 稚拙な ・ 拙劣な ・ 未熟な ・ 至らない ・ 下手な ・ 見劣りする ・ 安っぽい ・ 低レベルの ・ 拙い ・ マズい ・ 下手くそな ・ 下手っぴな ・ 出来が悪い ・ 不出来な などが妥当な表現。
>>555 お手本plz
さぞかし素晴らしいスクリプトを書いているんだろう
558 :
デフォルトの名無しさん :2011/06/06(月) 12:11:40.11
>>553 その理屈だと結局
>>550 で指摘されてるような
ケースは解決しないよね。
何もかも自分でやるなら軽量言語使う意味が激減だし、
そもそもエラー出す先がネットワーク跨いだWebAPIとかありがちだしで。
だからネットワークが原因なら、エラー拾った所でスクリプト内で出来ることはもう一度アクセスしてみることぐらいだろ。 エラー処理以前に何度か試す手順ぐらい描いておくべき。いちいちエラー拾ってたら実行処理遅いし。
561 :
デフォルトの名無しさん :2011/06/06(月) 14:02:30.44
例外処理のメリットって、スタック飛び越えてリソース解放とかじゃないの?
例外オブジェクトの中に任意のオブジェクトを入れると便利だよね。 メソッドを飛び越えて一気に渡せるし。
実際にエラーイベント飛んで来る状況で解放なんて出来るか? 丸ごと堕ちて終わりだろう。
何の為のensureだよ
例外についてのレスを見てると、なんだかRubyってやっぱり使い捨ての小さい プログラム書くぐらいにしか使えないみたいですね ちゃんと設計されたある程度の規模のアプリなら、アプリケーションドメインの 例外クラスもたくさん出てくると思うのですど、インタプリタドメインの例外に ついてしか語れていないように見えました
566 :
デフォルトの名無しさん :2011/06/06(月) 21:47:39.67
C++あたりだと、例外処理って、setjmp系だとデストラクタが呼ばれないからって 理由で導入してたような気がする。
そうですか さようなら もう二度とこのスレを見ないのがあなたの精神健康のためだと思います
568 :
デフォルトの名無しさん :2011/06/06(月) 21:52:08.41
talkのギリシャ人(?)荒らし関連がなかなか興味深い。
569 :
デフォルトの名無しさん :2011/06/06(月) 22:03:43.41
>>565 いや、アトミックな結果になって欲しい一連の処理があったとして
それがどこかで頓挫した場合に、全体の整合性を取るために
実施済の処理をロールバックする、程度の話は普通にあるし、
そういう場合は普通にensureが使われてるよ。
匿名掲示板なんだから、変な人も来るし、
巡り合わせが悪ければそういうのが持論を垂れ流す瞬間も
一日二日はあるだろうさ。
アプリケーションドメインの例外なんて致命的じゃないから語る必要もなさそうだが
571 :
デフォルトの名無しさん :2011/06/06(月) 22:16:06.13
Ruby的には「例外として定義できるもの」が例外であって、 致命的であるか否かなんて観点での定義ではないからなあ。 JavaにおけるErrorみたいにキャッチされない前提で定義されてる 代物ならともかく。
RubyのNetライブラリは、例外を捕捉しても、その後ネットに接続できない状態のままに なったりすることがあって全然使えない
結構ヘビーな処理が必要なプロジェクトを Rubyで開発してるんだけど、 ちょっと失敗だったかなぁ。 スレッドがオモチャなのがつらい。
>>572 >RubyのNetライブラリは
外れたネットワークケーブルを差し込み直したり上流のDNSサーバ直したり
接続料金払ったりするライブラリが揃ってる開発言語があるなら是非お教え頂きたく
RubyのNet::HTTPなんか実装がすごいクソなんだけど、めんどくさくてそのままなんだよね こんなエラー出てきたでって報告しても再現性なんかあるわけないから放置されて、 例外処理がとんでもなく面倒になっている。そして結局は他のライブラリを使うことになる
579 :
デフォルトの名無しさん :2011/06/06(月) 23:18:09.87
>>574 ネット系ライブラリが糞といわれるのは
おまえさんがあげたようなケース以前のところで
ダメだったりするからだろうがよ。
jrubyなんて面倒なレイヤを挟むくらいなら、javaで直接描いたほうが面倒が減らせるw 結局ケーブル抜けやdnsエラーや接続料金未納ならエラー拾っても意味無いねw
581 :
デフォルトの名無しさん :2011/06/06(月) 23:24:13.55
Net::HTTPからどんな例外が出てくるかなんて知ってる人おらんだろ
583 :
デフォルトの名無しさん :2011/06/06(月) 23:28:22.29
>>578 まあ、スレッドにせよ、CPUの有効利用にせよ、
足まわりのマトモなライブラリにせよ、
Javaの築き上げてきた成果にただ乗りするのが楽だし賢いとは思うんだけど、
そこはかとなく敗北感が漂うというかなんというか。
>>573 どんなプロジェクト?
原発制御系とか?
ツイタ後追いサイトか出会い系交流サイトじゃないの? ついたはrubyを捨て、ミクシはperlで、グリイはphpだっけか。
義援金受け取り申請システムじゃないの? システムを整備できてない所と、職員がシステム就くちゃった自治体と支払い率にかなり差が就いてるらしい。
net/httpまわりは作った本人が失敗作、クソって言ってた気がするから 何か画期的なライブラリを自分で作ったらいかがですか。
外部サービスと連携するサービス。 やりとりするXMLがでかいからその処理が重い。
マニュアルである程度フォローできるはずなんだけど、あんまり頑張れてないな 事実上の標準なんだしもうちょっと根性入れてもらってもいい
>>588 Ruby本体ではXMLのパースはできません(あ、言っちゃった)
Cとかで書かれたlibxml2を呼ぶNokogiri gemなどをお使い下さい
本体でXMLをパースできる言語とかなくね?
>>591 RubyにもREXMLとかあるだろ
実際的な速度が出ないが
というかXMLなんてパース負荷の高いフォーマット広めた奴は世界に向けて土下座しろ
今はXmlSimple使ってるけど、 これ内部でREXML使ってるみたいね。 まぁ、重過ぎになったらスレッドかNokogiri使おうかなって思ってた。 スレッドは意味ない事が分かったけど。
>>593 REXMLは捨てていい
あれはせいぜい3KBくらいの小さな設定ファイルとかを読むときに使う
重いとか以前にXMLを見るのもいやなのですぐにHash.from_xmlしてるわ
かといってxmlに変わるものも無く。 テキストやhtmlパースでがんばりたいの? 外部でxmlとかソニーや任天堂の二の舞になって漏らすこと確実だな。
なんでそこで任天堂とソニーの名前が出てくる ただ言いたいだけか
それにしか例えられないゲハ住民なんだろ
RailsのHash.from_xmlって属性捨てるでしょ。ワロタんだが。
600 :
デフォルトの名無しさん :2011/06/07(火) 17:02:20.47
あれはAResのフォーマットとして使うためのもので汎用じゃないからな。
INIファイル最強伝説
INIってYAMLとどう違うの?
どう同じなの?
反語表現によって同じだと主張しているわけではなかろう
INIとYAMLには単なるテキストであるという以上の共通点が見出せないのだが……。
YAMLはXMLに流されない俺カコイイ的な
やっぱS式だろ。
いやいやJSONだろ
もう面倒だからMarshalして投げちまえい。
13日の金曜日5 JSONの命日
おいYAML
よーしパパRON(Ruby Object Notation)でevalしちゃうぞ〜
結局、Open XMLよりまえのワードバイナリファイルかっこいいのかw
そこでMessagePackですよ
615 :
デフォルトの名無しさん :2011/06/08(水) 09:40:01.94
dateの作者って精神年齢いくつなんだろう。
>>615 世界中の全てのCPANモジュール作者よりは下だな
賭けてもいい
capistranoは複数のサーバーに対して指定したコマンドを同時に(並列に) 実行させることができるそうですが、その場合、画面の出力はどうなるのでしょうか。 たとえば10台のサーバーがあった場合、10台ぶんの出力が1つの画面に混在して 表示されるのでしょうか。
618 :
デフォルトの名無しさん :2011/06/08(水) 12:00:21.07
うん、入り交じる。ホスト名が前に付くからとりあえずは区別できるけど。 バファリングの影響もあるので ホスト1の出力(行の中途まで) ホスト2の出力 ホスト1の出力(中途から) のような交じり方になることもある。
>>618 そうですか。残念ですが、仕方ないですね。何か、回避策があればいいのですが。
Rubuy って何で Mercuial 使わないの? git とか今落ち目じゃね? ってmatzに聞きたいけど、いる?
Matzがつかおうとしたけどまわりからとめられた(うそ
RubuyでMercuialな人にその対応は恐ろしく大人げない
yukihiro_matz: 長女はありふれた名前に不満みたいだけど、苗字は先祖 が決めたものだし、あんまり独創的な名前もねえ。結婚を機会に苗字を 変えるか、通名を使うか。私のひらがな表記もありふれた名前への対抗だしね。 ^^^^^^^^^^^^^
ぽろっと言っちゃったー 日本人には通名を使うなんて事思いつきません。 通名、通名、痛名か 通名なんて言葉使ったことねーよ どうやったら通名なんて使えるんです?
↑死ねよ屑
629 :
627 :2011/06/09(木) 14:53:59.33
なんで?
通名の二文字に逆ファビョする偽愛国者
はぁ?日本人は火病なんでしませんが? 火病するのは朝鮮人ですが何か?
在日の通名のことだったらこんな文脈では使われないな。
というか通名を在日限定だと思ってるのが、漬物の字を見てキムチ叩き始めるくらいに世界狭過ぎて痛々しい 日本生まれの日本名でも通名の利用は可能だ
自称日本人が通名を使う時ってどんな時だよw
通名使ってる日本人ふつうにいるけどね。
別に法的なあれこれをするんでもなければ通名の使用は問題ないから。
だいたい、在日の通名の話なら
>>625 の文脈では使いかたが変。
昔から日本では、何か作品を創る人は、 当たり前に本名とは別の名前を使ったりする。 昔からあるのは雅号や芸名、最近の言葉ならペンネームあたり。 ソフトウェア作者なら通名なんて自然に出てくるアイディアであって、 それがおかしいというのは、 今まで何も公表できるようなものを創ったことがないのだろう。
どうでもよすぎる
でも日本人なら それを通名とは言わない 芸名とかニックネームあたりだな もしくは 別名としての名前じゃなく、名前を変更する改名 いずれにしても、通名なんて使わないな
頭のおかしな人の判定基準 ・「みんなの意見」「他の人もそう思ってる」など、自分の意見なのに他人もそう思ってると力説する人 他人が自分とは違うという事実が受け入れられない人です。自分の意見が通らないとコピペや荒らしなど 無茶をし始めるので見かけたら放置してください。 >でも日本人なら それを通名とは言わない 芸名とかニックネームあたりだな >もしくは 別名としての名前じゃなく、名前を変更する改名 >いずれにしても、通名なんて使わないな 名前がひどすぎるとかそういう事情でない場合の改名には通名として 広く使われていることが条件だったりするね。
「通名」についての一般的な意味を知らない、という日本語の怪しさからして、
むしろ
>>640 が日本人なのかどうかの方が疑わしいよなw
どっちが知らないやらw
>>625 が 「とおりな」と読んでいて そういう文脈で使っていた
>>625 が 「つうめい」と読んでいて そういう文脈で使っていた
さー、
>>625 はどっちなんだろうねw
とおりな でも つうめい でも「本名ではないが世間で通用している名前」の意味で使いますね。
句読点を適切に使えず、妙な分かち書きしかできないバカな日本人ってたまに見ますねぇ(笑)。
もうMatzがAKB48で活動してたことをほじくり返すのはやめろよ
もうMatzがカルト教モルモンの宣教師で布教しまくってることをほじくり返すのはやめろよ
まるで叩くところがなくて漢字の読み間違いとかカップラーメンで叩いていたマスコミみたいな叩き方だなwwww
よwwりwwwにwwよっwwwwwてwwwwwww わwwwかwwwwちwwwwwがwwwwwwwwwwきwwwwwwwwwでwww罵wwww倒wwwwwww しwwwwwかwwwもwwwwww 「バカな日本人」 ってwwwwwwwww おwwwwまwwwwえwwwwww何wwww人wwwwwwwwwだwwwよwwwwwwwwww
yukihiro_matz: 長女はありふれた名前に不満みたいだけど、苗字は先祖 が決めたものだし、あんまり独創的な名前もねえ。結婚を機会に苗字を 変えるか、つうみょうを使うか。私のひらがな表記もありふれた名前への対抗だしね。 ^^^^^^^^^^^^^^^^^ yukihiro_matz: 長女はありふれた名前に不満みたいだけど、苗字は先祖 が決めたものだし、あんまり独創的な名前もねえ。結婚を機会に苗字を 変えるか、つうめいを使うか。私のひらがな表記もありふれた名前への対抗だしね。 ^^^^^^^^^^^^^^^^^ 長女はありふれた名前に不満みたいだけど、結婚を機会に通名を使うか。 とおりなって結婚を機会に使うもの? つうめいって結婚を機会に使うもの? さーどーっちだ
「結婚を機会に」は「通名を使う」にかかってねーよ。 「結婚を機会に苗字を変える」と「通名を使う」が並列。
己の語彙力の無さを晒して恥ずかしいやつだな
「つうみょう」なんて 生まれてはじめて聞いたわwww
結局、世間知らずな子が顔を真っ赤にして終了と。 まあ通名なんて社会に普通に出てくる単語な訳で、 大人なったらまたおいでって話だわなw
_______ __ // ̄~`i ゝ `l | / / ,______ ,_____ ________ | | ____ TM | | ___ // ̄ヽヽ // ̄ヽヽ (( ̄)) | | // ̄_>> \ヽ、 |l | | | | | | | | ``( (. .| | | | ~~ `、二===-' ` ===' ' ` ===' ' // ̄ヽヽ |__ゝ ヽ二='' ヽヽ___// 日本 ______________ __ |つうみょう .| |検索|←をクリック!!  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ◎ウェブ全体 〇日本語のページ ワロス ワロスw 社会に普通に出てくる単語ワロスwww
ホーリーネームとは違うの?
ホーリーネームっていうのは↓こういうのだからちょっと違う。 マーツ・モーティヌ ササ・ダーダ ナーガ・イヒ・デ・トッシュ ウラ・アーベシ・ショーン・ヘイ
>>657 ショーン・ヘイがやりたかっただけだろ。
_______ __ // ̄~`i ゝ `l | / / ,______ ,_____ ________ | | ____ TM | | ___ // ̄ヽヽ // ̄ヽヽ (( ̄)) | | // ̄_>> \ヽ、 |l | | | | | | | | ``( (. .| | | | ~~ `、二===-' ` ===' ' ` ===' ' // ̄ヽヽ |__ゝ ヽ二='' ヽヽ___// 日本 ______________ __ |ホーリーネーム .| |検索|←をクリック!!  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ◎ウェブ全体 〇日本語のページ また胡散臭い単語が当たり前のように出てくるなw
さすがカルトと言わざるをえないw>ホーリーネーム
まあでも、それで全ての説明は付きそうだな
本名 ホーリーネーム 通名 ------------------------------------------- 松本智津夫 マハー・グル・アサハラ 麻原彰晃 中川隆 エル・カンターレ 大川隆法 上祐史浩 マイトレーヤ 村井秀夫 マンジュシュリー・ミトラ
このスレ定期的にこういう話題になるな MLと初心者スレの方で真面目なネタが多いからその反動か?
まだ良いんじゃねーの、ここでやる分には 今回は初心者スレにまで出張してるから勘弁してくれ
このホーリーネームにしろ、通名にしろ ここにいる一部の奴らは属してるコミュニティーが特殊すぎて一般人とは捉え方が違ってるんだな 自分の属しているコミュニティーで当たり前に使っているものだから みんなそうだと思っているw 話が噛み合わないはずだよ
昔から疑問だったんだが、開発者コミュって名前をひらがなで表記する奴が多いのって なんでなの? 難読名でもないのに。 なんかかっちょいい、って意識があるのかな? まつもと ゆきひろ みたいに。
「私のひらがな表記もありふれた名前への対抗だしね。」
おそらく幼稚園児コミッタが現れたときのため。
良く思うんだけど、とても価値のある作品にとんでもなく恥ずかしい名前付けたらどうなるんだろうなー、と。 「あずにゃん…ぺろぺろ!」とか女子アナに言わせてみたい。
こういうレスを見るとRuby会議とか行きたくなくなる
モルモン教徒って輸血を拒否する奴だっけ?
小学校や中学校で剣道や柔道になると見学している奴ってモルモン教徒だっけ?
それも多分エホバの証人 第一次第二次大戦の時も徴兵拒否してイザコザがあったらしい
>>666 そんなにいるのか?
俺は現時点でまつもとゆきひろとただただしくらいしか思いつかない
あとはだいたい英字名の開発者が多い印象
fjとか多かったような あさだ たくや くさかべ よういち
>>666 魔律藻斗祐奇秘露 みたいにした方がインパクトがあるよね
瑠美威ナメんなよ
無露通苦 拉無駄
話題をそらしたあたり、通名がどうのといってたのは 敗北を認めて逃亡か
wwwwwwww勝wwwww利wwwwwww宣wwwww言wwwwきwwwwwたwwwwwwwwwww
Eclipseって現代のEmacsみたいなもんだな。
あまりにピンとこないたとえだな 大して共通点が思い浮かばない
いやいやまともな日本人なら匿名希望て大抵のことは済むだろう。 通名なんて普通使わないよ。 実は在日だったって認めてしまえよ。楽に成るぞw
うちの会社では結婚後も旧姓を使っている女性が結構いるけど、 そのことを通称とか通名とか呼んでるよ。
まぁ在日だったらとっくにコミュが在日の巣窟になってるだろうし 韓国は怪しい宗教団体作るのは大好きみたいだけども モルモンと韓国は あまり関係なさそうだからそいつはないと思うがw オウムがそうだったように 一般的日本人と違って、一部の宗教団体では通名使うのが割と一般的に行われてるってことなんだろうな
雇用機会均等法以後、女性が結婚後会社に残るケースが増えて、 結果として旧姓をそのまま使用するのも普通になったしな。 その中で通称なり通名なりを特定外国人が云々、という文脈でしか知らないあたり、 社会に出たことがないんだろう。
通称と呼ぶことならあるな
>>625 >長女はありふれた名前に不満
>結婚を機会に苗字を変えるか、通名を使うか
姓を変えるのか、呼び名を変えるのか、(婚姻による姓の変更とは別の)改名手続きをとるのか
いずれにしても、変えることを念頭に話していることが明らか
ゆえに、後段 「通名を使うか」の部分を 「旧姓で通す」ととらえるのは無理がある
>>685 「ありふれた名前が不満」て話から始まってるんだから
人間関係が絡む話だろ、人間関係は匿名じゃ無理あるぞ、あだ名くらいは要る
匿名と通名は無名クラスとaliasぐらい違うだろ 通名がよくある職業といえば国会議員とかかね
質問です。 fixtureというのは、テスト用のデータのことですか、 それともそのデータを生成するクラスやメソッドのことでしょうか。 人によって使い方が違うので、混乱しています。
通名を使うことそれ自体は普通の日本人にとってはあまり一般的なものではないが、 「通名」という言葉自体は「本名と別のそれで通用(させようと)してる名前」 というごくごく一般的な意味の言葉である。 「自分の名前(特に下の名前)に酷く不満がある」なら、 通名を使うのが最善の方法であるからして、 「そんなに名前がお嫌なら通名使って誰もがそれで呼ぶようになった頃に改名手続きでもしたらいかが」 と言ってるだけ。 宗教も在日も関係ないよ。 結婚で簡単に変えられる姓はともかく、 下の名前はもとがよっぽど酷くない限り通名使う以外で変えようがないんだから、 下の名前に不平不満をこぼしまくってる奴がいたら「じゃあ通名でも使えよ」と言うしかない。 旧姓を使う場合以外の通名があまり一般的じゃないのは、 戸籍名とズレた状態で使い続ける不便とかめんどくさい役所の手続きを乗り越えてまで 変えたくなるほど自分の名前に不満がある人なんてそうそういないからだろうよ。 あと、通称と通名は違うよ。 通称は本人が名乗ってなかろうが嫌がってようが、あるいはモノだろうが、 人々からそう呼ばれていれば通称だけど、 本人が嫌がって自分では使ってないような呼び名のことを普通は通名とは言わない。
木下から羽柴に通名、通称はさる、みたいなもんですか
すっごく どうでも いいです
rubyじゃなくてmatzスレたててやれよ
アホが絡んでる限りは延々続くだろ
>>697 そもそも、matzスレを立てたもののろくに相手にされなくて
ここと初心者スレに突撃してきた頭の弱い子の仕業だろうからなあ
>>694 >通名を使うことそれ自体は普通の日本人にとってはあまり一般的なものではないが、
そう、普通の日本人なら通名を使う なんていう発想自体がないんだよ
せいぜい、ニックネーム/愛称を使う とか、そこら辺までだ
それを使い続けて改名の手続きをとるなんて発想を普通しない
そもそもそんなに簡単に名前をホイホイ変えていたら戸籍の制度そのものが怪しくなる
だいたい改名だのなんだのって 婚姻での姓の変更以外でそれをするのってほとんどが在日か宗教関係か反社会的な組織の構成員くらいだろ
偏見披露乙 本名でない議員とか結構いるし、選挙対策で簡単な名前使う人とかいくらでもいるだろ。 その壊れた頭をまずは修理することから始めるのがいいと思うぞ。
バカは話がループするから困る
>そう、普通の日本人なら通名を使う なんていう発想自体がないんだよ 普通の日本人なら普段は通名を使うなんて発想はないだろうね。 しかしながら、「自分の名前がどうしても不満なとき」という条件つきなら 普通は「通名使え」って発想になる。それ以外に方法ないもの。 それに >そんなに簡単に名前をホイホイ変え られないから、通名なんてものを使うことになるわけだが。 家族か昔からの友人ぐらいしか本名でその人と気づかないぐらい通名を一般的にするのはそう簡単なことじゃない。 有名な犯罪者と同姓同名、あるいは珍名記名などで著しい不都合があるとか、 僧籍に入るとかなら通名なんか使わなくても改名審査は通るよ。 普通の日本人だからこそ名前が不満なときは通名使うしかないわけ。
>>701 議員に本名じゃないひとが多いのはタレント議員が多いからだろ
それに芸名を使えるようになったのは割と最近の法改正によるものだったはずだが?
それと簡単な名前ってのは 漢字を平仮名で表記とかのたぐいだろ
一緒にするなよw
>>703 そう、普通は簡単じゃない
だけど、本人がそういう通名を積極的に使用するコミュニティに属している場合話は変わってくる
そのコミュニティ全体で、その通称が一般的になっている という事にしてしまえばいいんだからね
必死で自分が基地外だと宣伝してお疲れ様でした
何か通名がミジカな在日と、そうでない日本人との温度差が違うなあw 旧姓をあだ名とかニックネームとか通名とか、展開に無理がありすぎる。 国会議員が自分の名前は通名だって発言したことも無いだろ。普段から芸名で生活してるのも感覚が異常すぎるw
葛飾北斎も、松尾芭蕉も、世阿弥も、中村勘三郎も、 そのほか日本の歴史上重要なクリエーターたち、無名の膨大なクリエーターたちは 全員朝鮮半島出身なんだね。 武田信玄も信玄は出家してからだし、そもそも武田というのも通名で、 本当は源晴信が正式な名前なんだけどね。 この温度差は日本人としての教養の差だと思うよ
matzが在日なら娘も在日なわけで、 娘も通名が一般的なコミュニティで育ってるってことで、 「名前が不満」という状況が生じない気がするのだが……。
通名 通名(つうめい)とは、通称の一形態。主に人名に用いる。 対義語は本名、登録名、戸籍名など。 概説 日本では主に、戸籍上の名とは別の名を用いたいが戸籍名を変えられない、 若しくは変えたくない場合に使われる。 改名には正当な事由(社会生活上に甚だしい支障がおこる場合、職業上改名する必要がある場合、外国人が帰化した場合など) があった上で家庭裁判所の許可が必要なため、それがかなわない場合に日常生活において通名を使う人もいる。 通名の使用を続けていることによって改名が許可される場合もあるが、 通名が定着したことで戸籍名変更の必要がなくなる場合もある。 はいどうぞー。 By Wikipedia 「名前が不満」に対する最良の回答はどうみても「通名でも使ったら?」ですねー。
>>707 例にあげられてるのが浮世絵師や俳諧師や芸能に生きた(生きてる)人ばっかりじゃねーかw
それに歴史上の人物をあげても現代とは制度が違うのだから名前の変更のしやすさも違うだろうし
そもそも歴史上の名前そのものが戸籍上の名前かすらはっきりしないわけだがw
なんでプログラムに関係ない議論が繰り広げられてるの? そんな議論は他でやれよ もしかして全部1人で書いて議論した気になってるのか?
どうみてもあの方です。本当にありがとうございました。 ここに隔離できてるのは非常にありがたいです。
>>712 下手に追い詰めて駅前あたりで
通り魔に及ばれても困るしな。
ここで飼う分には本人のプライド以外は特に傷つかない訳であるし。
>>712 下手に追い詰めて駅前あたりで
通り魔に及ばれても困るしな。
ここで飼う分には本人のプライド以外は特に傷つかない訳であるし。
大事なことなので(ry
反論できなくなってコピペ荒らしに進化か
ついに妄想がw
名前に不満を述べる、ってことは その長女さんは「通名を使うのが一般的でない」コミュニティで育ったはずだね。 通名使ったり変えたりが当たり前な環境で育ってたら不満に思った時点で通名変えりゃいいじゃん?
妹がRuby勉強したいって言ってたけど阻止しといた。 残念だったなおまいら(笑)
「Ruby勉強したい」っていう妹がRubyやるのを阻止して それをRubyスレで報告するようなキチガイの兄がいて、 そのキチガイ兄の言うことを真に受けてRuby勉強しなくなるようなキチガイ女が Ruby使うことにならなくてよかった。
まて、妹を悪く言うのは許さん。
妹.tainted? => false (゚∀゚)!!
もうモルモンに入信済みか
一般的かどうかでいうならモルモン教がカルトかどうかも一般的ではないわなあw
モルモンはちょっと調べてみただけでかなりヤバい気がした。
727 :
デフォルトの名無しさん :2011/06/12(日) 19:59:04.84
モルモンはホームズの緋色の習作(緋色の研究)に出てきたときの描写の印象が 強烈に残っている。現代から見るとちょーバイアス掛かった描写らしいが。
妹オブジェクトとmix-inしたいな
730 :
デフォルトの名無しさん :2011/06/12(日) 20:12:37.90
>>729 ogochanもかなりアクが強いよな
くさかべ氏なんかと同類的な意味でw
その意味のわかる奴がここにどれくらいいるのかわからんけどw
カルトだから戦おうとしたのではなく、たんに自分と対立があったからって話じゃないのか?
もめ事大好き イケイケドンドン なイメージしかない
日本はあれだけ宣教師とかが布教しても、キリスト教徒が1%を超えない珍しい国ではあるらしいね。 しかし親がキリスト教ならともかく、自らキリスト教に改宗するって結構すごいというか、あんまり理解 できない行動ではある。今の日本で。
黒人は罰として肌を黒くされたというモルモン経典をMatzは疑問に思わなかったのだろうか?
全てのモルモン教徒にてめぇが自分で聞いてまわればいいだろ? いいかげんで消えろ人間のゴミカス。
そういや今年のトニー賞、トレイパーカーのミュージカル the book of Mormonになったんだよな。 最初book of moronに聞こえたよ(笑)
ペロッ…… この味はarton!
>>734 ある人間の価値が、肌の色に左右されないという価値観が
ある程度普遍的になったのは驚くほど最近である、
という一般的な教養があるなら疑問には思わないだろうな。
それを肯定するかは別として。
小学生の頃にホームズ読んでたけど、そんな話有ったっけと、ググって出て来たウィキペディアを見たら。 モルモン教って酷い宗教だなw 隣町に末日聖徒の協会あるけど在日が出入りしてて半島系の新興基督教かと思ったらモルモンだったのか。
ホームズはイギリスの作品だからな。 当時のアメリカへの屈折した思いが見えるというか。 モルモンのほかにもKKKをネタにしたりもしてたはず。
Wikipedia見た感じだとそんなにやばい宗教には見えない。
いやWikipediaは本当にヤバい内容は書けないところだから
モルモン教は金板を自宅近くで発見、というところが実にてきとーでよろしい。 イエスが青森で死んだぐらいの信ぴょう性があるな。
>>743 いやWikipedia見たらってあるから見てみただけだよ
>ググって出て来たウィキペディアを見たら >モルモン教って酷い宗教だな >いやWikipediaは本当にヤバい内容は書けないところだから ? まあキリスト教自体やばい宗教なので派生宗派もやばいのは当然なんだが、 その中で特別やばい宗教という風には見えない。
スレ違いの宗教の話を永遠するのは なんの宗教なの?
Rubyは宗教
なにを今更 言語に限らずコンピュータ科学は昔から宗教論争だろう
matzが好きで好きでしょうがない人の開放治療の場でもあるので やむを得ないところもある ここで遊んでやっているうちは現実世界でやらかそうとも 思わないだろうしな
言語は、しかるべき時に繁栄してしかるべきときに滅びるんだから アンチとか意味ないのにね その流れからズレた位置にいる言語はLispだけ それ以外のすべての言語には生まれてからの寿命というのが存在して、いずれ滅び行く
関数型言語としての座はMLやらHaskellにとってかわられたし、 JavaやJavaScriptやPythonやRubyにもってかれた部分も多い。 マクロでLispにとってかわる何かができたら入れ替わるんでないかねぇ。
ホルモン教?
>>752 LispはS式であるがゆえに意味論的な限界は無いようなものだが
S式であるがゆえに記法的には本質的な制約を受けているのかなあと
Rubyを書いていると思う
>>752 >マクロでLispにとってかわる何かができたら入れ替わるんでないかねぇ。
なんだ、あと1000年は安泰そうだな
プログラミング言語に、文学のような美を求めているから、 いつまでたっても「バグを無くす事はできない」とか言うんだよね。 Rubyって「バグでてもいいや」って感じの言語でしょ?ちがう?
バグをなくすことができてそれが広く適用できるとしたら それだけで食っていけそうだ そういう意味だとCoqってどうなの?
Windowsの 1.9.2p180 を使ってテストしているのですが、UTF-8だと、 > File.directory?("ディレクトリ") true > Dir.entries("ディレクトリ") エラー(Errno::ENOENT) Dirのメソッドは、試した限りエラーになりました。 これは、仕様なのかな?実装漏れなのかな?
図書館で緋色読んで来た。モルモン酷いね。まつもとさんも掟を覆すと殺されるのかな? ついでにkkkの法も読んでみるから題名ヨロw キリスト教でもカトリックとプロテスタントとかはまともな法じゃ無いの? 半島系の基督風新興宗教がカルトで危険なだけで。 まあ今は野党だけど総かも海外ではカルト指定だしねえw 日本でも仏教系の日蓮宗派は結構ヤバいw
rubyに限らずスクリプト系だとバグって足り致命的だったりしても、気づいた時に直せばいいだろうって適当だったりはするね。 まあバグ無しアプリを作れる優秀なプログラマがほとんど居ないのが現実なんだろうけど。 その辺はハード的に大量生産して莫大な損害出すのできっちり生産管理してるのに比べるといい加減に感じる。 ペプシとか何百本も飲んでるけど、味が妙だったり、キャップがきちんと締まって無くて漏れたりなんて皆無だしな。 何百万本作ってどのくらいの歩留まりなんだろうなあ。何十回とパッチリリースしてるのに全然欠陥が直ってないソフトと比べると雲泥の差を感じる。
>760 おまえのほうがヤバい
>>761 その辺は客次第。
ヨーロッパの方じゃリサイクル由来のコーラ瓶の中に前の奴が捨てたガムがへばり付いてたりとかも普通。
「洗浄プロセスで落とされなかった汚れなら、内容物に染み出すこともない」だとさ。
バカは放置しろよ
モルモン教が半島系……? モルモン教の起源は朝鮮ニダ! ってか。朝鮮人みたいな奴だな。
やれやれ
まだ続いてたんか
PerlとJavascriptがRubyとどっこいどっこいの下位に甘んじてるのも気になるな
JSの位置は意外だが、Perlはこんなもんでしょ
flatten!がネストした配列がない場合にnilを返すのはどういう理由? 普通は空配列返すべきじゃね?とおもうんですが。 おかげさまでnilぽが発生してバグ発生しました。
if ary.flatten! したかったんじゃない
>>771 破壊的メソッドは変化なければ返値nilっての多いから
普段からそういう意識で考えるようにする方がよさげ
うーん。その変の感覚が共有できないんだよなぁ。
!は破壊的って意味だよね。
なのになぜ!をつけて入出力が変えてしまうのか。
なぜ破壊的という意味以上の意味をつけてしまうのか。
>>772 それをするようなシチュエーションが思いつかない・・・
>>774 破壊的メソッドと通常のメソッドでは用途が違うからだよ。
動作が似ていたとしても、ただ破壊的なだけじゃなくて根本的に別物。
[[],[],[]].flatten! -> [] これとどう区別すればいいんだよ 「ネストしてるけどデータは空」と「そもそもネストしてない」が同じになっていいのか?
def hyaun!?; end def iku!!; end とかは定義できないんだな。 よくわからん。
Cとかでいうvoid、MLでいうunitとかと発想は同じように見える ああいう関数は副作用があるから、返り値を使ってさらに計算を継続させるように使うことがない Rubyでも同様に、副作用があることが多い!メソッドは チェインするような仕様になっていないのだろう
>776 区別できて何が嬉しいんだ? それができて嬉しい状況があるのか? と、思わなくはないが、ライブラリ設計者としてはそういう未知の要求に対しては手段を残しておくという発想に至るのは自然だな。
irb> p [1,2,3].flatten [1, 2, 3] irb> p [1,2,3].flatten! nil Oh…
まー確かに、selfを変更するようなメソッドをチェインすることはまず無いな 書いててわずかな不安のにおいを感じる 破壊的メソッドは変数代入もメソッドチェインもせず、行にその処理だけ書くようにしてる
>>777 できるだけ空白も省略できるようになってるからなのか?
def foo?(x) x end
foo??a #=> "a"
def bar!(x) x end
bar!?a #=> "a"
bar!!true #=> false
というか、[1,2,3]にflatten!して空配列が返るとかキモすぎるだろ。 なんで破壊的に平坦化して無関係な配列生成して返さなきゃいけないんだよ。 せめて常にselfが返るとかだわ。
delete_if は付帯条件にヒットしないときでもいつも self を返すからみんな安心してメソッドチェーンしてね! irb> [1,2,3].reject!{|x| x == 4} => nil irb> a = [1,2,3]; a.delete_if{|x| x == 4}.equal?(a) => true
配列に対してなんか仕事をしたかどうかを返してるってだけだろ 必死こいて正当性を主張するほどでもないし 必死こいて間違ってると主張するほどでもない まあなんというか実にruby的な戻り値だよw
破壊的メソッドは手続き型言語的 オブジェクト自身をがんがん書き換える a=[1,2,3] a.map!{|x| [x] * x} a.flatten! p a # => [1, 2, 2, 3, 3, 3] 必要なのは変更された元のオブジェクト自身なので 戻り値は条件判断に使えるように変更が発生したか否か 非破壊メソッドは関数型言語的 元オブジェクトはそのままで変更した新しいオブジェクトを生成 a=[1,2,3] b = a.map{|x| [x] * x} \ .flatten p b # => [1, 2, 2, 3, 3, 3] 必要なのは戻り値である新しいオブジェクト 私はそう思ってるけど
/: : : : : __: :/: : ::/: : ://: : :/l::|: : :i: :l: : :ヽ: : :丶: : 丶ヾ ___ /;,, : : : //::/: : 7l,;:≠-::/: : / .l::|: : :l: :|;,,;!: : :!l: : :i: : : :|: : ::、 / ヽ /ヽヽ: ://: :!:,X~::|: /;,,;,/: :/ リ!: ::/ノ l`ヽl !: : |: : : :l: :l: リ / そ そ お \ /: : ヽヾ/: : l/::l |/|||llllヾ,、 / |: :/ , -==、 l\:::|: : : :|i: | / う う 前 | . /: : : //ヾ ; :|!: イ、||ll|||||::|| ノノ イ|||||||ヾ、 |: ::|!: : イ: ::|/ な 思 が /: : ://: : :ヽソ::ヽl |{ i||ll"ン ´ i| l|||l"l `|: /|: : /'!/l ん う ∠: : : ~: : : : : : : :丶ゝ-―- , ー=z_ソ |/ ハメ;, :: ::|. だ ん i|::ハ: : : : : : : : : : : 、ヘヘヘヘ 、 ヘヘヘヘヘ /: : : : : \,|. ろ な |!l |: : : : : : : : :、: ::\ 、-―-, / : : :丶;,,;,:ミヽ う ら 丶: :ハ、lヽ: :ヽ: : ::\__ `~ " /: : ト; lヽ) ゝ レ `| `、l`、>=ニ´ , _´ : :} ` / ,,、r"^~´"''''"t-`r、 _ -、 ´ヽノ \ノ / お ・ ,;'~ _r-- 、__ ~f、_>'、_ | で 前 ・ f~ ,;" ~"t___ ミ、 ^'t | は ん ・ ," ,~ ヾ~'-、__ ミ_ξ丶 | な 中 ・ ;' ,イ .. ヽ_ ヾ、0ヽ丶 l / ( ;":: |: :: .. .`, ヾ 丶 ! \____/ ;;;; :: 入:: :: :: l`ー-、 )l ヾ 丶 "~、ソ:: :い:: : \_ ノ , ヾ 丶
破壊的メソッドは全部true、falseを返すようにしよう
今まで挙がったのはこのくらいか 1. 常にselfを返す 2. 常にnilを返す 3. 変更したらself, しなかったらnilを返す 4. 変更したらself, しなかったらある特定の値(flatten!なら[])を返す 5. 変更したらtrue、しなかったらfalseを返す 6. 常にNoneを返す
flattenはselfの複製をフラット化した配列を返す flatten!はフラット化したself返す これでええやん… あかんの?あたしまちがってる?
>>790 フラット化しませんでした
しませんでした
しませんでした
という情報がチェックしにくいのがアレなんだと思う
self のオブジェクトIDは flatten! の前後で不変だから
破壊的メソッドの戻り値って何に使うんだよ 常にself返されてもうれしくないだろ 使うとしたら変更できたかどうかを判断したいとかだろうから現状の仕様ってことでしょう
793 :
uy :2011/06/15(水) 02:28:09.22
flatten flatten! はselfを返して flatten!? はselfかnil でいい 現在の!から返されるselfは「デバッグ用」の情報であって 型がnilになる可能性もある為に実際に使ってはいけないデータなんだから ただのselfを返す仕様ってのは落とし穴を作っちゃってる 自由度は下がってもtrueかfalseのほうが10倍マシ !?の導入か、または selfじゃなくて破壊的メソッド特有のデバッグ情報としてのselfを返す等にするべき
寝ろよ
flatten^-^ も欲しいな
仕様は今のままでリファレンスを「変更したときは真を、変更がなかったときは偽を返します」にする。
>>793 flattenがself返すとかマジキチ
つうか、やっちゃった感があるなこれ・・・ ! がselfかnilってどう考えても変だ 現行のRubyの破壊的メソッドは戻り値をやたら使わないほうがいいだろうな 絶対修正くる
nilとfalse以外ならなんでもよかった(boolean的な意味で) 反省ははしていない ゆきぴろ
別に 何かしたらself、何もしなかったらnilで特に障害はないから、 修正なんか来ないだろうな。 返り値どうでもいいメソッドだし>flatten!
つまり foo!.bar!.bazz! な記述を見かけたら基本的にバグってことで。
String#reverse! 常にselfを返す。 Array#reverse! 1.8より前 1要素の場合はnilを返す。それ以外はselfを返す。 1.8以降 常にselfを返す。 ほほーぅ。 ほぅほぅ。
ふくろう博士乙
なぜバレた・・・
Array#trim みたいなのがほしいなぁー。 [nil, nil, nil, nil, 1, nil, nil, nil, nil, nil, 2, nil, nil, nil, nil, 3, nil, nil, nil].trim =>[1, nil, nil, nil, nil, nil, 2, nil, nil, nil, nil, 3] こういうのね。 前後のnilをへつるようなの。
まぁ、そこまで欲しくはないけどね。 言ってみただけ。
n = [nil, nil, nil, nil, 1, nil, nil, nil, nil, nil, nil, nil, nil, nil, 3, nil, nil, nil] n.select! do | m | next true if (m!=nil)...(m!=nil) end p n
寝ろよ
>>807 こうですか?
class Array
def trim
st = self.index{|x| !x.nil?}
return [] if st.nil?
ed = self.rindex{|x| !x.nil?}
self[st..ed]
end
end
[nil, nil, nil, nil, 1, nil, nil, nil, nil, nil, 2, nil, nil, nil, nil, 3, nil, nil, nil].trim
# =>[1, nil, nil, nil, nil, nil, 2, nil, nil, nil, nil, 3]
812 :
デフォルトの名無しさん :2011/06/16(木) 01:09:43.30
a.drop_while(&:nil?).reverse.drop_while(&:nil?).reverse 微妙だ…しっぽから削るバージョンが欲しい。 Stringに倣うと strip という名前になるのかな。
ねろ
n = [nil, nil, nil, nil, 1, nil, nil, nil, nil, 2 , nil , nil, nil, nil, nil, 3, nil, nil, nil] n.to_s =~ /(\d.*\d)/ p eval"[#{$1}]"
パトラッs
n = [nil, nil, nil, nil, 1, nil, nil, nil, nil, 2, nil , nil, nil, nil, nil, 3, nil, nil, nil] n.select! do | m | next true if m...m==n.compact[-1] end p n 解散
>>807 通常、「真ん中」のnilを残す理由がないと思われるので、標準では無理だろう
論理的構造として表現されるなら、「それにする」という処理として採用することは可能だけど
>>801 前もどっかで書いたけど、これまで true/false を返していたメソッドをわざわざ書き変えて object/nil にしたメンバーがいます
スーパーの半額寿司のしょうゆパックを切りそこねてしょうゆが服に撥ねたりしますようにと呪いをかけてる最中
外国の人だけど…
でも hoge.foo? == true とかの、 true オブジェクトや false オブジェクトと直接比較するコードを書くことはまず無いよね いや、あってもいいんだけど、「書くべきではなくさせる」方向に個々のライブラリ作者がテンションかけるのは正当なのかな
>>819 if var && hoge.foo? == false then... という読み下し優先の書き方をすることはなくもない
if var && !hoge.foo? then... と同じだけど、接頭の ! って重要性の割に読みにくいしわかりにくいし細いしであんまり好きくない
if var and not hoge.foo? then... でもいいんだけどさ、これはこれで and と not が英単語として埋もれてイマイチ目立たなくて
>>818 encdode?が?つきメソッドなのにtrue/falseでなくobject/nilを返すんだけど
どうなってるのこれ、って話だったっけ
個人的には「?つきメソッドはtrue/falseを返す」って考えを拡張して
booleanコンテキストにおいて評価すればtrue/falseになるような返り値
つまりobject/nilを返すのはそこそこ合理的なんじゃないかなとも
もちろん
>>819 のようなコードを書かないように入門書レベルからの啓蒙が必要だけど
"なにか" == true が true で nil == false が true だったらよかったのに、と思うことは年に数回ある つきつめると !!obj でいいじゃんという話になって、 これくらいならメソッド定義の戻り値で書いておけ派と実際的に不要だし妙にハックで嫌だ派が喧嘩を
== (true|false|nil) のように明示的に書く明確な理由がなければ、そういう風には書くな、
というのはRubyに限った話でもないし、早いうちからきちんと教えるべきだね。
C FAQ で(
http://c-faq.com/bool/bool2.html )、そのように明示的に書くことが良いこと
だと思うなら、どうして == TRUE) == TRUE) == TRUE のようにしないのか?(ルイス・
キャロルの作品も参照)、としているのが皮肉が効いていて私は気に入っている。
>>822 そういう風に == の意味を妖しく拡張するのはあまり宜しくない。
現状たとえば NaN みたいな例外があるが、対称律と反射律と推移律が満たされない
== というのはいろいろとややこしいことになる。たとえば JavaScript の == がそういう
ことになっていて、常に === を使え、という妙なイディオムがあったりするわけで。
戻り値がいわゆる真偽値として使用されることがわかっているor期待されるのなら、 真偽値として代表的な true と false を返すように設計したほうが好ましい、という考えかたはアリだと思う だって「手抜き」じゃん?
いやなこと ・ hoge.foo? の戻り値がなんだったかなと思って p hoge.foo? としたら、なんか自作オブジェクトのinspectがだーっと表示される 「ああ、このメソッドはオブジェクトを返すんだったな」とアタマを切りかえなければならないのが鬱陶しい メソッド作者が気を遣って true か false を返すようになっていれば、ちょろっと true が表示されるだけだったのに なんらかの有効なオブジェクトを返すメソッドを if なんかの条件に使用する場合は自己責任でいいけどさ
破壊的メソッドも基本的にはオブジェクトを返す。 んで、こんなAPIでどや。 メソッドチェーンの回数で返値の数が増える。 result_ary, is_flat = ary.flatten! result_ary, is_flat, is_compact = ary.flatten!.compact! result_ary, is_flat, is_compact, is_uniq = ary.flatten!.compact!.uniq!
でもtrue/falseはあくまで「真偽値の代表」であって「真偽値そのもの」ではないからなあ
>>827 「真偽値そのもの」などない
無い以上、代表的な真偽値で代表させるのが妥当
っていうか、ぐるんぐるんするので過去のやり取りはある程度
obj.hakaiteki!.method! こういう記述がそもそも気持ち悪い。 !. ってなんだよやめろよ。 !で終わるメソッドの後にチェインするな。
チェインしないなら参照いらねーだろ 参照可能にしておきながら たまにnil返すとか嫌がらせにもほどがる
Railsとかだと!はヘマしたら例外が上がるッス的な意味にも使ってるよね。
副作用がメインのメソッドなんだから、基本は返り値ステ、でいいんだよ。 「! が付いてるのは注意して使うメソッド」って言ってるんだから、その返り値を 使う時は注意しろ、ってことで。
>> s="abc" => "abc" >> s.upcase! => "ABC" >> s.upcase! => nil 合理的かどうかはさておき、ある程度の一貫性はあるのか
何もしなければnilっていう!メソッドは数多いから、 リファレンス引きもしないで!メソッドの返り値使おうとする方が悪い。
よくあるおせっかいパターン。 気を利かせていろいろできるようにしても、結局誰も使わずに邪魔になるだけの機能
驚き最小の法則にはリファレンスを熟知しているという前提がある。 と、つまりそういうことですか><;
ソース読んでて if s.upcase! == "FOO" ... end なんて、正しく動作するコードに遭遇したらいろいろ嫌すぎるw
>>837 「さまざまなバックグラウンドの人々すべてを驚かせないことではなく、
Ruby のやり方に十分に慣れた人が持つ常識が一貫して通用するという意味」
「Ruby のやり方に十分に慣れた人」はself or nilを返り値にとる!メソッドが
多いのを知っているので、!で終わるメソッドからチェインしたりしない。
method!はnilぽが出るのを知るまでは、
当然methodと同じ動作だろと思ってるわけで、
わざわざリファレンス引かないよな。
というかflatten!は
>>804 とは一貫性ないじゃまイカ。
いや,一貫している事が1つある. それは一貫してないってことだ(キリッ!
>>840 >method!はnilぽが出るのを知るまでは、
>当然methodと同じ動作だろと思ってる
methodは新しいオブジェクト作って返す
method!はレシーバを破壊的に変更
なんだからmethod!の返り値についてmethodと同じ動作を期待するのは頭のおかしいお前だけだよ。
「Rubyが一貫性を持つ」じゃなくて、
「Ruby のやり方に十分に慣れた人が持つ常識が一貫して通用する」
「! は nil を返すことがあるので返り値は利用しない」
>>842 こういうやつって、どいういう仕様でも擁護するだけだから何の意味もないよな
self か nil を返すメソッドたち reject!, compact!, flatten!, uniq! capitalize!, upcase!, downcase!, swapcase!, chomp!, chop!, delete!, strip!, lstrip!, rstrip!, sub!, tr!, tr_s!
見落としてたけどselect!とgsub!もか。 map!は仕方ないとして、「reverse!の0要素1要素でもself」の方が「一貫性がない」かな。
>>843 self or nil だったり常にselfだったりするのはどっちかに統一しろよと思わなくもないが、
>method!はnilぽが出るのを知るまでは、
>当然methodと同じ動作だろと思ってるわけで、
>わざわざリファレンス引かないよな。
これは全面的にお前がダメなだけ
持ち出すなら「驚き最小」ではなく「名前重要」の方ではないか
同じような動作でもreject!はself | nilでdelete_ifは常にselfなあたり、 ! の返り値は使うな、という意図があるとしか思えない。
リファレンス嫁といえばそれまでだけど、初心者にとっては落とし穴に成り得るな。
本当の初心者にとっては落とし穴にはならないので大丈夫 おおむね、他の言語を使用していて、マニュアルもなにも読まないでも使えるとか思い込んだアホが引っ掛かる
rubyの作法とrorの差法が違うぜって指摘は昔からされてたしなあ。今更。
ruby作ってる人たちはあまりruby使わないから、センスないなあと思うことも多い
匿名掲示板なのに全く匿名になってない件(w
見えないものが見えだした場合は フォースの覚醒を喜ぶ前に診察を受けてみるべき
Matz.new
Rubyみたいな低性能で過剰に電力を消費する ゴミ言語使って社会に迷惑かけるなよ
>>856 ↑そう思うなら貴様のようなゴミは今すぐ死ねよ
アセンブリ言語以外は……いや、アセンブルも無駄に電力消費するから、 全てのプログラムはマシン語で直接打つべし。
Rubyを使うの止めて 原発のないクリーンな世界を実現しよう
日本人ならRuby使うのやめて 節電に協力しないと
生きるのやめて原発のないクリーンな世界を実現しよう 人間なら生きるのやめて節電に協力しないと
わかったから、おまえが手本を示せ。まず2ちゃんねるへの書き込みをやめろ、な。
まずはおまえが死ねよ Rubyなんて使ってるカスから順に
2ちゃんねるに悪口書き込むしか生き甲斐がないおまえがまず死ね
Rubyなんて使っている時点で 無駄にエネルギーを浪費する 反社会的プログラムしか作れなくて可哀そう
別に社会のためにプログラム作ってるわけでもないからいいんじゃね
2ちゃんねるに悪口書き込むという自分の反社会的行為とエネルギーの無駄遣いはどうなんだw
それによってその他社会的行為の活動が活発になるんならいいんじゃね
そんなことはどうでもいいんだよ それよりも楽しくプログラミングしようぜ ソフトウェアの仕事は面白くないがな!
Rubyを使うことによって生じた無駄を その他の社会的行為の活動で埋め合わせるのは不可能 より効率的な他の言語を使うべき
楽しく好き勝手にやり続けた結果が福島 楽しむにしても無駄に電力を消費するRubyは避けなければならない
>>870 そもそも言語使って開発するのが無駄
アセンブラで開発すべき
休みの日まで効率を求めてたら早死にするよ 普段は金とか時間とかの効率を求めなくていいように効率よく働くんだよ
日本の得意分野はハードなんだから マの脳にチップ埋めこんで思考、記憶の効率を高めて どんなコードもCでガリガリかけるようにする研究をすすめるべき。
ここってすげー瞬間的にレス数が増えるよな
生産性の悪い言語に労力を注ぎ込むという無駄はどうでもいいと思っている恐るべきバカだな。 貴様は生のマシンとトグルスイッチと機械語だけで生きてろ。機械語モニタさえ使用を禁止する。 もちろんネット掲示板なんか絶対に使うな。
無駄の大きい部分から節約しないと効果が薄いって そんな基本的なこともわからんのか まずは無駄の多いRubyから削っていくべき
>>874 逆だろ、人間の要望を自然言語入力すると
実際のプログラム作成まで自動化できるようにする、マはいらなくなる
だから一番の無駄はおまえの悪口を2ちゃんねるに書き込むだけの人生だろ?
>>880 「おまえの」の位置が惜しい
文脈から読み取ることはできるので現状でも問題は無いが、そこではなく
だから一番の無駄は 悪口を2ちゃんねるに書き込むだけの「おまえの」人生だろ?
とすべきだった
Rubyが過剰にエネルギーを消費するのは 悪口じゃなく事実だし
そこは「おまえの」ではなく「われわれの」とすると支配者感があってよろし NetBeans、宣言部分にジャンプできる機能便利だなぁ 他のIDE(?)でもできるのかしら
Rubyを使っている限り 過剰にエネルギーを消費する ゴミプログラムしか作れないのも事実
ゴミのような書き込みしかできないバカと、 きちんと何らかの仕事をするプログラム、 先に消えるべきはゴミのような書き込みしかできないバカ。 これが事実
子供を被曝させてまで Rubyを使い続ける非道ぶり
暇なんだなあ
Rubyみたいな過剰に電力を消費する言語は 地球から出ていけ
まあルビも節電機能つけろとは思う。 昼間のピーク時は15%プロセッサを止める動作を行うとか。
コアを1つしか使わないとかそういう機能は付いてる
電気が足りなきゃ 止まっている火力発電所動かえばいいだろ
原発はもっとガンガン最新型を建造していくべきだよね 仮に事故って子どもが100万人死んだとしても他の方法で死ぬ子供の数よりはるかに少ないし
Ruby使えなくなるくらいなら 原発作って被曝した方がましだし
別に作ったら必ず被曝するわけでもないしなあ
地震が来たらほぼ間違いなく壊れるだろ
対策すりゃ楽勝じゃん 極端な方式なら地下に作ってもいいな
>>897 今すぐ官邸に行って
アドバイスしてこいよ
>>891 できれば内輪以外にもわかるように書いてくれД`)
島根の原発って松江にあるのか
まぁ、何かあったらmatzsなんがrubyで何とかしてくれるだろ。 大丈夫。
Emacsのruby-modeのインデントって、 こうなってほしいのに、 Foo.new( :a=>1, :b=>2, :c=>3 ) こうなるよね。 Foo.new( :a=>1, :b=>2, :c=>3 )
自分で修正すればいいやん
CPU使用率なんてOSが振りわけろよ
>>904 文が終わってないから、動作としては妥当
まあ、抑制したいと思うことはあるけれど
うまいデフォルト動作ってないもんだな
907 :
デフォルトの名無しさん :2011/06/19(日) 12:11:48.30
たしかにRubyコミッタってあんまり綺麗なコード書く印象無い
バグ発見 [1,2,3][3] nil
何がどうバグなのか説明してくれ
>>909 極端なことを書いても誰も相手してくれなくなったのがバグ
emacsマジかよ全角空白でインデントとか
K computerでRubyいごく?
動くが動く以上の意味はないな 何故かを知りたいならスパコンについて調べるんだ。
昔は日本ほにゃららユーザ会って名前が多かったんだが、最近はこじゃれた名前で馴染めん。
ルビーだと並列処理に剥いてないから大して速度でないだろうな。 スレッドクンでも他のプロセッサコアに割り当てないしなあ。
実行、デバッグも兼ね備えたマルチプラットフォームで動作するRuby用IDE「Arcadia」
http://www.moongift.jp/2011/06/20110620-3/ 例えばこれとかさ、なんかいろいろRubyのエディタとかIDEがでてくるけど、
これらが一体、どこまで実用的になるのか疑問なんだわ。
利用者からすればGUIにRuby/Tkを選んでる時点で使う気が失せるというか、重たそうだなぁという印象。単にRuby/Tk使いたいだけちゃうんかと。
いや、別に作って公開することをとやかく言う権利は誰にも無いんだけどさ。
Ruby関連のアプリにせよライブラリにせよ、なーんかちょっと作って放ったらかしみたいなのが散見するんだよねー。んで誰もノってこないってのもあるんだろうけど。
んで、開発環境ってのは今日日プログラミング言語とは切り離せないんだよね。
コード書いて、実行するまでの処理系の一部みたいな?
むしろ言語なんてどうでも良くてIDEの出来映えで言語を選択しちゃうことも有り得るんだわ。
例えばJavaだとかあんだけ糞長いコードだけどEclipseが秀逸すぎてその辺の苦労はかなり軽減されているわけ。リファクタリング機能も間違いなく完璧。というか大きな不満なんてだれも持ってないレベルの出来映え。
んでね、Rubyの更なる発展のためにはね、matzのおじさんがいつまでもEmacsにへばりついてちゃだめなんじゃないかなって。
そんな風に思うのね。
IDEとかエディタ作ってる人は、例えばRDTとかにね、Eclipseみたいにお金かけてガッツり作る必要があるんじゃないかなってね、そんな風に思うのね。
わかる?
IDEのリファクタリング機能が完璧www お前の言ってるリファクタリングって変数/メソッドのリネームだろ?
Eclipseのリファクタリング機能のことを言ってるのであって、 リファクタリング一般のことを言ってるのではぬゎぃ。
>>919 > お前の言ってるリファクタリングって変数/メソッドのリネームだろ?
横からだが、JavaでEclipse使ってる場合の話なら、
いわゆるリファクタリング本に乗ってるような
処理は全部出来るな。
これはJavaが静的型付けでその手の操作が元々やりやすいってのと、
開発元のIBMが金突っ込んで頑張ったって経緯のためだけど。
やっぱVMもそうだけど金突っ込んでるところは違うというか、
面倒そうなところも力ずくで突破する凄まじさがあるよな。
IDEを何だと思ってるんだ
補完とデバッグとその他機能付きエディタ モノによってはGUIデザイナとかも付いてるよ!って感じ ぶっちゃけどうでもいい存在
javaはibmでも儲けてるけど、rubyはも受けにくいってのは大きいだろうな。 そこはモルモン信者の教祖様が一人でがんばっても変わらないと思うよ。
>>922 > こういうのってリファクタリングの対象だと思うけど
それは、いわゆるリファクタリング本を読んだ上での発言?
所詮はスクリプト言語なのでIDEの機能をフル活用するほど 大規模な開発に使われないっていうね。
>>926 ん?僕ちゃんの教科書にはリファクタリングは何て書いてあったの?
arcadia 動きがダメだ キーボードで全て操作できない 重くはない しいていうならインテリセンスよりも略語展開のほうが重要なんだよ 略語展開できるIDEが少なすぎる インテリセンスとか俺つかわね
略語展開でいいならVimやらEmacsでいけるが、 これらを今まで使ってなかった人に 今更進めるのもなぁ
リファクタリング (refactoring) とはコンピュータプログラミングにおいて、プログラムの外部から見た動作を変えずにソースコードの内部構造を整理すること。
どこがどう恥なのか分からんが、
>>931 の定義を満たしつつ
>>922 を書き換えることが無いとは言えんな
前もこのスレでオレオレ定義の「リファクタリング」を振り回したあげく 突っ込まれたら「リファクタリングに決まった定義なんか無い」と居直って ファウラーのサイトの定義のページを貼られて爆沈してた可哀相な人がいたけど これもスレがループしてるってことなのかな
簡単に委譲の形でくくり出せるほどコードが洗練されてたら
そもそも
>>922 みたいな馬鹿なことになるはずも無く
ま、それでもやる場合もあるだろうが、Javaの場合とは違って
Rubyのような動的型付けではIDEサポートは殆ど役に立たないだろう
>>933 それだと元の話の「IDEに出来そうにないこと」に該当しなくね?
>>922 がIDEで出来ることを何も知らなかった、という可能性は
なくはないけど、まあそれはないでしょ。
>>936 動的とはいえ大半のRubyコードはトリッキーなことをしてないので
コード補完程度ならおおむね何とかなってるのが現状。
もっと頑張ればもっと色々出来るんだろうけど
金を出す奴もいないので、という感じか。
金出す価値ないしな
コード補完くらいならEmacsから乗り換える理由がない
いえいえ、Emacs僧侶様に破戒してまでIDEを使っていただこうなどとはこれっぽっちもおもっておりませぬ。 どうぞ雲上の修行山にお帰りくだされ。
>>942 >>921 は「いわゆるリファクタリング本の」と書いてるからその手の逃げはあらかじめつぶされてるわな。
もがけばもがくほど穴にはまって行くなw
たぶん今頃モニタの前で何人か笑い死にしてる
たぶんJavaではリフレクションやSQLを使ったことが無いんだろう
>>948 Rubyもそうだけどそれが大部分を果たして占めるのかどうかじゃね
自分の足すら撃てる銃があったとして
年がら年中撃ってるかっていう
Rubyは撃ってないことを機械的に証明できる範囲がずっと小さい 人間が実際に撃ってるかどうかはあんまり関係ない
>>950 その辺は割と行き当たりばったりでいけるみたいよ
NetBeansとかはJRuby内蔵してオブジェクト評価しちゃう
とかそんな無理矢理感漂う力押しで解決してたりとか
実行系内蔵するのは反則
いや、反則とは言わないけど、どれくらい正確に解析出来るのか疑問
漏れなく完全正確でなければならないわけでもあるまい ほとんどの場合でうまくいってコストも妥当なのなら、それでいいんじゃないかね
「リファクタリング機能も完璧」ってのは機械的にできるような リファクタリングの機能がほぼすべて揃っていることを言ってるんであって、 「どんなリファクタリングでも機能としてできる」って意味じゃないのでは?
リフレクションとか意地悪言わなくても 完全自動化が難しいリファクタリングもあるしな Template Methodの形成とか
RubyのIDE開発はメソッドミッシングや動的メソッド定義といった魔術にどう対処するかが鍵だろうな。 Scalaとかはパターンマッチングとかで静的に解決する見込みがあるのかな?
風呂敷膨らませるって荷物大量に詰め込むってことだろうか。
手元のEclipseでメニュー見てみたよ。
ちょっとバージョン古いけど大差ないだろ。
移動
メソッドシグネチャの変更
インターフェースの抽出
スーパークラスの抽出
使用可能な場合スーパータイプを使用
プルアップ
プッシュダウン
クラスの抽出
パラメタオブジェクトの導入
総称型引数の推測
こんなもんか。
メソッドのオーバーライドだのコンストラクタの生成だの
委譲メソッドの生成だのはリファクタリングとは別枠で用意と。
それぞれの処理は全自動ではなくて、都度問い合わされたり
プレビューで確認させられたりだな。
>>957 インターフェースの抽出→メソッドのオーバーライド
って感じでやるみたいだ。
当然全自動はムリでどのメソッドを抽出するか選べってIDEが訊いてくるね。
判断は人間にさせてIDEは候補の抽出と
指示された処理の結果保証を確実にやるって割り切りのようだ。
まあ実際それで十分なんだろうな。
たぶん大風呂敷を広げるってのを間違えたんじゃないかな
風呂敷広げすぎて日の目を水に終わったプロジェクトも多いからな。
小さいことなんだけど、これってRubyのオリジナル? 他言語でもあったりするの? 役立ちそうでどうでも良いような画期的な機能に思えるんだけど puts DATA.read __END__ tes s ss s s
Perlにはあるね
ほう・・・・・
発想的にはむしろ古い言語に多いかと BASICのDATA文とかENDより後に書くのが主流だったしなー
パンチカードの束をジョブとしてくべていた時代は、先頭にジョブ制御言語の カードがあって、そのあとプログラムのカードとデータのカード、とかたぶん そういう文化。
まあソースファイルにデータ同梱したいすごく強烈な理由でもないかぎりやめた方が無難。 処理とデータは分けましょう。
単にPerlにあるからRubyにも入れた程度の機能じゃね? そのわりにrewindとかできるけど。
shebangって元々そういう発想では
shebang? ヒアドキュメントじゃなくて?
だれかヒアドキュメントの話してたか?
え・・・
974 :
デフォルトの名無しさん :2011/06/22(水) 13:04:21.33
たぶん963とか965に何か書いてあるのだろう。
このスレには無意識に平行世界を行き来してる人が居るよね
君はどの平行世界から来たんだ?
う
目立たないように
届きますように
都内23区一律均一料金
98年頃の雑誌みてたらおもしろいなー。 CGIとかシェルスクリプトで書いてたとかw ワロスワロスw ハードディスクに保存するよりフロッピーにラベルを貼って保存した方が遥かに便利とかかいてあってワロスワロスw 会社にPCが一台しかないのでメールなんて使いもんにならん。 一部のオタク用の道具であり一般に普及する事はないだろう。 ワロスワロスw 古い本ってとっておくと後で楽しいわw
誤爆したすまんすまんw
計算精度があたるってなんじゃらほ とりあえず、途中で min と max がただの整数になってる Ruby の変数は箱ではなく、オブジェクトに貼られたラベルだ BigDecimal オブジェクトに max という変数名をつけたからといって、max という変数名が常に BigDecimal になるわけじゃない if m * m * m >= n max = BigDecimal::new(m.to_s) end min = max - BigDecimal::new('1.0') mid = (min + max) / BigDecimal::new('2.0') とか書いたら 15 # input 0.25E1 0.225E1 0.2375E1 0.24375E1 0.246875E1 0.2453125E1 0.24609375E1 0.246484375E1 0.2466796875E1 0.24658203125E1 という表示になったけどこれでいっすか
>>985 ありがとうございました!
E1は消せませんか?
>>986 おかしいですか・・・?
入力された数字の3乗根が整数の場合はすぐに出力して
そうじゃなかったら二分法で近似値を出力しようとしています。
>>984 をみてもらったら
>>983 よりわかりやすいかと思います
>>987 10倍した値が出ないですか?
って意味で です
.to_f これか? 違えば自分で関数を調べるが良い min = BigDecimal::new("5.0") min.methods.sort.each do | f | begin print f , "\t\t\t" puts eval" min.#{f} " rescue p f end end
浮動小数点数の表記法を調べたら解る
計算精度が必要なら消しちゃ駄目だろう なんのためにBigDecimalなんて遅いライブラリ使ってまで計算したんだよ
>>991 ありがとうございました!
>>993 BigDecimalがないと小数点15桁以降が表示されないからです。
995 :
uy ◆yyC0rYWEq2 :2011/06/23(木) 23:27:44.70
>>995 いますぐWindowsで動くxmonadのサブセットを作るんだ
マジで神になれるぞ
997 :
uy ◆yyC0rYWEq2 :2011/06/23(木) 23:43:09.81
俺は元々神だ・・・・・・ つうか速度を落としてでもソースコードを小さくしてる ウィンドウ周りと、エディタと、STGかいてそれで1000行程度・・・・・ xmonadってHaskellでかかれてるってことは、関数ごとにコンパイルとかしてるんだろそれ Rubyの速度でウィンドウマネージャ?システム? 作るのは実用的ではない・・・・・・ オブジェクト100個で処理落ちする だから、どうせ処理落ちするから、吹っ切れてソースコードの小ささのみを求めてる・・・・ 趣味のレベル・・・・・・・・
スクリプト言語なんだから、ある程度の処理が短時間で書けるのは当たり前ですん。 そうでなきゃスクリプト言語の意味なす……。 「Rubyでも大規模なプログラムが書ける」ということを示したいなら、 短時間で一定のプログラムを書けることを示すんじゃなくて、 実際に「大規模なプログラム」を書いて見せなきゃダメだお。 ・大規模で ・C/C++、あるいはせめてJavaやC#で書き直したくなるほどには重くなくて ・Rubyであるおかげでそれらの言語より短時間でスマートなコードで書けた プログラムを書いてからまたどうぞ。
多人数で週月年とかって単位で作るようなプログラムを まともに動くようにRubyで書けば「Rubyでも大規模開発できる」って認められるんじゃないかな。
1000 :
uy ◆yyC0rYWEq2 :2011/06/23(木) 23:52:47.70
示したいとかいっていない 俺はそもそもソースコードが異質であり、何か大規模なものかいても例外とされる・・・・ [ [ oo.x , oo.y ] , [ oo.x + 20 , oo.y ] ].each do | ( x , y ) | oo.node_task_template({ :x => x , :y => y , :d => Image.new(10,20,[100,100,150]) , :misaka => "user_shot" , :hdc => main , }) do | yu | oo.y -= 2 next oo.delete if oo.y < 0 oo.search_up(/game_stage/).search_down_all_test(/tek_\d.*/).each do | key , value | if Lumia.blockhit oo.x , oo.y , oo.d.width , oo.d.height , value.x , value.y , value.d.width , value.d.height oo.search_up(/game_stage/).eval_do.push %! (1..10).each do | i | mm.node_task_template({ x: #{main.x} + #{oo.x} + #{oo.d.width/2} , y: #{main.y} + #{oo.y} + #{oo.d.height/2} , d: Image.new(4,4,[100,100,200]), limit: 155 , add: 1 , :hdc => Window , speed: 0.5, angle: i*36 , misaka: "misaka", feadin: ({ limit: 254 , add: 1 }) , rot: ({ limit: 400 , add: 1 }) , scalex: ({ start: 1 , limit: 2 , add: 0.01 }) , scaley: ({ start: 1 , limit: 2 , add: 0.01 }) , }) do |yu , c| # Window.drawFont(oo.x, oo.y, "test#{c}", Yuyuko.font) それに、arcadia(IDE)? だって大規模といえば大規模だろ もうRubyで大規模開発をやってる奴はやっている
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。