■掲示板に戻る■ ■過去ログ倉庫めにゅーに戻る■
Rubyでもどうよ
1 名前: ギコRubyist 投稿日: 2000/08/11(金) 18:36
雑誌で連載があったりするがやっぱりまだマイナーなRuby。
つうか2chで流行らせるしかなし。
ま、知ってて損もないだろうから興味のある人はここでギコギコしてね。

プログラマ板のスレ
http://mentai.2ch.net/test/read.cgi?bbs=prog&key=960615378


2 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/11(金) 19:30
どうよと言われると、、、

遠慮しとくわ




3 名前: なりたてRubyist 投稿日: 2000/08/11(金) 19:41
Ruby本を買って、ちょっと読んだだけ。
プログラミング経験は高校時代のN88-BASICのみ。
1からプログラミング(つーかスクリプティング?)を勉強しようと
思ってますので、このスレに期待してます。


4 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/11(金) 21:20
やっぱ型が弱い言語はとっつきにくくてだめだわ。



5 名前: 似非Smalltalker 投稿日: 2000/08/11(金) 22:30
ドキュメント見るのがダルいから、統合環境とGUIのクラスブラウザが欲しい。


6 名前: 名無しさん 投稿日: 2000/08/11(金) 23:56
Rubyistだとか言って、グループへの帰属意識をひけらかしてるのが、
道具としてのRubyが一般へ普及するのを妨げてるんじゃない?


