トップページ⇒tech
1001コメント279KB

Rubyについて Part 26

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2007/03/05(月) 04:31:34
オブジェクト指向スクリプト言語Rubyにつゐて扱うスレッドです。

Ruby Home Page
http://www.ruby-lang.org/ja/

= 前スレ
Rubyについて Part 25 (気にしてますか?GPL混入
http://pc11.2ch.net/test/read.cgi/tech/1164885714/

= とりあゑずRuby関連スレ
Ruby初心者スレッド Part 10
http://pc11.2ch.net/test/read.cgi/tech/1169542763/

【ActiveScript】RubyをWindowsで使うスレ【GUI】
http://pc8.2ch.net/test/read.cgi/tech/1155031689/

【カルト】Ruby開発者Matz【モルモン】
http://pc11.2ch.net/test/read.cgi/prog/1148712641/
0655デフォルトの名無しさん2007/05/18(金) 03:12:41
ソースの可読性が
python,Ruby>>>>>>>>>>>perl
なんだしもうPerlは無いだろ
0656デフォルトの名無しさん2007/05/18(金) 03:26:41
目的を達するスピードはどう考えても perl の方が早い
CPAN があるってだけでも圧倒的有利なんだし
と言うか掻き捨てのちょい書きスクリプト、規模のレベルが小さいユーティリティと言うこの分野なら
どんなアプローチにも少ないステップで対応出来る perl の柔軟性の方がずっとしっくり来る
0657デフォルトの名無しさん2007/05/18(金) 03:30:25
>>654
>その分野は速度も技術的な蓄積も Perl の独占状態なわけだが
ちょwww

>本格的にログ解析、データ加工をするならその分野のソフトウェアがありそれはコンパイラ言語で出来ている
すでに標準形式があって、王道ソフトがあるようなものの処理をRubyで代替するわけないよ
スクリプト言語ってのは、もっとglueとしての使い方(ライブラリに提供される中間形式を高水準なレベルで処理したり)がほとんどなわけで

>「そうじゃない使い方も沢山あるんだから」と言うほどの割合を占めているとは思えない
>JRuby が宣伝通りの性能を発揮すれば CRuby の存在意義がかなりの割合で無くなるのは目に見えている
実際のシェアは知らんが、Ruby=鯖なんていう見方の方がよっぽど偏ってると思うよ
0658デフォルトの名無しさん2007/05/18(金) 03:34:28
Perlが廃れてきてる理由は、これから始める初心者をRubyに持ってかれてる部分もけっこうあるよね
0659デフォルトの名無しさん2007/05/18(金) 03:41:30
フフ、モビルソースの言語の違いが可読性の決定的差ではないということを教えてやる
0660デフォルトの名無しさん2007/05/18(金) 03:49:17
ええい、連邦のモビルソースは化物か !?
0661デフォルトの名無しさん2007/05/18(金) 03:49:23
Ruby=鯖じゃなくてスクリプト言語の利点はほとんどの場合鯖で発揮されると言っているわけだが
いわゆるデスクトップアプリなんて速度優先リソース優先だからまず使われない
軽作業の場合は手段の豊富さの方が重宝される

つーかいつから perl は廃れてきている事になっているんだ?w
0662デフォルトの名無しさん2007/05/18(金) 03:55:33
さすがにPerlはないなぁ・・・
0663デフォルトの名無しさん2007/05/18(金) 03:58:38
perl はかなり良い言語でハッカーも一番多いんだけど perl だめとか風潮したヤツらのせいで
プログラム初心者ほど馬鹿にする傾向があるのが痛い
0664デフォルトの名無しさん2007/05/18(金) 04:01:47
ハッカーはRubyもPythonも、もちろんCも使いますがな
もしかして自分がハッカーだと言いたいの?
0665デフォルトの名無しさん2007/05/18(金) 04:08:25
何かをするときに選ぶ言語ってのがその言語だという事だよ
Python、Ruby、perl はレイヤとしてほぼ同じところにいる
この中から何かを仕様として選ぶ言語として perl を選ぶって事
c、perl、lisp などのちょっとダーティだけどなんでもできる言語を選ぶ傾向にある
0666デフォルトの名無しさん2007/05/18(金) 04:16:56
perlを低く見るのはjavaプログラマに多いな
だいたい低レベルな連中だ
0667デフォルトの名無しさん2007/05/18(金) 04:16:54
lispは何でもできる言語じゃないよ。
どっちかというと何もできないけど、おれみたいな学門方面の喜ぶ言語。
perlってロジックが複雑になると、ファクターアウトしづらいんだよね。
rubyはその点、高階関数的な書き方とか、moduleとか、メタな記述方式とかよくできてるよ。
まあそっち方面だとlispの独壇場になるけど。
0668デフォルトの名無しさん2007/05/18(金) 04:23:44
perlのよいところも悪いところ見た上でruby選ぶもんじゃないの?
馬鹿にするような代物ではないと思うが・・・
lispも同じ
0669デフォルトの名無しさん2007/05/18(金) 04:25:07
学問方面だったら関数型言語使うでしょ
それに高階関数なら今どき出来ない言語無いけど
perl なら動的分類も多重分類も可能だしその意味じゃ CLOS などのオブジェクトシステムを
自由に構築できる lisp に近いと思うけど

Haskell の FizzBuzz の回答が結構おもしろかったよ
ttp://d.hatena.ne.jp/takatoh/20070509/fizzbuzz

無限配列つくってを zip する事により余剰計算全くなしという
ここにも lisp とか ruby のいくつかの解があるけど発想がまったく違うね
0670デフォルトの名無しさん2007/05/18(金) 04:27:30
perlで好きだったとこは、たいていrubyでも通用するからなぁ
cpan持ち出すような処理だったら、groovyでjavaのライブラリ使い放題なほうが楽だったりするし
0671デフォルトの名無しさん2007/05/18(金) 04:30:04
別に馬鹿にはしていないよw
JRuby が伸びると CRuby の存在価値がほとんどなくなるんじゃないかという話
YARV と同じ速度で動いてスレッドも上手い具合になったら遅い CRuby 使う意味ないでしょと
軽作業ではライブラリがたんまり揃っていてコードにも強くちょっと汚いけど融通の利く perl の方が有利と
0672デフォルトの名無しさん2007/05/18(金) 04:33:51
perlが融通利いてると思ったことはないな
0673デフォルトの名無しさん2007/05/18(金) 04:53:49
>>669
ん?lispだって関数型言語じゃん。
haskellは触ったことないので知らんが、グラフ探索の類とかschemeで書くのが普通に楽だよ。
述語論理だったらprologのほうが楽だけどね。
オブジェクト指向だったら普通にrubyが圧倒優位だと思うが如何か?
0674デフォルトの名無しさん2007/05/18(金) 05:02:40
lisp のどこが関数型言語なんだよw
なにをもって圧倒的有利なのか判らないけど MOP が出来る CLOS の方がなんでも出来ると思うけど
scheme は SICP に習って関数型のルールを自分で守ればまぁボトムアップアプローチは出来るが
それでも関数型言語としては評価順に意味があったり遅延評価が出来なかったり
破壊的な代入が出来たりとやっぱりマルチパラダイム言語であると言えるだろう

つーか学生なら関数型言語一つは触っておいた方が良いと思うぞ
0675デフォルトの名無しさん2007/05/18(金) 05:27:45
lisp は分類は一応関数型言語。
純粋関数型言語じゃないだけ。
0676デフォルトの名無しさん2007/05/18(金) 05:41:26
CPANは一昔前は何でも揃ってるイメージがあったけど、最近はそんなに重宝しないな
ローレベルな処理はどこのライブラリもやってくれるから、あとはRubyでオブジェクトレベルで切り盛りするのが一番しっくり来る
最近はめっきりPerlで物を書いてないのもあるけど、何かPerlは脳への負担がRubyより大きくて敵わんな
Rubyだと何か抽象的なことがやりたいと思ったときに、そのまま脳内のイメージをクラスにしてごにょごにょやれば、たいてい動くものができる
慣れの問題ってのはでかい
0677デフォルトの名無しさん2007/05/18(金) 06:29:24
>>670
groovyって使った事ないけど、いいもんですか?
不自由ない?
0678デフォルトの名無しさん2007/05/18(金) 07:10:43
>>674 定期的に半可通な発言が目立つな。しね。
0679デフォルトの名無しさん2007/05/18(金) 07:20:04
Lisp厨は実用性の話を一切しないよな
0680デフォルトの名無しさん2007/05/18(金) 08:06:51
今後 JRuby が伸びるのはほぼ間違いないだろう。
心配なのは Ruby は鯖用途じゃないとかいって自己満足的改変を
続けて足を引っ張るというシナリオが最悪。
JRuby はもはや無視できない存在なんだから
0681デフォルトの名無しさん2007/05/18(金) 08:31:46
鯖ではJRubyでいいよ。その点では軽視してない。
だが簡単なテキスト処理で今更Perl使う気は起きないんだよなぁって話。
そりゃPerlに慣れてるなら早いかもしれんが。
0682デフォルトの名無しさん2007/05/18(金) 08:44:30
鯖…JRuby
他…CRuby
ということで俺は満足(多少の例外はあるだろうけど)。
どちらかしかないとか言う奴が一番痛々しい。
0683デフォルトの名無しさん2007/05/18(金) 15:04:22
>>594
> #543, 1.187

これだけやたらと遅いけど、to_aとeach両方計ってない?
0684デフォルトの名無しさん2007/05/18(金) 15:29:46
>>679
だって、研究用とだもん('A`)
Gaucheくらいになると別
0685デフォルトの名無しさん2007/05/18(金) 16:28:19
素のLispは数学
せめてCommonLisp
0686デフォルトの名無しさん2007/05/18(金) 16:29:46
>>684
つまり、出てこなくていいんですよ('A`)
0687デフォルトの名無しさん2007/05/18(金) 18:08:36
Karetta|Gaucheプログラミング|「Lisp脳」の謎に迫る - Schemeプログラマの発想
http://karetta.jp/book-node/gauche-hacks/023107

Lisp脳wwww
0688デフォルトの名無しさん2007/05/18(金) 19:44:27
わかりやすくていい記事だ
0689デフォルトの名無しさん2007/05/18(金) 20:49:53
CommonLisp が実用的じゃないって Ruby 厨はどれだけアホなんだw
で、Gauche の方が実用的だって?
Shiro 氏自身が実用で使うなら Gauche より CommonLisp とるって言っているのにwwww
0690デフォルトの名無しさん2007/05/18(金) 20:51:10
>>687
>>532
0691デフォルトの名無しさん2007/05/18(金) 20:54:08
誰もそんなこと言ってないと思うんだが
コンプレックスで盲いた人は傍迷惑で困る

>>688
でも「ループ内でひとつずつ表示するようにすれば長大なリスト構造を確保し続けなくていいんじゃね」と考えるのがある意味ふつーだとも思う
0692デフォルトの名無しさん2007/05/18(金) 20:59:02
>>691
まあ、「ふつーじゃない」からこそ知っておくと役に立つことがあるんだろうけどな
0693デフォルトの名無しさん2007/05/18(金) 22:12:00
>>679
ここでその手の話をしても、「うざい」だろうしかななくても「うざい」
と言うだけだろ?その事は見通されてるだけだ。せいぜい、ここで他言語
の悪口言ってマンセーしてればいいんじゃないの。
0694デフォルトの名無しさん2007/05/18(金) 22:24:11
実用性の前にスレ違いだから
0695デフォルトの名無しさん2007/05/18(金) 23:04:42
>691
本当はmapを使うことによる順序依存性の排除が重要なんだがね。
この記事だと軽くスルーしているけど。

関数型言語使っていると狂ったように直交性上げようとするよな。
0696デフォルトの名無しさん2007/05/18(金) 23:06:50
>>694
rubyはハッカーコミュにも人気が高いし、これから伸びていくということは
容易に予想出来るのにね。他の言語なんて気にせずに我が道いけよって思う
よ。ironRuby/jRubyの出現で本家との群雄割拠の時代が来るかもしれないが。
MS/Sunは本家を喰っちゃうあるいは、Matzの一本釣りを狙っててもおかしく
無いよ.

自分たちの良さを自分たちで伸ばすという方に何故目を向けないのかよくわ
からんよ.他言語を蔑ませたところで良さを伸ばす事は出来ないんだからね。
RoRの作者とtwitterの作者の間でグダグダ言い出してたら、他の方がその原
因になるプログラムを作って解決させたが、その「他の方」をもっと見習っ
た方がいいね。このスレの幾人かの人たちはね.
0697デフォルトの名無しさん2007/05/18(金) 23:14:53
本当はね。日本でgoogleに対抗しようとする会社ができるとしたら、日本の
rubyコミュニティはかなり大切なんだよ。googleに対抗する会社を作ろうと
したときに足りないのは、自動化の技術(=AI関係)になってくる。
そこを完全に押さえてるから、googleの影響力強い。発想をそのまま作れる
から。もちろん、みんなが右向けば右を向く日本人の特徴を考えれば、先を
行く発想を生かせない危険があるけど。このスレと同じで、違った事に対し
て非難して何の中身もないって奴が大半だから.
0698デフォルトの名無しさん2007/05/18(金) 23:23:47
>>697
おでAIが足りないからおばえのいっでるこどはんぶんもわがんねだよ
0699デフォルトの名無しさん2007/05/18(金) 23:27:31
Ruby なんて TOY 言語喜んでいるのは自称ハッカーだけだろ
0700デフォルトの名無しさん2007/05/18(金) 23:35:44
たまたまアクセスしたときにエラーが出てたんで気付いたんだが
このページはRoRで作られているようだ

http://hp.pollan.jp/
0701デフォルトの名無しさん2007/05/19(土) 00:16:07
>>689 バカはお前だよ。CL コミュでもライブラリ不足は長い事問題になってんじゃん。
で、他言語のライブラリを活用しようとかって話でてるじゃん。ILC とか c.l.l とか読んでるんか?
きみのような頭が病気な人が一人いるだけで Lisper としては迷惑なんだよ。ここは Ruby スレだし。

まぁ Lisp 厨を装った荒しなんだろうけど、困ったもんだ…。
0702デフォルトの名無しさん2007/05/19(土) 00:24:50
SBCLで仕事しようとするからだろ
アホか
0703デフォルトの名無しさん2007/05/19(土) 00:25:46
そんな他人を罵るほどの話題でも無いよなあ...
0704デフォルトの名無しさん2007/05/19(土) 00:28:04
まあlispは商用パッケージがあるからな
0705デフォルトの名無しさん2007/05/19(土) 00:36:16
>>704
これとか?
ttp://jp.franz.com/

いろいろ出来るみたいだけどこれ使うと移植性とか最悪になりそう
ttp://jp.franz.com/base/product_acl_spec.html
0706デフォルトの名無しさん2007/05/19(土) 00:38:47
>>704
高いだけあってやたら速いという話は聞く
0707デフォルトの名無しさん2007/05/19(土) 00:46:44
ファイナルファンタジーやクラッシュバンディクーで使っていたとか聞いた
実用的じゃないって事はなさそうだ
0708デフォルトの名無しさん2007/05/19(土) 00:48:40
lisp厨どっかに行ってくれねぇかなぁ
0709デフォルトの名無しさん2007/05/19(土) 01:03:37
>>708
君がいる限り無理
そういう反応を引き出すためなら何でもするよ
0710デフォルトの名無しさん2007/05/19(土) 01:29:24
>>702 救い難いキチガイだな。なんで SBCL だと思ったんだ?妄想?
残念だけど Allegro CL 使ってるっつーの。そんでも Ruby を使うこともある。
そんで敬意は払う。おまえみたいに比較ばっかりで何一つ使いこなせないのが一番タチ悪いよ。
0711デフォルトの名無しさん2007/05/19(土) 01:39:01
>>707
ttp://www.ogis-ri.co.jp/otc/hiroba/others/OORing/interview21.html
漏れは括弧でLispに挫折しただけに
氏の括弧見てないです発言には衝撃を受けますた
0712デフォルトの名無しさん2007/05/19(土) 01:43:47
なんでスレ違いのはなしを延々とひっぱるの?空気よめないの?
まぁ、そんなんだから荒ししかできない残念な人間ができるんだろうけど…
0713デフォルトの名無しさん2007/05/19(土) 01:48:33
JRuby と YARV でスレッド回りがアレなことにならないか心配…。
さっさと使用きめたほうがいくね?鯖用途は JRuby におまかせという
なら連中の意見も聞くべきだろう。
0714デフォルトの名無しさん2007/05/19(土) 02:30:56
>>710は真性のアホだなw
0715デフォルトの名無しさん2007/05/19(土) 02:50:39
YARVには期待していない
0716デフォルトの名無しさん2007/05/19(土) 02:58:24
なんでCで書いたRubyよりJavaで書いたRubyの方が早いのか疑問
Matzやささだはどれだけ拙いコードを書いているのかと
0717デフォルトの名無しさん2007/05/19(土) 03:06:52
2002年の時点で既にこれだから、
今はJavaの方が全然速いよ。
http://sugi.sakura.ne.jp/column/021108a.html
0718デフォルトの名無しさん2007/05/19(土) 06:57:01
>>717
そこのテストソースだけどうちの環境ではCの方が速いのだが他ではどう?
ferora core 4, java 5 でちょっと違いはあるが。
windows java6 vc2005 でもCの方が速い。
0719デフォルトの名無しさん2007/05/19(土) 07:22:29
>>711
開き括弧は意識するけど、閉じ括弧はほとんど気にしないな、俺も。
0720デフォルトの名無しさん2007/05/19(土) 08:35:03
ちょwwww 荒し君 >>714 バカとかしか出なくなwww 小学生かよ。荒らし君涙目?売りは粘着だけか?
つかどっかで半端な知識でも聞きかじってきたんだろうが、Ruby スレで Lisp ネタで論破されるとは
どんだけヘタレなんだよ……Ruby ユーザーかつ Lisp ユーザーみたいな層の存在を考えなかったのか。
0721デフォルトの名無しさん2007/05/19(土) 08:50:01
>>716 JVM と YARV を比較するのは酷ってもんだよ…。
0722デフォルトの名無しさん2007/05/19(土) 08:50:10
うわあ、幼稚な反応。勝負あったな。
0723デフォルトの名無しさん2007/05/19(土) 09:01:57
>>707
クラッシュバンデグーなどに使ったが、保守性最悪だって、書いてあったぞw
ソース失念
0724デフォルトの名無しさん2007/05/19(土) 09:23:32
うぜぇぇぇぇ。
0725デフォルトの名無しさん2007/05/19(土) 09:26:00
>>723
http://www.gamasutra.com/features/20020710/white_01.htm
これかな?
登録しないと見えなくなってしまってるが
0726デフォルトの名無しさん2007/05/19(土) 11:24:06
rubyコンパイラ出ないかなあ。
業務で一億レコード以上のテキストファイル処理に
使いたいんだけど、スピード的に話にならん。
世の中、なかなか自分の都合どおりの
言語ってないもんだね…
0727デフォルトの名無しさん2007/05/19(土) 11:33:27
Rubyでのお行儀よい経験を生かして高速動作可能な言語の習得にチャレンジだ!
Rubyでの経験があれば割と簡単いやマジで

Rubyの前に何をやってたかにもよるとは思うんだけど…
0728デフォルトの名無しさん2007/05/19(土) 11:40:58
プロファイラとって遅いところをCでモジュール書けよ
そういやJVMでそういう言語との連携はどうすんだろ
0729MoonWolf ◆MoonWdLnkQ 2007/05/19(土) 11:55:05
>>726
レコード間での依存関係がないなら数万件毎に分割して
複数台PCで処理させればいいんじゃない?
ただ、分割処理はCで書いたほうがいいかもね。
0730デフォルトの名無しさん2007/05/19(土) 12:01:17
>>726
大量の文字列処理を高速に処理する、ことだけに特化した
言語とかあるのかな?Cとかで頑張るのが最速かな?

(C+STL, Boostとか…あんま良く知らないのに言ってみたいだけ
な自分ですにょ)
0731デフォルトの名無しさん2007/05/19(土) 12:04:49
>>717
んな馬鹿なw
ttp://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=java&lang2=gcc

ちなみにlispよりも遅いぞ
ttp://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=java&lang2=sbcl
0732デフォルトの名無しさん2007/05/19(土) 15:18:38
>>716
>Javaで書いたRuby

この認識が誤りというか曖昧。Ruby VM 自体が Java で書かれている訳ではないから
Java の速さを議論してもあまり意味が無い。Java VM 自体は C++ で書かれているので、
"C で書いた Ruby と C++ で書いた Ruby" という方が実体に近い。
0733デフォルトの名無しさん2007/05/19(土) 15:29:25
今こそ>>726独自の言語を作るときだ!
0734デフォルトの名無しさん2007/05/19(土) 15:35:46
>>732
compile time を無視できるような条件では、ってこと?
0735デフォルトの名無しさん2007/05/19(土) 15:39:03
>>732
JRubyのVMにあたるものはJavaで書いてあるわけじゃないの?
つーか、「JavaがC++で書かれていること」のほうがよっぽどJRubyと無関係だと思うんだが
0736デフォルトの名無しさん2007/05/19(土) 15:45:34
D言語超お勧め
0737デフォルトの名無しさん2007/05/19(土) 15:46:46
> Java VM 自体は C++ で書かれているので、
C++って遅いんだね。
0738デフォルトの名無しさん2007/05/19(土) 15:49:02
VM を書いた言語が律速要因となるというのは常識的な話だと思ってたけど、
Ruby スレの住民は何が理解出来ないのかな?

>>737
何と比べて?
0739デフォルトの名無しさん2007/05/19(土) 15:53:23
> VM を書いた言語が律速要因となるというのは常識的な話
は?
0740デフォルトの名無しさん2007/05/19(土) 15:56:30
常に起動しておけるのなら、JIT コンパイラが優秀なら
JRuby もそれなりの速度は期待できるかもね。
最高にチューニングしたとしたら、C++ のものに敵うとは思わんが。
0741デフォルトの名無しさん2007/05/19(土) 16:02:32
>>739
>Ruby スレの住民は何が理解出来ないのかな?
0742デフォルトの名無しさん2007/05/19(土) 16:16:50
>>726
Lispなら、自分で言語作れるのに・・・
0743デフォルトの名無しさん2007/05/19(土) 16:17:50
よくわからんけど、JRubyって、JavaVMのバイトコードに変換するのではないのですか?
だから、JETとか使ってると、速くなりやすい?
JRuby自体が、JavaVMを使うYARVみたいなものという認識でよいですか?
0744デフォルトの名無しさん2007/05/19(土) 16:32:09
Jナントカは全部ジョークソフトなのでスルーすればよい
メモリを10MB使っていいならJナントカより遅く作るのはかえって難しい
0745デフォルトの名無しさん2007/05/19(土) 16:52:46
なわけねーだろ
0746デフォルトの名無しさん2007/05/19(土) 17:04:04
相変わらず宗教臭いスレだな
0747デフォルトの名無しさん2007/05/19(土) 17:11:13
アセンブラで書いたのが一番速いにきまってるだろ。
つまり、aRubyこそ最強
0748デフォルトの名無しさん2007/05/19(土) 17:14:26
とりあえず俺はJRubyなんて使ったことないし、今後も特に使う予定はないってことだけは確かだ。
0749デフォルトの名無しさん2007/05/19(土) 17:16:14
Ruby 使った事無い奴も居そうじゃね? >>747 とか。
0750デフォルトの名無しさん2007/05/19(土) 17:42:45
CからRubyに暗号モジュールを移植して、念のためJAVAでも書いてあります。
0751デフォルトの名無しさん2007/05/19(土) 17:42:53
こんな糞言語、お前しか使ったことないよ
0752デフォルトの名無しさん2007/05/19(土) 17:45:45
開発者は?
0753デフォルトの名無しさん2007/05/19(土) 17:57:21
>>743
大体そんな感じ。Java で Ruby を書いた訳ではない。
0754デフォルトの名無しさん2007/05/19(土) 18:00:27
>>743 JET って…そりゃなんか速そうだな
■ このスレッドは過去ログ倉庫に格納されています