7 名前: ギコRubyist 投稿日: 2000/08/12(土) 01:39
>>2
慎み深いなあ。そんな2さんには言語`J'をお勧めします。

>>3
どの段階にいるかは知りませんが、
irbを使ってRubyのオブジェクトを弄くりまわしてみると感じが掴めるかも。

>>4
キャストしなくて済むのが楽ですー。

>>5
Windows向け統合環境RubyWINが鋭意製作されてます。
クラスブラウザは自分もほしいですね。
一応作ろうという話はあるみたい。

>>6
「グループへの帰属意識」を利用して、
人材を確保しておこうという戦略らしいです。
そろそろコアグループ形成期は終わったとみて、
拡大期に向けた戦略転換が必要なのかも。


8 名前: 4 投稿日: 2000/08/12(土) 15:39
型がないから、メソッドの仕様がわかりにくいんだよね。
キャストしないですむっていう話じゃないの。添付
ライブラリにしてもそうだし、自分で組んだコードにしても
そう。ソースの可読性がわるいといえばいいのかな。

さらに自分で書いたメソッドのエラーチェックをきつくしようと
するとメソッドの仮引数の型チェックができないからコードが
is_a?()だらけになるとかね。



9 名前: 名無しさん 投稿日: 2000/08/13(日) 07:13
なんかこう、全体にただようUNIXバンザイ思想がWindowsメインの
俺にとってはいや〜ん。PerlもそこまではUNIXくさくないさ。

あと、純真なWindowsユーザーにCygwinを強要すんな。


10 名前: >9 投稿日: 2000/08/13(日) 08:06
そんなことは無いと思うけど。Perlは十分Unixクサイよ。
慣れの問題でしょ?


11 名前: >4 投稿日: 2000/08/13(日) 11:56
型付けの強い言語を使いなれた人には、発想の転換が必要ね。
「このメッセージを受け取るオブジェクトの型は何?」とか
考えるんじゃなくて、これはこういうメッセージを受け付け
るオブジェクトなのね、っていう。


12 名前: 4 投稿日: 2000/08/13(日) 21:25
んー、そういう一般論じゃなくて細かい各論をいってたんだけどな。
たとえば、openFile(filename, mode)っていう
メソッドがあるとするよね。で、この情報だけじゃ
メソッドの仕様が読み取りにくいでしょ。もしかしたら
mode = "rb" っていうstringでの指定かもしれないし、
mode = File::O_BINARY | File::O_READ っていうビット列による
指定かもしれないよね。で、結局仕様はコードを読むか
ドキュメントを細かく読むかしないとわからないと。
つまり「『こういうメッセージ』ってのはなんなんですか?」
ってのが読み取りにくいといっているだけ。
まぁ最終的にはドキュメント/ソース読むのはC++/Javaでも変わらない
んだけど、予備知識があるのとないのとでは読みやすさ
が違うよね。



13 名前: 名無しさん 投稿日: 2000/08/14(月) 01:55
型付けはインプリメンタの都合じゃないのかなぁ…


14 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/14(月) 06:07
O_BINARY, O_RDONLLY はどう調べるんじゃ、
ぼけ



15 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/14(月) 12:26
あおるのはやめれ
例が悪いだけだろ。
言わんとすることはわかるよ。


16 名前: 11>4 投稿日: 2000/08/15(火) 07:11
なんか、私の読み違いがあったようです。すんまンソ。


17 名前: 1 投稿日: 2000/08/19(土) 17:54
やっと2chに復帰できた・・・
まともなドキュメントがある場合には型あり/なしどちらだろうが仕様が確認できるからいいとして、
問題はそういったドキュメントのない場合かな。
自分はこうしてますです。
1.引数名がヒントになる(しかしソース書いた人に依存)
2.使い方が間違っていたら、まず例外吐いて終わるから速攻でなおせばいい
インタプリタなので場当たり的な対処でも余りストレスにならないかな。
Rubyはエラーを詳細に報告してくれるので、エラー個所の特定がしやすいし。
個人的には設計のまずさの方がクラスの使いやすさや
ソースの可読性に大きく関与すると思いますね。

ま、とりあえず、Ruby初心者からの質問スレッドにします。
あんまりむつかしいことは質問しないでね・・・



18 名前: 名無しさん 投稿日: 2000/08/20(日) 00:22
質問 >1
Ruby MLの人ですか?


19 名前: 1 投稿日: 2000/08/20(日) 02:22
>18
一応入っているけどROMです。
自分のレベルではついていけない話題が多くて…


20 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/20(日) 08:19
海外で普及しそうだったら使おうと思う。


21 名前: 名無しさん 投稿日: 2000/08/20(日) 09:14
>20
四国では、少なくとも私が使っています。


22 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/20(日) 12:36
ML見てると外人でも熱心なRuby信者っていますねえ。
あちらでもやはりPython信者と言い争ったりしてるみたいすけど。


23 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/20(日) 14:02
Pythonと共に廃れるに一票


24 名前: >23 投稿日: 2000/08/20(日) 14:37
視野の狭いPerlキチ


25 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/20(日) 19:15
RubyユーザってPythonユーザと仲悪いんですか。知らんかった。


26 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/21(月) 01:11
有る言語の信者は別の言語の信者と仲が悪いのは、歴史が証明しているかと・・・


27 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/21(月) 19:25
仲悪いまではいかんけどねぇ。お互いマイナーだし。
共通の敵のPerlがあるし(笑)

どっちもPerlの美しくなさに不満のある人種の使う言語だね。


28 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/21(月) 21:07
Perlは汚いけど書くのは楽なんだよね。
そして、しばしば自分で書いたコードも読みなおせなくなる(笑



29 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/22(火) 00:35
Rubyを使ってる人って、どういう事に使ってるんでしょ?


30 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/22(火) 00:45
今まさに、Perl使いはハンガリアンを導入するベシ〜


31 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/22(火) 01:12
Perlの読みやすさ(読みにくさ)はC並みだと思うが。
…って俺がC風に書いてるだけだったり?


32 名前: 1 投稿日: 2000/08/22(火) 01:49
>29
初めて作ったRubyプログラムはオイラーグラフの検証プログラムでした(笑)
普段はそのときやっている作業に必要な小さなプログラムを書き捨てたり。
これはたいていファイル処理やテキスト処理ですね。
今は2chリーダでも作ろうかと思ってます。

>31
短く楽に書こうとすると汚くなりません?
暗黙的に代入される組込変数を大いに使ってもそう。
Rubyもメソッドチェーンしまくったりすると読みにくいね。
#けれど、書くほうは気持ちよかったりする。


33 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/22(火) 03:44
「容易に読める&確実に動く」がプログラムだと思うんで、
短く楽にって発想がちょっと理解不能。ごめん。

でもヒアドキュメントに@{[]}は楽で汚いと思う。


34 名前: 1 投稿日: 2000/08/22(火) 11:38
>33
自分だけが使う書き捨てプログラムの場合には「短く楽に」、
他人にも使ってもらいたい場合には「可読性と信頼性重視」ですね。
仕事でプログラムしている人間じゃないので、前者が多いですが。

特にCGI分野の公開されているPerlのプログラムって
アドホックで楽で汚く書いたコードが多いと思います。


35 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/22(火) 18:45
そうだね。


36 名前: 名無しさん 投稿日: 2000/08/23(水) 07:16
RubyのML、
[ruby-list:24324] ruby の発展の為に
で始まるスレッド。閉鎖的で笑えました。


37 名前: 1 投稿日: 2000/08/23(水) 15:26
あー別にWinやMacで使ってもらわなくてもいいって発言は頂けなかったなあ。
裾野が広くならなきゃ山も高くはならないのに。
setup.exe一発のスタータパッケージが出てほしいね。
WindowsでRuby推進派としては。



38 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/23(水) 18:17
Rubyのお勉強サイトでオススメありますか?
初心者用とかが良いです。


39 名前: 1 投稿日: 2000/08/23(水) 23:39
このあたりかな。このスレでも質問受け付けて鱒。
http://www.hi-fi-net.com/ruby/cgi/index.htm
http://ns.wisdom.co.jp/~ono/programming/ruby/intro/intro_01.htm

リファレンスは常備すべし
http://www.ruby-lang.org/ja/man-1.4/index.html


40 名前: 名無しさん 投稿日: 2000/08/24(木) 02:11
ところで何でみんなsageてんの?
Python至上主義者に攻撃されるから潜伏してるの?


41 名前: 1 投稿日: 2000/08/24(木) 14:00
どうもさげ癖がついてしまってて。
やっとインストールガイドができた記念上げ。
http://www.ruby-lang.org/ja/install.html




42 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/29(火) 17:08
Rubyでシミュレーションプログラム作ってます。
MLで間抜けな質問をしたやつです。

最初は、C、C++、Perl、FreePascalあたりで書こうと思ってたけど、
使いやすいOOだからRubyを使うことにした。
OOだからごりごり書いてもプログラムが見にくくならないし、
クラス図を書いてからプログラムしてるから仕様がわからなくなることもない。
不満と言ったら実行速度と開発環境かな。


43 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/29(火) 17:13
RubyでWinGUIなコードを吐くコンパイラ作って。


44 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/30(水) 12:15
たぶん攻撃くるとしたらPython狂信者じゃなくてPerl初心者の厨房狂信者とかだろな。


45 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/30(水) 12:41
>44
そんな事を思っていても書いちゃダメなのさー。
Rubyが嫌われる遠因になるのさー。


46 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/08/30(水) 15:39
このスレを見ている限りではRubyは発展しそうにないな。


47 名前: >46 投稿日: 2000/08/30(水) 15:52
MSのCTLにも入ってないしな。
Pythonに差つけられたのは、事実だな。


48 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/01(金) 02:54
Ruby/Tkみたいなのってないんでしたっけ?


49 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/01(金) 14:52
公式ページ見てきたけど、Ruby/Tk あるみたいだよ
GUI作成ならDelphiのVCLを使うAppoloとかも面白そうな感じ
ちょこっと書いただけでForm出てきたんでちょっと感動した。



50 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/01(金) 17:33
有名言語の文法/仕様に対するアンチテーゼとして生まれた言語は広まらない。これ定説。


51 名前: むる 投稿日: 2000/09/01(金) 22:35
are?


52 名前: やっぱり 投稿日: 2000/09/01(金) 23:32
日本ローカルで終わるのかな…

逆にいうと、PerlやCは英語文化圏と相性がいいから広まったんじゃない?


53 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/02(土) 01:33
いいスクリプト書く人が増えれば徐々にはやるんじゃないかな。
Kondara は skkserv.rb が動いてる。



54 名前: 名無しさん@勉強中 投稿日: 2000/09/02(土) 02:33
もーちょい、やさしい本が増えれば良いんだけどなぁ
Ruby本はわりと面白く読めたんだけど、6章,7章は「オレには縁がないな〜」と
思いながら読んでた

手軽&きれいに書けるのは気持ち良いので、入門用の良い本が何冊か出れば
わりとすぐに広がるかもしれないと思う(楽観しすぎ?)


55 名前: >54 投稿日: 2000/09/02(土) 03:10
PerlでいうCGIのような目的対象(日本語変?)ができなければ難しいと思う。


56 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/02(土) 03:58
ライブラリの数がもっと増えれば楽できるからいいな。<他人任せでスマン



57 名前: 1 投稿日: 2000/09/02(土) 03:58
ネット上でのドキュメント整備も始ったので、
入門者にとっては多少は状況がよくなると思います。

CGI用途にも向いているんですが、使えるISPがあまりに少ないですね。
自前でWebサーバ立てている人はeRubyが面白いですよ。
ASPのようなHTML埋め込みスクリプトです。


58 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/02(土) 05:09
わりとよく使われているライブラリの簡単な説明(どんなことができるか、何が必要か、など)がまとめてあるページがあれば
けっこう便利だと思う。ML入ってるんだけど、話題についてけないことが多いんだよね
公式サイトのRAA(Ruby Application Archive)は、カテゴリ別に分けてあるだけだから内容まではよく分かんないんだよね。



59 名前: 58 投稿日: 2000/09/02(土) 05:12
ごめん、ヨコに長くしすぎた
しかも、文章ヘンだし。
もう寝ます


60 名前: 55 投稿日: 2000/09/02(土) 05:15
いや、すでに標準ができてるものに追従するんじゃなくて
まだ標準が決まってない技術でアピールしないと・・・


61 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/02(土) 05:20
perl スクリプトを ruby に変換してくれる ruby スクリプトって
以前はあったと思うんですけど、なくなったんでしょうか?


62 名前: 1 投稿日: 2000/09/02(土) 16:19
>>58
そういうページも作る予定みたい。
今のところは標準ライブラリのリファレンスのみですけど。
作られなかったら私が作ります。その程度ならなんとか。

>>60
とはいってもそこまで画期的なことはそうそうできませんよ。
既存分野で、開発言語をRubyにリプレイスすると開発効率が
あがるってだけでもそこそこのアドバンテージになると思う。
まあ、Rubyの対象は小さなソフトウェアになるから
2時間かかるところが30分という程度かもしれない。

>>61
csl.toba-cmt.ac.jp/~kiri/ruby/tips/tips_p2r.html
RubyはPerlより高級言語なので変換は難しいそうです(笑


63 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/02(土) 18:47
>>62
いや、perlでrubyのインタプリタをつくるのだ。
すげーおそいだろうな。



64 名前: 1 投稿日: 2000/09/02(土) 19:35
>>63
それだったらPerlプログラムをRubyで扱うための
Ruby用拡張ライブラリを作るべきですねー。
そうしたらPerlなどRubyの一オブジェクトと化します(笑
さあPerlのソースをレッツハック!


65 名前: 55 投稿日: 2000/09/02(土) 20:48
>とはいってもそこまで画期的なことはそうそうできませんよ。
>既存分野で、開発言語をRubyにリプレイスすると開発効率が
>あがるってだけでもそこそこのアドバンテージになると思う。

そういった利点だけでは決して広まらないことはすでに歴史が証明している。


66 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/02(土) 21:27
>>64
http://www.freedom.ne.jp/toki/ruby.html
http://www.bekkoame.ne.jp/~yoshidam/perl_ja.txt
こういうのはすでにあるみたいですね、、


67 名前: 58 投稿日: 2000/09/06(水) 04:31
お願いします〜 > 62さん

そういえば、「256倍使う本」の話題がむかし ML で出てたと思うんだけど、
お流れになっちゃったのかな?


68 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/06(水) 21:52
>>64
でも、perlでrubyのインタプリタつくれば、perlしか
使えないプロバイダでもrubyで書いたCGIをじっこうできるから
そっちのほうがrubyの普及にやくだちそうだ。



69 名前: 名無しさん 投稿日: 2000/09/10(日) 23:23
Stringクラスのオブジェクトを、IOクラスのオブジェクトみたく
ストリーム的?に扱う事って出来る?

readとseekが出来て、終端に達したら「EOFナリよ」と教えてくれるようなのが
希望なんだけど。


70 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/11(月) 16:05
自分で希望通りのものを書きましょう。そしてできたら
公開してください。
でも、その程度ならすぐできそう。ruby-listにでも投げ
ればきっとすぐに返ってくるでしょう。


71 名前: 1 投稿日: 2000/09/12(火) 04:21
>>68
あぅ。確かに。
誰か作ってくれませんかね。他力本願。

>>69
Stringのサブクラス作るのはいかが?
読み込み位置のポインタをインスタンス変数として持つような。


72 名前: 1 投稿日: 2000/09/12(火) 05:08
>>69
ruby-listから参考までに。
やっぱサブクラスよりラッパークラスが安全ですね。
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/917


73 名前: 名無しさん 投稿日: 2000/09/19(火) 12:27
ruby で 数字の文字列と整数を同じように扱うにはどうすればよいでしょうか?いちいち String か Fixnum かを判定してから "119".to_i とか 119.id2name とかするのは面倒くさいのですが、、



74 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/20(水) 01:28
>>73
数字の文字列オブジェクトと整数オブジェクトを一緒くたに扱う前に、
どちらか一方に変換しておけばいいと思いますが?


75 名前: 名無しさん 投稿日: 2000/09/20(水) 21:17
Ruby 本の p.p.367 にあるように、eval を使えばよさそうです。


76 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/21(木) 01:34
メソッドの戻り値を配列かスカラーか呼び出し元により変更する方法はありますか?
Perl でいうところの wantarray みたいなやつです。



77 名前: 名無しさん 投稿日: 2000/09/21(木) 01:36
1.6.0って1.4.6と比べて、主にどう変わったの?
クラス変数を導入したのとバグフィックス?


78 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/21(木) 03:27
perl で、
sprintf "%.02d%.02d%.02d %.02d%.02d%.02d", reverse(@t);
というふうにやるのを ruby ではどうすればよいでしょうか。
sprintf "%.02d%.02d%.02d %.02d%.02d%.02d", t[5], t[4], t[3], t[2], t[1], t[0];
だと、配列の数が増えてくるとめんどくさいし、t.reverse を表示したい場合もきびしいです。



79 名前: 1 投稿日: 2000/09/21(木) 04:42
>>76
Rubyにスカラーってないんですけど。
PerlはCGIいじるくらいにしか触ったことがないので
具体例を示してもらえるとありがたいです。

>>77
変更点一覧
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/24985

>>78
t = [1, 2, 3, 4, 5, 6]
rt = sprintf "%.02d%.02d%.02d %.02d%.02d%.02d", *t.reverse
print rt #=>060504 030201
というような話かな?


80 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/21(木) 05:17
>>79
すいません、String クラスか Array クラスか、でした。
tmp = ""
tmp = method(val)
のときは tmp = first + "-" + last という文字列を、
tmp = []
tmp = method(val)
のときは tmp = [first, last] という配列を返すようなやつです。



81 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/21(木) 05:38
>>79 さん
!!それでできました!
でも実は
sprintf("%.02d%.02d%.02d %.02d%.02d%.02d%s", *t.reverse, if @gmt then " GMT" else "" end)
のようにもうひとつ引数を増やしたいんです。このままだと、
parse error (SyntaxError)
となります。と思ったら、
sprintf("%.02d%.02d%.02d %.02d%.02d%.02d%s", *t.reverse.push(if @gmt then " GMT" else "" end))
こうすればできました。でもなんか変則的だなぁ。
こういうのは ruby スクリプトとしてまっとうなものなんでしょうか?



82 名前: 77 投稿日: 2000/09/21(木) 05:55
>79
結構変更点あるんだねぇ。
リストからだけじゃよく分かんない項目も結構有るけど、Linux Magazine 11月号
発売以前に誰かが解説文書を出してくれる事を期待してみる。

#マニュアル更新に合わせて、FAQも更新して欲しいな。あれは結構役に立つし。


83 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/21(木) 11:30
ruby の socket は、close し忘れたときも、確実に close してくれるのでしょうか?
ruby 本の p.p.386 にあるように、ensure やファイナライザを用いて、確実に close されるようにする必要はあるのでしょうか?



84 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/21(木) 16:43
ruby スクリプト内に POD 形式のマニュアルを埋め込むことは
なされていますか?



85 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/21(木) 18:25
perl での
$c->$command();
みたいなことをrubyではどうすればよいでしょうか?
eval("#{command}")
で一瞬できたかに見えたんですが、commandで呼び出されるメソッドはevalによりすでにコンパイルされているからか
あとからそのメソッドで使われるインスタンス変数を変更できません。(オブジェクト生成時の値が使われるようです)
何かうまい方法はないでしょうか?



86 名前: 85 投稿日: 2000/09/21(木) 21:29
勘違いでした。すみません、、


87 名前: 1 投稿日: 2000/09/21(木) 22:56
>>80
そーゆー器用なことはできないと思います、たぶん。
(レシーバにコンテキストを表現するインスタンス変数でも持たせればできますが)
受け取り側で加工するのが無難かと。
def foo; return "aaa", "bbb"; end
tmp = []
tmp =
case tmp
when String; first, last = foo; first + "-" + last
when Array; foo; end
p tmp #=>["aaa", "bbb"]

>>81
動くならまっとうなんじゃないでしょうか :-p
if文まるごと引数に入れると長くなるので、
sprintf("%.02d%.02d%.02d %.02d%.02d%.02d%s", *t.reverse.push(@gmt ? " GMT" : ""))
とすると良いかも。


88 名前: 1 投稿日: 2000/09/21(木) 23:44
>>82
MLトピックも更新してほしいですねえ。

>>83
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/2325
socket.c覗いたけれど分からなかった。鬱・・・

>>84
いいえ。RDを埋め込みますです。
http://www2.pos.to/~tosh/ruby/rdtool/ja/
http://www.oishi.info.waseda.ac.jp/~takashi/rubikitch/rd-intro.html


89 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/22(金) 00:00
nntp クライアントのライブラリはけっこう前から多くの人が作っているようですが、
手持ちの ruby 1.4.3 にはどれも入ってないし、www.ruby-lang.orgのアーカイブのところにもないようです。なんででしょうか?
net/smtp.rb, smtpclient.rb, net/pop.rb, popclient.rb, net/imap.rb とかはあるのに。ひいきだ。



90 名前: 80=81=83=84=85=86=89 投稿日: 2000/09/22(金) 01:00
1 さん、どうもありがとうございます。なるほど、とてもよくわかりました。

ところで、
http://blade.nagaokaut.ac.jp/cgi-bin/vframe.rb/~poffice/mail/ruby-list/13663?13545-23715
に書いてあるような、Web版NNTPクライアントってどなたか作ってるのでしょうか?
perlで途中まで作ってあるんですけど、同じ物を作ってもあれなんでちょっとお聞きしたいんですが、、



91 名前: 68 投稿日: 2000/09/22(金) 05:39
>>90
サーバからlistしてxoverしてarticleでひっぱってくる
とこまではrubyで作った。あとは未読管理とユーザ
インターフェース。でも、rubyってtimeout処理
するのにスレッド使わないとできないから遅くなり過ぎた
のと、スレッド間の記事の受渡しにキューを使ったら,
受取側でせっせとキューを空にしているのにもかかわらず
rubyのプロセスサイズがガンガン上がっていくのに
我慢できずに放り出した。もうちょっとGCのタイミング
をなんとかしてほしいなぁ。




92 名前: 68 投稿日: 2000/09/22(金) 05:45
そういえば,NNTPってサーバとクライアントのやり取りでの
時間的な冗長度が高いから、スレッド分けて並列化すると
結構速くなるもんなんだけど、rubyの場合はOSレベルの
スレッドじゃなくて一つのインタプリタ中の実行単位が
分割されるだけだから必ずしも速くならないってのも
ちょっと感覚が違った。実測してもそうだったし。
それともライブラリ中のどこかにI/O周りでもブロックする
メソッドがあって組み方次第で速くなるのかな??



93 名前: 90 投稿日: 2000/09/22(金) 08:34
listとかxoverとかarticleはpostのあとかnewnewsで新しい投稿があるときだけするようにして、ほかの時はローカルに保存したキャッシュから読むようにするとだいぶはやくなりましたよ。30件同時に表示するんですが、10秒かかっていたのが1秒以下になりました。
今作ってるのは、スレッド(これはスレッドプログラミングのことじゃなくてBBSでいうところのもの)の生成もpostの時にやろうと思うのですが、問題はエクスパイアやほかのサーバでキャンセルされた記事をどうしようかって所ですね。



94 名前: 68 投稿日: 2000/09/22(金) 21:20
あ、そういうNNTP`クライアントを組む上でのロジック的な
「遅い」じゃなくて、rubyの特性として
(1)スレッドのたち上げが続くと遅い。
(2)マルチスレッドにしても速くなるわけではない。
ってのがいいたかったん。ようするにrubyに対する
愚痴ね。




95 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/22(金) 22:06
>(2)マルチスレッドにしても速くなるわけではない。
こ、これってrubyのせい?


96 名前: 68 投稿日: 2000/09/22(金) 22:25
>95
だからぁ〜、「rubyの場合はOSレベルのスレッド
じゃなくて一つのインタプリタ中の実行単位が
分割されるだけだから必ずしも速くならない」
って書いているのに。rubyのマルチスレッドって
並列化によるスピードアップの使う物じゃなくて
どちらかというと、性質として並列性のあるアル
ゴリズムをすっきりと書くためだよね。そういう
言語としての指向というかそういうものを実感
しているわけさ。



97 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/23(土) 02:30
>>96
並列化すればなんでもかんでも速くなる訳じゃないし、
I/O待ちとかのdead timeを抑える意味ではユーザレベル
スレッドでもそれなりに有効だとは思うけどな。
どうスレッド分けするかでも違ってくるし。
まぁ96はその辺わかって書いてるのかもしれないけど。

でもメモリ喰いまくるってのはどうしようもないか。



98 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/09/28(木) 19:04
お世話になっております。ちょっと後方参照のことでお聞きしたいのですが、
line.gsub!(/<([\w\-]+([\.\$%][\w\-]+)+@[\w\-]+(\.[\w\-]+)+)>/, %Q( 名無しさん@お腹いっぱい。 投稿日: 2000/09/29(金) 11:50
http://www.ascii.co.jp/books/detail/4-7561/4-7561-3603-6.html

256シリーズって読んだことないけど。


100 名前: ぎこるび 投稿日: 2000/09/29(金) 18:12
>98
ブロックを使えばよいと思ふ。
line.gsub!(パターン){式}
ブロックの中では$digit が使えるので
#{CGI::escape($1)}とすればおそらくお望みの結果が得られるはずです。

>>99
ActiveScriptRubyのatron氏が筆者ですか。
なんともマニアクな話になりそう。
http://www.geocities.co.jp/SiliconValley-PaloAlto/9251/ruby/


101 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/01(日) 07:42
直前の評価値を取得する変数か関数はないですか?
例えば
a = 1
a = a + 3
p a

1
@+3
p @
の様に書けると少し嬉しいのですが



102 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/01(日) 12:23
C レベルでも無いと思う。
つーか、そんな読み難い書き方して何か嬉しいのか…



103 名前: 101 投稿日: 2000/10/01(日) 13:37
電卓として使う場合や使い捨てスクリプト書くときに
単純にタイプ量を減らしたいだけなんです
Mathematicaにあって結構便利だったので

def foo
1
end
とかやったときどこかに1が保持されてるはずなんだけどな〜



104 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/01(日) 14:19
>>101
どっかで見たような無いような文法だな...
GNU dcとかそうだっけ?


105 名前: ぎこるび 投稿日: 2000/10/01(日) 14:27
>>103
Raccを使ってプリプロセサを作るといいと思います。
http://www1.u-netsurf.ne.jp/~brew/mine/ja/softica/racc.html


106 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/01(日) 23:37
>Raccを使ってプリプロセサを作るといいと思います。
なんだか話が大げさになってきました。
直前の評価値を参照する目的はちょっとだけタイピングの手間を省きたいというだけです。
yacc覚えてracc覚えてプリプロセッサ作って毎回マクロ置換して、
というのは手間がかかりすぎです。

標準的なRubyの文法の範囲内でできなければあきらめて
普通に書くしかないなという程度の話なのです。



107 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/01(日) 23:58
5時間もねばりながら吐く文面ではないとおもうが>106


108 名前: ぎこるび 投稿日: 2000/10/02(月) 00:41
>>106
良く考えたら、わざわざRacc使わなくても自分で適当なフィルタ作ればいいですね。
数値が単独で出現したら代入文に書き換える。
@が現れたら直前に現れたレシーバ(オブジェクト)に置き換える。
適当な仕様を決めて、フィルタをかけやすい書き方(一々改行するなど)
にすればそれほど難しくないかと。
置換はシェルスクリプト作ればコマンド一つで変換・実行ですし。


109 名前: このスレみるたびに 投稿日: 2000/10/02(月) 16:57
『Rubyなんてどうでもいいよ』なんて思う


110 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/02(月) 23:40
>109
インタプリタのソース読んでみたいと思いません?
lisp以外であんだけスラスラ書ける言語も他にないよ。



111 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/03(火) 01:36
>>108
フィルタですか。なるほど。
でも言語仕様の拡張はやっぱり抵抗があるので、
試しにIRBを改造してみようかなと思います。
ありがとうございました。


112 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/03(火) 03:11
>>110
みたい!どこどこ?


113 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/06(金) 10:26
オブジェクト指向とは、フレームワークやクラスライブラリ
作る人(グル)がしっかりしてれば、一般のプログラマはタコ
でもよいという長年の知恵から産まれた。

それで、グルとタコの関係をどうするかが言語の特色になって
んだよね。

C++はグルが全部仕切れば、タコがどれだけバカなことやっても
大丈夫。ただ、グルに要求されるレベルがとてつもなく高い。
それと、よそから部品を買ってこようとすると、グルの思想が
コンフリクトしておかしくなる。(シングルグル言語)

Javaは部品を外から買ってきても、システム全体の品質が落ちない。
(マルチグル言語)。だが、グルがどれだけ凄くても、性能や生産性
が一定以上にならない(一定以下にもならないが・・・)

Rubyは、マルチグル言語でありながら、グルが凄ければその凄さの
分だけ凄いシステムができる。グルの創造性を殺さず、複数の教え
が混在できる。

XPのKent Beckのようなグルがなだれこんでくるから、これから
Rubyはブレークするよ。



114 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/06(金) 10:48
>>113
これは比較的規模世大きいプロジェクトについて言っているのだと思いますが、
「Rubyは大規模開発には向かない。かもしれない」というようなことを
以前まつもとゆきひろさんが言っていました。

私も型を明示しないという仕様は一定以上の規模になると
デメリットに変わりうるのではないかと懸念しています。

特にメソッドの戻り値についてはコードをみても何を返しているのか
よくわからなくなる場合が多いです(引数は識別子の名前で何となく判別可能)。
・何の型のインスタンスを返しているのか
・何も返したくないのか(nilで潰すのを忘れている)
・本当に戻り値としてnilを返したいのか

完全なドキュメントを用意すればいいというだけのことかもしれませんが...

>XPのKent Beckのようなグルがなだれこんでくるから、
これ本当ですか?ruby-talkにでてるのかな。
ruby unitもさらに発展しそうですね。



115 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/06(金) 10:58
>特にメソッドの戻り値についてはコードをみても何を返しているのか
>よくわからなくなる場合が多いです
型の無い言語はみんなそうですよね。
そして、欠点が利点と表裏一体なのも、すべての言語で共通、とか。


116 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/06(金) 11:33
>> 113

Javaはマルチグルというより、
Sunがグルになって全部仕切るから複数の部品(世界観)が共存できる
ということではないでしょうか?

Sunの世界で限定されるのは嫌だけど、
これからのJavaはIBMが仕切ってしまうのではないかと思います。
IBMの掌ならば、充分踊りがいがありますから、それで充分だと思います。



117 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/06(金) 12:03
>> 114

型つきの言語がコンパイルでやることを、単体テストでやろうと
いうのがXP。だから、XPではソースをちょっとでもいじったら、
全モジュールの単体テストをすることになってるみたいです。

静的な型を持つ言語の美しさはわかるけど、Eiffelが流行らなか
ったことを考えると、やっぱりXPの考え方の方が現実的なのでは?

"I love it. Conceptually it is really clean, and sweet."
--Kent Beck, author of Extreme Programming

http://cseng.aw.com/bookdetail.qry?ISBN=0-201-71089-7



118 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/06(金) 12:21
XPとunitの違いの説明を求む!
先日unit覚えたばっかなのに乗り換えねばならんのか(^^;;


119 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/07(土) 16:29
>>118

まだXPもRubyも勉強中なので、違っているかもしれませんが、
unit testを重視して、先にテストルーチンを書いたり修正のたびに
必ずunit testを実施するというは、XPの一番基礎となる考え方だと
思います。

そして、JUnitなどのunit testライブラリはそれをサポートする
ものじゃないでしょうか。だから、「unitからXPにのりかえる」
必要は全然なくて、unitを使っているならすでにXPの道を一歩
踏みだしたと言っていいのではないでしょうか?

http://www.esm.co.jp/eXtremeProgramming/IsDesignDead.html

ここにある「できることを増やすXPの実践」という所に、unitと
XPの関係というか、unitがXPの中でどういう位置にあるかがよく
わかります。



120 名前: 119 投稿日: 2000/10/07(土) 16:35
ここにある「できることを増やすXPの実践」という所に
→ここにある「できることを増やすXPの実践」という所を読むと

でした。



121 名前: 118 投稿日: 2000/10/09(月) 14:41
>>119さん情報ありがとうございます
いきなり「ソフトウェア設計など消えうせろ」から始まって
びっくりしましたが(別に肯定しているわけではありませんが)、
かなり興味を持ちました。

XPを勉強中ということなのですが、何を読まれてるのでしょうか?
参考文献、サイトなどがあったら教えてください。



122 名前: 119 投稿日: 2000/10/09(月) 23:00
>>121
私も最初はビックリしました。でも、よく読むと結構まじめと言うか、
普通のビジネスソフト(受託開発)で使われてるみたいです。

日本語の情報はここにあります。
http://www.esm.co.jp/eXtremeProgramming/



123 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/11(水) 19:15
age




124 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/15(日) 15:35
http://www.ohmsha.co.jp/data/books/contents/4-274-06385-2.htm


125 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/15(日) 22:11
まつもとさん、ruby-talk で let の導入を許容するような発言あり
ましたね。ruby の中で唯一スコープ作れないのだけが耐えられなか
ったから、もし implement してくれたら嬉しいなあ。構文はどうす
るのかな? こんな感じ?

a = 1
p a      #=> 1
let(a) do |a|
 a = 2
 p a     #=> 2
end
p a      #=> 1



126 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/15(日) 22:37
>>124
初版に飛びつくか、四版あたりまで待つか、それが問題だ。


127 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/15(日) 23:27
perlからrubyへの変換の話題がありましたが、rubyからperlに変換するやつはありませんか?
ruby>Cがあるんだからと探しても見つかりません・・・教えてください。

「256倍」買いました。MSruby版かぁ。でも、なかなかおもしろかったですよ。
でも、ユーザーガイドから既出2冊の本の間の、もっとやさしい本がほしいな。


128 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/16(月) 21:02
最近のruby-talkの盛り上がりはどうよ?
良さをわかってくれてる海外の隠れファン密かにかなり増加し
てると思うぞ。



129 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/17(火) 00:11
net/http.rbのget2ってネーミングはなんとかならんかなぁ。
なんどか名前変えようという話が出てたと思うんだけど、ふむぅ。



130 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/17(火) 00:25
>>129
net/http は全体的に「この作りどうにかならんかなあ」って感じで
すね。作者のAさんには悪いけど、、、使いにくいから自前で一通り
作りなおしちゃった。



131 名前: 129 投稿日: 2000/10/17(火) 00:43
>>130
実はおれももう自前でやってます。みんなそんな感じで車輪の再発明やってんだろな。
perlを蹴落とすんだったら、標準ライブラリ磨き上げるのが鍵だとおもうんだけど。
ああいうコミュニティベース(というか悪くいうと慣れ合い)で開発していると
なんか文句つけにくいんですね。



132 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/17(火) 02:04
>>131
やっぱそうですよね。
でも 129 はちょっと言い過ぎだったかな。モジュール以前に HTTP の仕様
自体適当すぎるのが問題なんですよね。あの仕様では皆が満足するようなイ
ンタフェースに仕上げるのは無理があるような気もします。

129 見てたらゴメンナサイ>Aさん



133 名前: 132 投稿日: 2000/10/17(火) 02:05
129 => 130



134 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/17(火) 04:56
その辺の理由は書かずに「俺も作ってみたんだけどどう?」って言って
出せばいいんじゃないの?
案外本人も「メンテする時間ないし、誰かもっといい奴で置き換えて
くんないかなぁ」なんて思ってるかもしれないし。
思ってないかもしれないけどね。


135 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/17(火) 09:18
>>131
>perlを蹴落とすんだったら
おー、すげー鼻息。もっと気楽にいこうや。
って言っている俺はPerl使い。つーかスパイ?


136 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/17(火) 10:49
http://www.forest.impress.co.jp/article/2000/10/16/kaaedit.html
Rubyでもこんなのほしい。

http://www.forest.impress.co.jp/article/2000/10/16/phantom.html
Rubyでもこんなのほしい〜。




137 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/17(火) 10:49
以前どっかで出てた気がするけど、Here Document のインデント
機能欲しいなあ。まつもとさんは自前の関数書けばいいだろって
言ってたけど。

loop do
 foo <<+"FOO"
  easy!
  elegant!
  fun!
 FOO
end

つー感じ?



138 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/17(火) 17:05
local-variable のスレッド、まつもとさんなかなか折れないね ^^;
ruby-list の過去ログで「哲学」とまで言い切ってたから、やっぱり
かなりのこだわりがあるのかな? ruby-talk で発言してない人達も
含めると、変更に賛成の人の方がかなり多そうだけど。

ローカル変数が生成されない繰り返しは for や while やらの制御構
造だけで充分じゃないのかなあ。非互換の変更をするならまだ普及し
始めの今のうちだからなんとか…。



139 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/17(火) 23:48
>>136
Rubyの開発はVisual Studioに統合してやってるよ。
SourceSafeも使えるのですごい楽。

あとWZ Editorの見出しを以下のように設定すると
簡易クラスブラウザになるよ。
[見出し1] ^class|module
[見出し2] ^\s*(def.*)



140 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/18(水) 15:13
>>139
Rubyでプログラミングするので一番いいのはEmacsでしょうね.
WindowsならMeadowか.
でも,Windowsユーザが使うには厳しいとこがあるかも.
まだxyzzyならWindowsとの親和性は高いけど,やっぱWindowsの
キーバインディングとは似てもにつかない.
Windows風に変更できるけど,変更するとxyzzyの便利さが損なわれる.

WindowsでEmacsみたいなにハッカー御用達のエディターってないのかな.
できればオープンソースの.


141 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/19(木) 01:52
http://www.p1d.com/rku/
Ruby数え歌だってさ。


142 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/20(金) 14:58
age



143 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/23(月) 03:35
Emacsのruby-modeは $' なんてので色づけミスするな。
直そうと思ってもlispはさっぱり読めないし。


144 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/25(水) 14:07
オーム社のRuby本、今日発売?
http://www.ohmsha.co.jp/data/books/contents/4-274-06385-2.htm
紀伊國屋(Web)で出てきたのだが・・・。


145 名前: ぎこるび 投稿日: 2000/10/25(水) 16:21
>>144
勢い余って三省堂でネット注文しました。
学校の書店においてなかったし(256倍はあったのに)。
MLではまだ話題になっていないけれど出来はどうなのかな。



146 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/25(水) 23:55
誰か説明したれよ
http://piza.2ch.net/test/read.cgi?bbs=tech&key=968328471&st=82&to=82&nofirst=true



147 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/26(木) 16:15
>>144
買った人、感想・レビューをお願いします。
Ruby本(まつもとさんが書いたやつ)は持ってるんだけど、
まだ途中までしか読んでない(わら
これ1冊あれば、十分かな。


148 名前: >147 投稿日: 2000/10/26(木) 20:42
買ったよ。
とりあえず持ちやすい読みやすい。
あとネットワークに一章割いてるね。

Ruby本読んじゃった人には必要ないかも。
でもまあお布施って事で。



149 名前: 148 投稿日: 2000/10/26(木) 20:47
まったくのプログラミング初心者が
この本読んで立派なObjective Rubyistに
なれるかどうか興味あるね。

誰か実験台にならないかな?


150 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/27(金) 00:53
パール、パイソンに加えて
スクリプト言語を3個も覚えるのは時間の無駄だろうか。


151 名前: スクリプトヲタ 投稿日: 2000/10/27(金) 20:26
>150
PythonのOOPとPerl臭さ(なんじゃそら)が理解できていれば、
Rubyはすぐ覚えられますよ。

ただ用途が完全にかぶってるので使い分ける意味がないかも...



152 名前: >147 投稿日: 2000/10/27(金) 21:46
買いました。300ページ以上もあるのにこの内容なら安いので買い!でせう。
でも全くのプログラミング初心者だとどうかな?
私はOOPに一度挫折して(藁 この本を見たから、割とすんなり
頭に入ったけど。名著には違いない。


153 名前: 148 投稿日: 2000/10/28(土) 13:19
早くも「正誤表」サイトが立ち上がっちゃったぞ。
http://www.ruby-lang.org/~sinara/nyumon/errata.html

こういった書籍の内容ってオフィシャルサイトで公開できない
ものなのかな?全員で目を通せばそれだけ誤植も発見しやすいし、
ruby hackerでなくても簡単に参加できるのに。

書籍の売り上げもそれほど減るとは思えないんだけどな。


154 名前: anon 投稿日: 2000/10/28(土) 17:10
>>153 FYI. 8キヒ、エ、ruby-list ML、ヌココニノシヤ、クウォハ鄂ク、キ、ニ、、、ソ、隍ヲ、ヌ、ケ。」
O'Reilly Japan、ホヒワ、筅ス、ホチー、ヒココニノシヤ、ハ鄂ク、キ、ニ、、、゙、キ、ソ。」
、ソ、タ、キML、タ、ネ。「サイイテ、キ、ニ、、、ソヘ、ォ、゙、皃ヒクウォ・・ー、クォ、ニ、、、ソヘ、キ、ォオ、、ナ、ォ、ハ、、、ホ、ヌ。「、ス、ウ、マイチア、ホヘセテマ、「、熙ヌ、キ、遉ヲ、ヘ。」
、ウ、ヲ、、、ヲキタ゚ナェ、ハーユクォ、マ。「、サ、テ、ォ、ッ、ハ、ホ、ヌML、ヒナ熙イ、ニカオ、ィ、ニ、「、イ、ニ、マ、マ、、、ォ、ャ。ゥ>153


155 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/28(土) 17:17
FYI. 8月末ごろruby-list MLで査読者を公開募集していたようです。
O'Reilly Japanの本もその前に査読者を募集していました。
ただしMLだと、参加している人かまめに公開ログを見ている
人しか気づかないので、そこは改善の余地ありでしょうね。
こういう建設的な意見は、せっかくなのでMLに投げて教えてあ
げてははいかが?>153



156 名前: 148,153 投稿日: 2000/10/28(土) 18:29
>>155
僕もMLチェックしてるけど、査読の公開募集はちょっと違うんだよね。
結局人数が限られるし、いちいち名乗らないと参加できないし。
MLで無名な人(特に初心者)ってどのくらい参加したのかな?

最近オープンソース関連の書籍がそのままwebで
公開されるってのが増えてきているのだけど、
Rubyコミュニティにその先頭を行って欲しいなと思わないでもない。

それに必要な情報に金を払うのは吝かではないのだけど、
今時技術文書を紙のみで提供して、オンライン版がないってのは
どうにも不便なんだよね。せめてCDには入れて欲しかった。

>せっかくなのでMLに投げて教えてあげてははいかが?
そりゃだめだよ。身元割れちゃうじゃん。
とてもじゃないが2ちゃねらーであることを
カミングアウトする勇気はない(藁 <-コーユーノカクカラダメナダヨナ <-オマエモナー



157 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/28(土) 23:47
るびー入門OH!YEAH〜
http://www.ohmsha.co.jp/data/books/contents/4-274-06385-2.htm



158 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/29(日) 02:22
・・・・

るびー入門書発売、著者まつもとのおじちゃん

てな具合に、もう一度言ってみる(寂)


159 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/29(日) 02:30
rubyを普及させたいなら、英語で海外に向けてどんどん情報を
出さないとだめだと思う。


160 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/29(日) 09:24
>>159
ちゅうがくせいかな?



161 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/30(月) 19:42
もっとlispに近づけてくれえっっ!!



162 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/30(月) 21:07
括弧の省略機能 萌え〜!!


163 名前: >161 投稿日: 2000/10/30(月) 21:51
emacsのような素晴らしいhacker's toolを生み出したLispとRubyを
一緒にしない方がいいですよ。


164 名前: >163 投稿日: 2000/10/30(月) 23:16
パーラーは別スレ作ってやってね


165 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/30(月) 23:50
括弧省略ってよみづらくない?


166 名前: >165 投稿日: 2000/10/31(火) 00:02
嬉しがって使いすぎると確かに読みづらいね。
僕は式に占める括弧の文字数の割合が
無視できないくらい大きくなったときに使うことにしてる。

p a
とかね:-)



167 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/31(火) 00:18
Ruby で C の for 文にあたるものはないのですか?


168 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/31(火) 00:23
Ruby で C の for 文にあたるものは無いのですか?


169 名前: >167 投稿日: 2000/10/31(火) 00:40
Rubyのfor文じゃダメか?
whileでっ代用する手もあるぞ。


170 名前: ぎこるび 投稿日: 2000/10/31(火) 02:25
>>167
for(i=0; i<=10; i++) printf("%d\n", i);
と以下が大体等価です。

for i in 0..10; print "#{i}\n" end
i=0; while i<=10; print "#{i}\n";i+=1 end
-----
0.step(10,1){|i| print "#{i}\n"}
0.upto(10){|i| print "#{i}\n"}
-----
(0..10).each{|i| print "#{i}\n"}


171 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/31(火) 02:34
Windowsでの普及をおろそかにしてる時点でダメダメだな。
Rubyは流行らないよ。


172 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/31(火) 03:13
perlやJavaはWindowsで普及してるのか・・・


173 名前: ぎこるび 投稿日: 2000/10/31(火) 03:19
Windows版エントリーパッケージ、ActiveScriptRuby、
Win32OLE、DirectDraw for Ruby 、Apollo、VisualuRuby。
それなりにコマはそろっているんですけどね。
ドキュメント書きまくって宣伝しまくるしかないのかな。。。


174 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/31(火) 05:25
Rubyは悪い言語じゃないけど、perlとかぶってるから意味ないね。
まあ、日本人がメンテしてるから、要望とか反映しやすいかもね。
diamondに期待(っていうかあんのか?

ちなみにaquamarineはオレの誕生石だ。



175 名前: 167 投稿日: 2000/10/31(火) 06:04
なくてもそれほど不便ではないけど、Cのfor文にあたるものは
何でないんだろ?あると便利だと思うけどな。別にいいけど。
レスどうも。


176 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/31(火) 06:37
awk2perlみたいに、
perl2rubyがあれば普及するよ。
無いの?げぇー。



177 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/31(火) 07:28
>171
rubyがメジャーになったら、きっとMSの匿名さんが移植してくれるよ。


178 名前: >176 投稿日: 2000/10/31(火) 09:06
あったような気がするけど?


179 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/31(火) 20:43
>>174
perlと被ってねえだろ。
rubyがカバーできる領域の方がかなり広いと思うが。



180 名前: >179 投稿日: 2000/10/31(火) 20:45
ほぼ100%被ってるでしょ。
綺麗か、汚いかの違いだけ。



181 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/10/31(火) 21:42
rubyの方がperlより高速です


182 名前: 176 投稿日: 2000/10/31(火) 23:05
>>178
どこに?



183 名前: ぎこるび 投稿日: 2000/10/31(火) 23:25
>>175
たぶんOO的でないからでしょうね。

>>176
んじゃあ、ここは一つ作ってください(笑)

>>181
一般的には Perl>Ruby>Python の順に速いみたいです。


184 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/01(水) 00:03
Ruby で無限ループはどのように書くのでしょうか。
loop の使い方を教えて下さい。


185 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/01(水) 00:21
>>167
Cのfor文かぁ。多分必要ないんじゃないかな。
しばらくrubuでイテレータ使ってコード書いてて、そのあと
Cに戻ってコード書いたらfor文使った繰り返しがすげー煩わしくなったよ。
とくにfor(int i = 0; i < length; i++)みたいなのはね。
で、Cのfor文の用途からこういう定形的な繰り返しの用途を
イテレータに任せたら、あとの用途は別にわざわざ実装するほどのものじゃないでしょ。



186 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/01(水) 00:44
>>180
綺麗か汚いの違い *だけ* っていうけど相当なもんよ。「ほぼ 100%
被ってる」ってどこが…。perl6 がどう進化するのかまだわからない
けど、今のところ perl は「強力な sed/awk」の代わりにしかならな
いよ。規模が膨らんでくるとすぐに目も当てられない状態になる。

# 少なくとも現 perl の適用範囲は python その他に比べてかなりズ
# レてると思う。



187 名前: ぎこるび 投稿日: 2000/11/01(水) 00:51
>>184
無限ループはwhileかloopで行ないます。
while true
 ...
end

loopはブロックをとるメソッドなので、
loop {|var| ...} か loop do |var| ... end です。

どっちも抜ける時はbreakなりraiseなりで抜けてください、


188 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/01(水) 00:52
>>186
>すぐに目も当てられない状態
よくわからないら、もうちっと具体的に言ってくれ。



189 名前: >186 投稿日: 2000/11/01(水) 12:44
どこがどうずれているか説明して。


190 名前: 180>186 投稿日: 2000/11/01(水) 22:09
>188,189
一定以上の規模のプロジェクトでは文法の汚い
perlを使いたくないってだけの事でしょ。
使いたきゃ使ってかまわんよ。

逆に綺麗な文法とOOPを備えたRubyはどうなんだろ。
正直言って、懐疑的なんだよね。

理由は以下の通り。もちろん具体的な根拠はないのだが...
1.開発事例がないこと。
2.コンパイラと比べて速度が遅い・メモリ使用量が多い
(完成間際のパフォーマンスチューニングのコストが高い)
3.統合開発環境などのツールによる支援が受けられない
4.型チェックのないことが不利に働く(unit testがあったとしても)

4.については今実験的にとある分野のapplication frameworkを
作ってるんだけど、想像以上に脳が型によるヒントと
コンパイラの型チェックに依存してしまってるみたいで、
どうもにやりづらい。

# そういえば以前MLでbig project教えろって
# 聞いてた外人さんにはなんて答えたんだろ。



191 名前: >190 投稿日: 2000/11/02(木) 06:46
型チェックは実装者側の都合だろ?昔のメモリが極端に少ない時代ならともかく
今時そういう不自由をユーザに強いるなよ。もちろん、任意選択なら
なお良いが。Cでプログラム覚えた人間はその発想からなかなか抜け出せない
ってのが問題だったりするんだろうな。


192 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/02(木) 07:22
型チェックがあったほうがバグが減りそうだが、どうか。


193 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/02(木) 07:38
http://www.ruby-lang.org/ja/compar.html

これ読んで、多言語に対する尊重の念すら感じられないって
ところに嫌気が差してやめた。
今の所RubyでできてPerlで出来ないってことが見つからないし。


194 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/02(木) 08:48
型チェックは「実装者側の都合」であり,「ユーザにとっての不自由」
だと思っている191はもっと勉強して出直してくるように.
# 例えば米澤・柴山著「モデルと表現」(岩波)の前半など.

ある程度大きなプログラムを組むようになると,プログラマ自身が型
を意識することや,コンパイラによる支援(静的型検査・型推論)は
ものすごく重要.190のいってるのはそういうことでは.

逆に小さなプログラムをちょこっと書くときは邪魔に感じることも多
い.Rubyの用途(Perlの置換え?)を考えれば静的型検査がないのも当
然という気もする.フレームワークなんか作るんならJava使ったほう
がいいんじゃないの? >>190


195 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/02(木) 09:57
実際にRubyを動かしているサイトってどこがあるんでしょう?
個人で掲示板を使っているぐらいしか無いと思いますが。
今更速度やサーバーに対する負荷でPerlより劣るRubyを使う理由が
解りません。
PHPやJavaと言った書きやすく、速度でも優れたWeb系開発言語があ
りますが、Ruby使いの人達は何故Rubyを使いますか?
個人利用という理由ならわかりますが。


196 名前: >195 投稿日: 2000/11/02(木) 10:28
なんとなく。
国産だし。
俺はPerl,Javaだけど。
でも、優れている点もあるらしいよ。
使ったこと無いんで良く知らんが。


197 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/02(木) 10:30
>実際にRubyを動かしているサイトってどこがあるんでしょう?
www.kondara.org ... RuBBS

>これ読んで、多言語に対する尊重の念すら感じられないって
>ところに嫌気が差してやめた。
あ、内心「オレが一番」って思うべきよ。漢のロマンだから。

# ちなみにうちはC++。何でかっていうとデジタルi/oボードや
# RS485通して制御する装置のコントロールパネルをNetScape
# に出したいから。PHPは嫌い。

うーん、言語なんて気分転換に切り替えればいいのよ。
毎年新しい言語導入しないと気分的につまんないです。




198 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/02(木) 11:46
>>193
実績のない ruby と比べるからいけない。
Python と比べてみよう。たとえば Zope のようなものを Perl で書くと
なると、もちろん頑張れば書けるだろうが、それをもって「今の所 ** で
できて Perl で出来ないってことが見つからない」などと言われても困る
のではないかな。
>>191,192
静的型チェックについては ruby の利点と trade off なので仕方ない。
「実装者の都合」という言い方は違うと思う。lisp だって同じだよね。
動的型チェックは任意選択の文法として導入してしまえばいいと思うん
だけど、作者は慎重らしい。



199 名前: 190 投稿日: 2000/11/02(木) 12:20

>4.型チェックのないことが不利に働く
はもちろん「有利に働くのは小規模なとき」ということ。

>198
>動的型チェックは任意選択の文法として導入してしまえば
それほど継承に依存しない点や特異メソッドの
ことなどを考えると文法チェックは半端な気がする。
これについてはもう割り切っちゃってる(というかあきらめてる)。
全メソッドunit testするのだ!

http://www.jp.ibm.com/developerworks/linux/001027/ruby_qa.html
まつもと氏とPerl開発者の対談で、下の方に将来の高速化と、
Perl,Pythonコミュニティに謝意を表してるとこが載ってる。
(しかし何となく皮肉に聞こえるのは気のせいか?)。



200 名前: >198 投稿日: 2000/11/02(木) 12:52
荒れてるスレッドでLispの名前出すなっつーの。


201 名前: >200 投稿日: 2000/11/02(木) 13:25
荒れてるってより、活発な議論がされていて、
なかなか好ましい状況でないかい?


202 名前: >193 投稿日: 2000/11/02(木) 17:57
同感。なんか閉鎖的コミュニティって感じでやだよね。



203 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/02(木) 20:50
>>202
コミュニティの閉鎖性に関しては人それぞれ。俺はML半年くらい読んで
一度も発言していないが閉鎖的とは思わないがな。で、コミュニティが
嫌なのと言語を使いたくないのと何か関係あんの?



204 名前: ぎこるび 投稿日: 2000/11/02(木) 21:11
MLはレベル的についていけないことが多多あるので、
僕も専らROMです(数回は投稿しましたが)。
よっぽどな内容でない限り質問にも親切に答えてくれますし、
そう悪い雰囲気はないと思います。

あの「他言語との比較」はRuby洗脳のための文章なので、
真に受けずに読むのが正しい読み方ですよん。
ちゃんと「独断と偏見に基づいています」と書いてあるし。



205 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/02(木) 22:11
なんとなく想像できるな。(w
ちなみに俺はRuby信者の発言をよむにつれ、Rubyが嫌いになった。

マイナーが良くにあう精神構造だった。



206 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/02(木) 22:29
Ruby信者は日本人が作った言語という話題性に惹かれて集まった奴らが
多いんじゃないかな。
そしてそのまま、まつもと信者になる。
Rubyだけ使ってるという人間は90%Ruby信者だろ。



207 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/02(木) 22:38
>>Rubyだけ使ってる

まぢで?


208 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 00:18
幾ら何でもそんなやついないだろ〜


209 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 00:51
> ちなみに俺はRuby信者の発言をよむにつれ、Rubyが嫌いになった。
何で信者と言語が関係あるんだ?
> マイナーが良くにあう精神構造だった。
こういうこと言うあんたの方がよほど偏見に満ちてると思うが。



210 名前: ぎこるび 投稿日: 2000/11/03(金) 02:14
>>206
自分がRubyに手を染めたのは次の理由からです。
・「日本人が作った言語」なのでドキュメントも日本語で嬉しい
・オブジェクト指向って何よ?という状態だったので、
 手軽にオブジェクト指向ができそうなところに惹かれた
で、言語にはほれ込んでますが、開発者にほれたりはしてませんです。
さすがにRubyだけ使っているという人はあんまりいないと思いますよ。
Perlから流れてくる人が結構多いですから(そういう場合やっぱりPerlは捨てられない)。

>>209
ゲイツが嫌いだからWindowsは使わないというのと同じ関係でしょう。


211 名前: >210 投稿日: 2000/11/03(金) 09:45
あんたはまともそうだけど、一部痛い信者がいるからなぁ。
そういう人間はRubyだけにどっぷり染まっているみたいだよ。
そいつらでもPerlで掲示板ぐらいなら作れるんじゃない?
改造ぐらいしか出来なかったりして。


212 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 10:42
痛い信者なんて、良いものにはつき物だよ。


213 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 10:49
Windowsの普及をおろそかにしてるってのは、
ActivePerlみたいに、誰でもお手軽にインストールできない。
初心者への敷居も高いんじゃないか?
なんでいちいちcygwinとかを強要するかねぇ。
こんなことやってるようじゃ、Winでの普及は絶望的。


214 名前: 名無しさんi486 投稿日: 2000/11/03(金) 13:01
ActiveScriptRubyならmsi一発じゃなかった?
そもそもcygwin版とともにvc版もあるし。


215 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 13:09
普通のWindowsな人の普通の作業にはPerlもRubyも使わないようです。
自分がそうでした。



216 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 15:15
>>211
Ruby *だけ* に染まるなんてホントにごくごく一部だろ。そもそ
もRubyだけじゃできることが少なすぎるよ。学んだ最初の言語が
Rubyっていう特殊な人だけなんじゃないの?

何から何までPerlで書く(Perlでしか書けない)厨房や、どんな
に複雑な処理もCで書こうとする奴だって大勢いるわけで、どうし
て「Ruby信者」だけをそんなに協調したがるのか理解に苦しむな。



217 名前: 216 投稿日: 2000/11/03(金) 15:16
協調→強調



218 名前: Java厨房 投稿日: 2000/11/03(金) 15:18
>
最近の言語だから。


219 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 15:39
やたらrubyを勧めるからじゃない?
実際鬱陶しいよ。


220 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 18:06
>>216
> 何から何までPerlで書く(Perlでしか書けない)厨房
これはPerlしか知らないだけで「信者」じゃないよな

> どんなに複雑な処理もCで書こうとする奴
ここで言う「複雑な処理」がどういうものだか知らないが、
オペレーティングシステムのカーネルやコンパイラは
「簡単な処理」なの?
「一々Cで書くのが阿呆らしいような処理」とかなら分かる。
で、これもCしか知らないか、普段Cばかり使っているので結局Cの
方が早く書けちまう(当人にとっては)のいずれかで、「信者」
じゃないだろ。
~




221 名前: anon 投稿日: 2000/11/03(金) 18:34
>213 サ荀マWindows・譯シ・カ、ハ、、ヌ、ケ、ャ。「、ソ、キ、ォ、ヒ、筅テ、ネエハテア、ヒ、ハ、テ、ニ、ロ、キ、、、ヌ、ケ、隍ヘ。」、ヌ、筅テ、ニFYI.
Ruby Entry Package for Windows / Yasuhiro Arima
http://homepage1.nifty.com/arima/ruby/
InstallShield、ヌーネッ・、・・ケ・ネ。シ・、ヌ、ュ、゙、ケ。」エハーラIDE、ホRubyWin、簇、、ホ、ヌ。「、ェシキレ、ヒRuby、ツホクウ、ヌ、ュ、ニハリヘ。」クトソヘナェ、ヒスナハ、キ、ニ、゙、ケ。」
クシー・オ・、・ネ、ヌ、「、ruby-lang.org、リ、ホ、ウ、ヲ、、、テ、ソセハ、ホスクフ、ャススハャ、ヌ、ハ、、、ネ、、、ヲーユクォ、ヒ、マニアエカ、ヌ、ケ。」


222 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 19:49
213 のいうとおり!


223 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 20:10
> > 何から何までPerlで書く(Perlでしか書けない)厨房
> これはPerlしか知らないだけで「信者」じゃないよな
ごめん、そうだね。
> オペレーティングシステムのカーネルやコンパイラは
> 「簡単な処理」なの?
そんなこと一言も言ってないけど…?
> 「信者」じゃないだろ。
これも悪かった。
言いたかったのは 205 みたいな「信者がイタイから言語も嫌い」っ
ていう頭の悪い物言いが(ゲイツが嫌いだから Windows を使わない
っていうのと同じで from 210)不快だったってこと。

まあ 2ch らしくて結構だけど。



224 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 20:51
「Perlではオブジェクトがつかえない」と主張する頭の痛い厨房の
相手を最近したもんでな。 >209
しかもつかいかたを説明すると逆ギレしてんだ。



225 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 21:03
まあ俺は基本的にPerlしかつかってないわけだが
他言語も必要ならやるよ。趣味だけどな。
しかしRubyがアドバンテージとして主張する物の多くは
Perl6で(Perl風味で)実装される可能性が高いこと。
膨大な量の(今も増え続けている)CPANモジュール。
(数値計算用のXS拡張まである)
これらが特にRubyへの移行を考えない理由だ。



226 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 21:19
そういえばPsh(Perlのシェル)という話があったが
このあいだwww.perl.org見たらPerlOSなんつー話があった。(ワラ




227 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 21:40
>>223
>> オペレーティングシステムのカーネルやコンパイラは
>> 「簡単な処理」なの?
> そんなこと一言も言ってないけど…?
すまん「どんなに複雑な処理でもCで書こうとする奴」と書いてあった
から、現在ではCで書かれることが普通であり、かつ普通は複雑という
ことになっている分かりやすい例を示しただけだ。

基本的に「信者が嫌いだから言語も嫌い」
になること自体は、当人の勝手だろう。Rubyは
それで片付けてしまえる程度の選択肢だと思うぞ。
Windowsの場合はゲイツが嫌だろうが仕事で使わざるを得んがな。



228 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 22:18
Ruby使いは仕事で使っている人はいないでしょうな。
趣味で使って嬉々としている様子が目に浮かぶ。


229 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 22:58
>>225
それこそが唯一(言い過ぎか?)にして最大の、RubyがPerlに劣って
いる点です。だからRubyが好きな人は普及に努めようとするので
しょう。自分も含め。
だから、ちょっとくらい熱く語っても、暖かい目で見て下さい。


230 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 23:11
どうせなら、言語的に優れている方を使いたいからなぁ。
俺はこれからRubyやろうと思うよ。
多分これが一番仕様が褒められている言語だから。


231 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 23:56
>>227

216のいう複雑な処理って
「Perl or Rubyだとスッキリ書けるけどCだと少し複雑になる」
みたいな意味なんじゃない?
OSとかコンパイラを例に出すのは違うかと。


232 名前: 227 投稿日: 2000/11/04(土) 03:28
>>231
マジでわからんのだが、コンパイラはrubyで書けないのか?
コンパイラをrubyで書かないとして、その性能以外の面での理由は何だ?
ruby用のコードを生成するyaccが存在しないからか?
例が「コンパイラ」じゃなくて、「テキストエディタ」だったらどうだ?
viのように、端末用のエディタで構わないぞ。



233 名前: っていうか、 投稿日: 2000/11/04(土) 05:15
薀蓄はいいからRubyで2ch型掲示板のひとつでも書けば
世間の見方は変わるやろ


234 名前: つーか 投稿日: 2000/11/04(土) 06:08
ここはrubyの蘊蓄スレなんだけど...
現在rubyのキラーアプリ募集中ってとこだな。
# もし海外で先にでちゃったら格好悪いよな。誰かがんばれ!!

>>216 「複雑な処理」って言葉を使うから話しがおかしくなっちゃうんだよ。
つーわけで、向き・不向きで考えると
Cで(「複雑な処理」である)カーネル・コンパイラを書くのは問題なし。>216
また(速度を無視すれば)Rubyでエディタ・コンパイラ書いても全然問題なし。> 232
# raccというのがある

# どーでもいいとこで揚げ足取りあうのはもうやめないかい?


235 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 07:38
仕事でrubyなんかで書かれたら、マイナーすぎて誰もメンテできない状況が容易に想像できるな。(藁


236 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 07:40
あ、○んこより下だったんで、あげておいた。


237 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 09:02
Rubyのキラーアプリていうと2ch型掲示板とか?
CGI以外での使い道は現実的にないと考えていいと思うがどう?
パフォーマンスを考えると作る意味はないだろうけど。


238 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 10:44
>>228
俺、知ってるよ、仕事で使っている人。
客先に納める仕事ね。


239 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 10:45
>>232
コンパイラなんか、バイナリデータ扱えるならどんな言語でも書けるよ。
アセンブラのソース吐くだけならテキスト処理のみで済むし。
ま、ハードコーティングされた奴に比べるとめちゃくちゃ遅いだけなのでヤメレ。
宣伝程度にはなると思うが。
コンパイラは質の良いオブジェクトコード出力とスピードが肝だよ。
最適化のアルゴリズムとか考える時は便利かもね。>インタプリタ

>>237
そもそもサーバ側で用意されてる所ってほぼ皆無なので、移転する時に困る。>ruby/cgi



240 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 10:52
>>238
その客は災難だったな。(藁
そういう場合って、納品した会社が責任取ってタダで保守までするわけか?


241 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 11:01
>>239
CGIが不可って事はrubyの使い道はローカルでのテキスト処理オンリー
ですか?

>>238
詳細きぼーん


242 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 11:40
>>241
ローカル、つーか個人の趣味や一部の団体で使われる程度だと思うね。
積極的にUNIX系OSにデフォで入れてくれる様に交渉するとか、
ruby特有の明確なアドバンテージ(って何?)でも示さない限り。
せめて日本人向けディストリビュージョンの存在するOS
には入れておいて欲しいなあ。入ってたっけ?

>>238
わたしも保守の問題がどう解決されるのか気になります。
数少ない事例ですから。


243 名前: 329 投稿日: 2000/11/04(土) 12:42
ついでに言うと、rubyで書かれたコンパイラで、
rubyスクリプトを質の良いオブジェクトコードに
コンパイルすると、速度の問題もいずれ解決する。(藁
まあ、ブートストラップは理想だな。
逆にこんどは機種依存の問題が出てくるが。
JavaVMみたいにすればokか?


244 名前: >243 投稿日: 2000/11/04(土) 13:40
>rubyスクリプトを質の良いオブジェクトコードに
>コンパイルすると、速度の問題もいずれ解決する。(藁

なるほど!


245 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 14:19
>>244
しかしこの、「いずれ」ってのは問題だね。
なんかrubyと関係なくなってきたな。(藁
つーわけで、どんな言語でもある程度の機能があれば
コンパイラの作成やブートストラップは可能。
yaccやlexも移植するのは簡単…。
実際やってる例は希だけど。


246 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 14:34
静的な型付けを行わない以上、「rubyコンパイラ」を作ったとして、
シロウト目には、C/C++並みに速くすることは不可能に見えるのだが。
それと、eval()をどうするつもりか?単純にこの部分だけrubyインタプリタ
に食わせるという訳にはいかんだろう。



247 名前: 246 投稿日: 2000/11/04(土) 14:38
ああ↑の「rubyコンパイラ」は、rubyで作成したコンパイラという
意味じゃなくて、rubyスクリプトからobjectコードを生成する
プログラムのこと(まぎらわしい....)



248 名前: Ruby似非信者 投稿日: 2000/11/04(土) 17:22
>>216
Rubyを使いこんでるひとは、Cは嫌いじゃないっていう人が多いんじゃ
ないかな。拡張ライブラリを書くにはC使うわけだし。
C++は嫌い、ってのは多そうだけどな。



249 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 17:41
>>248
C++は嫌いだ。キライダ…


250 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 18:22
発売日の翌日に紀伊國屋で注文したRuby入門がまだ届かない。
これだからRubyはいやなんだよ、ったく・・・。


251 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 19:11
実は紀伊國屋or宅配会社が悪いのに、
関係無い事でRubyが責められてる。
ああ、可哀相な運命のRuby…


252 名前: 238 投稿日: 2000/11/04(土) 19:40
客先とは言っても常駐のようなものだから。
実際にその人が何をさせているのかまでは知らないし。



253 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 19:58
>>238
1. 客の計算機のディスク資源を使用して、わざわざRubyを入れたのか?
その理由(必要性)を、客にどう説明したんだ?
2. Rubyを採用した人間は、一生自分がそのシステムを保守すると思って
いたのか?
といった点が、やはり謎だな。仕事と趣味を近藤してねえか?という疑惑が
ふつふつと沸いてくるんであるんである。




254 名前: 名無しさん@優しい人 投稿日: 2000/11/04(土) 20:26
>>252=238
なんだ〜、残念。
オチが欲しかったのに…。
聞く機会があったらお願いしますね。
ほんとにめずらしいケースみたいなので。


255 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/05(日) 01:04
もうやめにしない?
Perl信者の書き込みばかりになってるじゃん。
人の使う言語を煽って何が楽しいのかわからない。

#これからrubyが伸びてくる事は確実。
#それを盲目的に否定するのはどうかね。


256 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/05(日) 01:09
>>255
スクリプトは終わった。
JavaサーブレットとActiveXの時代。


257 名前: 名無しさん@優しい人 投稿日: 2000/11/05(日) 01:39
>>255
>#これからrubyが伸びてくる事は確実。
無責任な事を言うな。何処に根拠がある。
こういう発言を盲信と言わないのか?

>>256
ActiveXはどうかと思うが…


258 名前: >255 投稿日: 2000/11/05(日) 02:12
だからPerl信者じゃなくて、Perlしか使えない連中なんだって(w


259 名前: 名無しさん >258 投稿日: 2000/11/05(日) 02:51
実際問題Rubyがメジャーになるこたないだろ。
ビジョンが想像できない。





260 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/05(日) 03:13
>>259
メジャーになるのではなくて、メジャーにするのです。
Perlだってほっておいて伸びたわけじゃなし。


261 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/05(日) 03:30
いや、別に文句つけるわけじゃないが、どうやって?



262 名前: 236=239=242=243=245=254=257@優しい人 投稿日: 2000/11/05(日) 04:18
>>261
それについては、
ほんの触りだけ242で書いたが…


263 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/05(日) 04:49
>>242
kondaraとDebianには入ってるぞ。


264 名前: 名無しさん@優しい人 投稿日: 2000/11/05(日) 05:09
>>263
調査感謝。
と、いうことらしい。>261
少なくともそういう動きはあるわけだ…>261
261にむい。いい番号を拾ったな、勇者ニムイよ!
にむーい、にむーい。
…明日読み返したら後悔は必至だな。(藁


265 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/05(日) 15:36
Fixnumを継承してメソッド増やしたいのですがnewできません。
Integerは特別扱いというのは分かりますが、どうにかならないですか。

class MyInteger < Fixnum
 def prime?
  for i in 2..self/2
   return true if n % i == 0
  end
  false
 end
end

n = MyInteger.new(3) # ここでエラー round.rb:XX: undefined method `new' for MyInteger:Class (NameError)
p n.prime?

やりたいことはFixnumの値を一つ保持して複数のメソッドを持つ
Stateクラスを定義することです。@valueを持たせるよりは
Fixnumを継承した方がオーバーヘッドが少ないかなと思ったからです。


266 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/05(日) 16:00
Rubyユーザの性格==ホットスープユーザの性格


267 名前: マジ 投稿日: 2000/11/05(日) 17:55
ホットスープって何?



268 名前: 名無しさん@優しい人 投稿日: 2000/11/05(日) 18:25
>>267
>ホットスープって何?
これからの季節には必須だろ。
あー自分で書いててつまんねー。
#HSPで検索しとけ。
#本も出てるな。


269 名前: Ruby似非信者 投稿日: 2000/11/05(日) 19:12
>>259
Kent Beckも「I love it.」って言ってるくらいだから、XPコミュニティから
「XPするなら(Pythonよりも)Ruby」って流れができて、OO方面からメジャーに
なっていく、ってなビジョンはどうかな?
XP(eXtreme Programming)については、
http://www.esm.co.jp/divisions/open-sys/eXtremeProgramming/xp-faq.html
とか。

いくらRubyが流行ってもPerlがなくなることはないだろうね。それでも、
今ならPerlが当たり前の領域の一部にRubyが浸透する、という可能性なら
大いにある。それで十分。今のところはね。

>>265
Rubyのnumeric.cに書いてあるけど、
rb_undef_method(CLASS_OF(rb_cFixnum), "new");
でFixnum::newを殺してあるからsuperでエラーが出るのは当然。
素直に@value使うのがおすすめ。

多少乱暴でもいいんなら、Integerにprime?を追加するのも可。

class Integer
def prime?
for i in 2..(self/2)
return false if (self % i) == 0
end
return true
end
end

p 11.prime? #=>true



270 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/05(日) 23:11
>>26[678]
http://www.onionsoft.net/hsp/


271 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/06(月) 04:23
でも、文法に徹底的にこだわったRubyと、文法的には
おいおいなんだこりゃっていうHSPでは正反対の方向性の
ような気が…
まぁフリーでマイナーって所は似通ってるけど。


272 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/06(月) 06:40
Perlとは違うのだよ、Perlとは!


273 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/06(月) 07:00
ムナシイ。。。



274 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/06(月) 11:06
日本のLinuxにはこれからrubyはどんどん入ると思うよ。
ディスクスペースをそんなに食うわけじゃないから、「とりあえず入れとけ」
てな感じでね。
だけど、それが普及に即繋がるとは考えられないし、rubyが文法的に優れている
というだけの理由でメジャーになるはずもない。
そのうち廃れて「そう言えばrubyなんてのもあったなぁ」と思い出すような言語
になるでしょ。


275 名前: 名無しさん 投稿日: 2000/11/06(月) 11:43
>だけど、それが普及に即繋がるとは考えられないし、
>rubyが文法的に優れている
>というだけの理由でメジャーになるはずもない。
人間一人が管理できるシステムの規模には
限界があると思う。ソース一万行で解説200ページ
とかなるとしんどい。
わたしは強力な記述と使い勝手のよい
ライブラリ、安全なインターフェースを
強く欲する。文法とライブラリ、それこそが命です。




276 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/06(月) 12:23
こだわってるのは分かるけど本当に文法的に優れてるの?誰がそう判断してるの?


277 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/06(月) 12:53
>>276
自分で使ってみて判断。それ以外に何が?



278 名前: 通りすがり 投稿日: 2000/11/06(月) 13:54
実用になるかどうかはさておき、Rubyで書くと心地いいね。
結構いいものに仕上がってるから、廃れないでいい方向に発展してくれると幸せだね。
言語マニア好みに仕上がってるから、当分消えることはないんでないかな。
「これができるのはRubyのみ!」という分野がないのが痛いねえ。

ゲームにとりたてて向くわけでもなし、数式処理につよいわけでもなし、
行列計算がいいわけでもなし、テキスト処理がPerlより便利なわけでもなし、
システムプログラミングにむいてるわけでもなし…。
アプリケーション組み込みとしてはPhytonがすでに頑張ってるし、
ネットワークプログラミングがいいわけでもなし…。
言語が対象とするアプリケーションの指向性がいまいちはっきりしないんだよね。

言語処理や画像の意味解析とか、グラフ処理とかそういう、
データ構造のいりくんだややこしい分野で力を発揮しそうなんだけどなぁ。


279 名前: >>275 投稿日: 2000/11/06(月) 14:15
Javaの方がいいですよ。


280 名前: >279 投稿日: 2000/11/06(月) 18:02
どこがどのように?


281 名前: >280 投稿日: 2000/11/06(月) 18:08
いちいち絡むなって。

他言語との比較、Ruby普及計画についての話題はこちらでどーぞ。
http://mentai.2ch.net/test/read.cgi?bbs=prog&key=960615378


282 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/06(月) 22:27
>>280
自分で使ってみて判断。それ以外に何が?


283 名前: >278 投稿日: 2000/11/06(月) 22:33
今の段階でRubyに向いている分野なんて無いって。
Perlから弱点はそのまま引き継いでいるから大規模な物を作ろうと
したらパフォーマンスがネックになる。
小規模な物ならPerlで書いた方が書きやすいんじゃない?(人にも
依るが)
Ruby VMやネイティブコンパイラでも作ってから普及活動した方が
いいんじゃない?


284 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/07(火) 00:16
> 今の段階でRubyに向いている分野なんて無いって。
そうですね…これから作らないと。

> Perlから弱点はそのまま引き継いでいるから
ふーむ、パフォーマンスと特殊変数以外に何があるっけ?
パフォーマンスも Python と大して変わらないけど。

> 小規模な物ならPerlで書いた方が書きやすいんじゃない?
モノと本人の慣れに依るのかな。僕はその場で使ってすぐ捨てる
類のものだけは perl で書いてる気がする。



285 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/07(火) 02:35
俺前も書いたけど、eval()をインタプリタ以外の形態で実装できるのか
疑問。シロウト考えでは無理に見えるんだけど、できるの?>283



286 名前: 名無しさん@優しい人 投稿日: 2000/11/07(火) 04:15
>>285
283では無いが…
もしeval()がSchemeやLISPの遅延評価と同等な意味ならば、
JITコンパイルという手がある。
ただ、この方法は一度しか実行しないようなコードに対しては効果は薄いが。
それでもホットスポット以外はあらかじめコンパイルしておくことが可能だから、
全くの無駄とは言えない。


287 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/07(火) 08:30
>>281
そこはプログラマー板だろ?
何でこっちじゃいけないんだよ?


288 名前: 265 投稿日: 2000/11/07(火) 11:42
>>269
やっぱりnewは使えないんですね。
Stateクラスはオーバーヘッドが大きそうなので
# 生成されるインスタンスがかなり多いので
昔ながらの@value+関数群でやってみます。
ありがとうございました。


289 名前: 285 投稿日: 2000/11/07(火) 14:15
>>286
ここで言うJITコンパイルというのは、実行時にeval()を評価する際に
その場でコンパイルするという意味、だよね。
可能不可能の話で言えば可能だろうが、evalの内部からローカルを
含む外部のobjectにアクセス可能であるということは、結局はインタ
プリタと同様のやり方で、全てをシンボルテーブル上で管理する
必要があるということではないのか。
結果として、バイトコードのような中間コードを実行するのと、
と効率的に大差ないものになるんじゃないのか、と思えるのだけれど。



290 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/07(火) 20:29
難しい話はわからないけど、Kernel.eval に Binding のイン
スタンスを渡せるのが嬉しい。逆に Perl の eval() や ePerl
で外部のシンボル表を渡せないのは言語の性質? できるけど
実装してないだけ?



291 名前: 名無しさん@優しい人 投稿日: 2000/11/08(水) 00:18
>>289
そうだろうね。
まあでも、外部にアクセス可能であったとしても、実際にそのようなコードを
考えもなしにぽんぽん書かない限り、最適化の余地はいくらでもあるとは思い
ますが。とりあえず効率優先なら、プログラマ側でうまく変換する可能性のあ
るコードを書く様に気を付けるしかないんじゃない?
統計的に良く使われるパターンはキャッシュして持って置くとかはするんだろ
うけど。


292 名前: 281 投稿日: 2000/11/08(水) 01:22
>>287
>そこはプログラマー板だろ?
>何でこっちじゃいけないんだよ?
だって比較の軸になってるのって
(作者が)好き・嫌い、メジャー・マイナー、綺麗・汚いくらいのもで
発言の内容だってほとんどが信者・厨房プログラマーの煽り&罵り合いだろ。
# それにここのスレ初心者からの質問スレ>>17らしいし(俺も知らなかった...)


293 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/08(水) 13:43
>>煽り&罵り合いだろ。

あなたは2ちゃんねるにくるのをやめたほうがいいです。


294 名前: >293 投稿日: 2000/11/08(水) 14:18
お約束の展開だなぁ。それでもこの板&スレではちゃんとお話ししたいのよ。


295 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/08(水) 17:24
>>294
建設的な議論をしたいのならよそに行った方が良いと思いますよ。まじに。


296 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 01:45
>>295
「嫌いな話題は俺がかき回すから他逝け」ってことですね



297 名前: あおりんご 投稿日: 2000/11/10(金) 01:48
んー。ていうか、
Rubyのスレなんだからさ・・
煽られても相手しなけりゃいいのに。



298 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 08:22
でも一見罵り合いに見えても、それなりに議論がすすんでるじゃん。


299 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 10:15
で、
#!/usr/local/bin/ruby
じゃなくて、
#!/bin/sh
exec ruby・・・
・・・
って書くやりかたがあったけど、どう書くんだっけ?

なんか
#!/usr/local/bin/ruby
puts "test"
って書いてパーミッション与えて./test.rbで実行できない。
例)
% ./test.rb
puts: Command not found
たんにコマンドラインからrubyとするとrubyは起動します。
% ruby -v
ruby 1.4.4 (2000-04-14) [sparc-solaris2.7]


300 名前: 投稿日: 2000/11/10(金) 11:09
>>299
#!/usr/bin/env ruby
って書くのが良いみたいです。
でも、envって普通/usr/binに置くものなの?


301 名前: >299 投稿日: 2000/11/10(金) 11:23
CGI板でやれば?


302 名前: 299 投稿日: 2000/11/10(金) 12:22
>>300
ありがとうございます。できました。

>>301
この板のこのスレッドで聞くことは不適切なんですか?



303 名前: >302 投稿日: 2000/11/10(金) 23:20
一行レスに噛み付くのは煽りを喜ばせるだけで建設的ではありません
もちろんこのレスも無視すれ


304 名前: Ruby tip of day 投稿日: 2000/11/17(金) 21:25
ruby -e "require 'find'; Find.find('.'){|file| puts file}"
# similar to "find ." in unix command.


305 名前: ruby初心者 投稿日: 2000/11/17(金) 21:38
ブロックってなにものなんですか?
なんか便利になるんですか?


306 名前: ぎこるび 投稿日: 2000/11/24(金) 05:09
>>305
メソッドに渡す処理の塊をブロックと言います。
配列をイテレートする場合で例を挙げると、
[1, 2, 3, 4, 5].each{|i| p i}
の{}内がブロックです。配列の場合は下と大体等価です。
def my_each
 for i in 0...size
  yield(self[i])
 end
 self
end

Javaでイテレートする場合には下のように外部イテレータになりますが、
Rubyの場合はオブジェクト側が処理を握っている内部イテレータです。
for (Enumeration e = all.elements(); e.hasMoreElements(); ) {
baz = foo + e.bar();
}


307 名前: ぎこるび 投稿日: 2000/11/24(金) 05:16
あ、全然間違えてる。
baz = foo + e.bar(); もとい
String baz = foo + (String)all.nextElement();

気を取り直して。。。
またイテレート以外にもブロックは使えます。
File.foreach('hoge'){|line| p line}

fp = File.open('hoge')
begin
 while line = fp.gets
  p line
 end
ensure
 fp.close
end
と同じです。ブロックを終えるとファイルを必ず閉じるようになっています。
あくまでレシーバ(オブジェクト)に対してしてほしい処理を渡すという形に
なっているのがRubyらしいと言えます。
処理の主体とその範囲が明確なのでわかりやすい(書き易く読み易い)
のが効用だと思います。


308 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 00:25
で、
#!/usr/local/bin/ruby
じゃなくて、
#!/bin/sh
exec ruby・・・
・・・
って書くやりかたがあったけど、どう書くんだっけ?

なんか
#!/usr/local/bin/ruby
puts "test"
って書いてパーミッション与えて./test.rbで実行できない。
例)
% ./test.rb
puts: Command not found
たんにコマンドラインからrubyとするとrubyは起動します。
% ruby -v
ruby 1.4.4 (2000-04-14) [sparc-solaris2.7]


300 名前: 虹 投稿日: 2000/11/10(金) 11:09

>>299
#!/usr/bin/env ruby
って書くのが良いみたいです。
でも、envって普通/usr/binに置くものなの?


301 名前: >299 投稿日: 2000/11/10(金) 11:23

CGI板でやれば?


302 名前: 299 投稿日: 2000/11/10(金) 12:22

>>300
ありがとうございます。できました。

>>301
この板のこのスレッドで聞くことは不適切なんですか?




309 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 01:10
rubyが /usr/local/bin/ にないんじゃないですかね。
%which ruby
でrubyのあるパスが得られますのでそれを書いてください。


310 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 01:13
rubyが /usr/local/bin/ にないんじゃないですかね。
%which ruby
でrubyのあるパスが得られますのでそれを書いてください。


311 名前: ぎこるび 投稿日: 2000/11/25(土) 01:16
ああ、連書き失礼しました。


312 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 05:52
なんか ruby-talk でフェイドアウトする議論が多いのが気になる



313 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 04:17
今日、RUBY本をかってざっと眺めたのですが、よくわからない点が2つ。
(1)なぜ例外処理が2つあるの?(try-catchとbegin-rescue)
(2)言語がイテレータをもつ理由は?(別に外部イテレータでもいいような...)
誰か答えて。


314 名前: 投稿日: 2000/11/27(月) 06:06
>>313
(1)throw-catch(だよね)は捕らえられることを前提としたもので、
言わばgoto文に近い感覚です。それに対し、raiseによる例外は
捕らえられないことを前提とした例外で、エラーが発生しても
処理を続けたいときにbegin-rescueを使います。
(2)繰返しをオブジェクトの中に隠すことができるので、使う側が
内部の処理を意識する必要がなくなります。確かに機能的には外部
イテレータ>内部イテレータかもしれませんが、内部イテレータの
方が保守性が高く、高級(笑)です。

と、自分は認識していますが間違い等あるかもしれないので、詳し
い方フォロー願います。


315 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 00:07
throw/catchは関数、raise/rescueは予約語、ちう違いもありますな。
Rubyデスクトップリファレンス見てみたらthrow/catchに関する記述は
無かったので、throw/catchは無かったことにしようとしてるに一票。


316 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 00:10
throw/catchは関数で、raise/rescueは予約語なんて違いもありますな。
Rubyデスクトップリファンスを見たらthrow/catchに関する記述が見ら
れなかったので、無かった事にしようとしている、に一票。


317 名前: 315, 316 投稿日: 2000/11/28(火) 00:11
だぶりスマソ。


318 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 21:48
RubyでXMLを扱う時にはどんなツールが必要になるんですか?
perlだったらDOMやパーサ―のモジュールがあるけどRuby
でもおなじようなものがあるんですか?


319 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 21:52
ruby-dev の田中さんのおかげで、1.7 では file descriptor の直接操作
ができるようになりそう。dup(2) の interface が提供されないのって悩
ましかったんだよなあ。これで dup & exec するためだけのアホな拡張ラ
イブラリは捨てれそうだ (^o^)



320 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 21:57
>>318
http://www.yoshidam.net/Ruby.html#xmlparser
を使うようです。
ちょっとしか使ったことないのでどのくらい酷使に耐えるのかわ
かりませんが…



321 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 00:28
ここでもXMLか・・・はやってるの?


322 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 00:55
>>321
今更何言ってんの?
でも XML 界も混沌としてるしこのままポシャったらおもろいのにな



323 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 01:51
名前がカッコ悪い。大文字って点も。>XML


324 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 09:16
なんて読むの?やっぱバツマル?


325 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 11:31
18禁めーりんぐりすと


326 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 19:24
XMLネタは他でやれ


327 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/30(木) 04:05
めーりんぐりすと反対!


328 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/12/01(金) 00:34
クソムル


329 名前: プロセスさん@お腹いっぱい 投稿日: 2000/12/10(日) 13:04
ruby/gtkで、gettextを使ったプログラムのサンプルってありませんか?
ruby/gtkは、webページを発見できたのですが、ruby/gtkでgettextって
どないするんでそ?


330 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/12/11(月) 01:50
C++ソースに組み込んで独自命令定義しようとすると、
以下のようなエラーでるのはどうにかならないのかな?
まぁ無理やりキャストかませば問題はないんだけど。

foo.cpp(67) : error C2664: 'rb_define_global_function' :
2 番目の引数を 'unsigned long (int,unsigned long *,unsigned long)' から
'unsigned long (__cdecl *)(void)' に変換できません。



331 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/12/11(月) 02:46
age


332 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/12/11(月) 18:53
rubymw.dllの機能を使うDLLをmngwin環境で自作しようと思ったのですが、
gcc Developer Stationで以下のコードをビルドしたらrb_eval_string
が定義されていないと言われてしまいました。どのようにしたら
上手くいくのでしょうか?

#include <windows.h>
#include "ruby.h"

int WINAPI DllMain (HINSTANCE, DWORD, PVOID)
{
return TRUE;
}

extern "C" __declspec (dllexport) BOOL WINAPI test1 (void)
{
rb_eval_string("print \"test\"");
return TRUE;
}


333 名前: ぎこるび 投稿日: 2000/12/11(月) 19:49
>>329
gettextのラッパーライブラリがあります。
http://www.page.sannet.ne.jp/hirata-naoto/ruby.html

>>330
C++は使わないんでよくわかりませんが、
_cdeclでコンパイルするようにすればエラーはでないかと。



334 名前: ぎこるび 投稿日: 2000/12/11(月) 19:57
>>332
これから始まるスレッドを参照してください。
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/17353
組み込みに関してはREADME.EXT.jpくらいしかドキュメントがないんですよね。。。



335 名前: ぎこるび 投稿日: 2000/12/11(月) 20:46
>>332
ApolloやRubyWinのソースが参考になるかも。
http://www.users.yun.co.jp/~moriq/apollo/
http://homepage1.nifty.com/markey/ruby/rubywin/


336 名前: 332 投稿日: 2000/12/12(火) 06:54
>>334-335
どうもありがとうございます。
あれから、いろいろと参考にして悪戦苦闘しましたが結局出来ませんでした。
仕方がないので、LoadLibraryとGetProcAddressを使って強引に
rb_eval_stringを呼び出すラッパーを作ることにしました。

しかし、RubyWinはなぜあのソースで出来るのか、かなり謎です…


337 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/12/12(火) 17:22
fileにある繰り返しのパターンを、Structの配列で読み込みたいのですが、
Rubyでどんな風に書いたらいいですか?

で、そのなかのhogeというメンバー名で、正規表現でマッチさせて、別の
メンバーも表示って感じで

ファイルパターンはこんな感じ
foo: abcdef
bar: bcdefg
|
foo: zzzzzz
bar: xxxxxx

ってな感じ


338 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/12/12(火) 17:24
ぎこるびってまつもとさんだったりして。



339 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/12/12(火) 17:27
>>330
rb_define_functionのプロトタイプが
void rb_define_function(VALUE, char*, VALUE(*)(), int);
である以上、キャストを使わない限りC++ではエラーは避けられんと思う。

VALUE(*)()の意味は
Cでは
「引数は何でも良く(チェックしない)、VALUEを
返す関数へのポインタ」
C++では
「引数無し(void)でVALUEを返す関数へのポインタ」
だからな。

gccであれば-fno-strict-prototypeで切り抜けられそうだが。



340 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/12/12(火) 18:34
Ruby全般に、UNIX万歳!Winは知らん、って臭いがプンプン漂うのが嫌だ。
Rubyコミュニティも、厨房お断り的な窮屈な雰囲気でなんか嫌だ。


341 名前: 投稿日: 2000/12/12(火) 19:13
>>337
質問が良く理解できないので的を外してるかもしれないが、

array=Array.new
line_no=1
ARGF.each { |line|
if /^([^:]+):\s(\S*)\s*$/=~line
array<<Struct.new("Line"+line_no.to_s,$1).new($2)
end
line_no+=1
}
p array

こんな感じか。なんか全然求めているものと違うような…。


342 名前: 投稿日: 2000/12/12(火) 19:19
>>340
UNIX万歳かどうかは知らないけど、Winは知らん、てのは当たって
いるかも。と言うか本当にただ使ってないので知らん、って意味
だけど。
なので、Win使いの人はむしろ大歓迎だと思います。

# >>341インデントがないと激烈に読みにくいな。


343 名前: ぎこるび 投稿日: 2000/12/12(火) 19:37