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

Rubyについて

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさんNGNG
教えてくれませんか? なんか、どのすれ見ても結構Rubyがいいみたいな事かいてるし
ちょっと前のCマガにもRubyを薦めてるような記事が載ってたんで
興味ありです Rubyの魅力を教えてください
0002デフォルトの名無しさんNGNG
ならRubyのスレに書け
荒しとしかおもえんわ
0003デフォルトの名無しさんNGNG
Cマガ野記事読めばいいじゃん。それか今月のUNIX USER。後検索もしろよ。
0004デフォルトの名無しさんNGNG
Ruby以外の言語は糞。何度言ったら分かる?
0005デフォルトの名無しさんNGNG
どこがどのように糞で
Rubyのどこがいいのか
具体的におしえていただきたい。
00061NGNG
>>2さん>>3さんごめんなさい 初心者な者で…
0007デフォルトの名無しさんNGNG
俺が2ch初心者の頃は
恐れ多くてスレなんてたてられなかったけどな。
0008デフォルトの名無しさんNGNG
Ruby >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 2ch
0009デフォルトの名無しさんNGNG
Ruby>>>>>>鈴木ムネオ
0010デフォルトの名無しさんNGNG
Rubyこそ最高の言語!
0011デフォルトの名無しさんNGNG
わかってると思うけどRubyがいいって言っているのはみんなネタなんだよ。
マジレススマソ
0012デフォルトの名無しさんNGNG
>1
>なんか、どのすれ見ても結構Rubyがいいみたいな事かいてるし
簡単にだまされるなよ(w
0013デフォルトの名無しさんNGNG
Rubyを批判する奴はサヨク
0014デフォルトの名無しさんNGNG
Rubyを批判する奴はサヨクという奴がサヨク

0015デフォルトの名無しさんNGNG
Ruby作者のまつもとはオウム真理教の教祖。
Ruby信者=オウム信者。
つまり社会のゴミ
0016デフォルトの名無しさんNGNG
Rubyはユーザが主に厨で構成されていることをのぞけばかなり魅力的だと思う。
0017デフォルトの名無しさんNGNG
PerlとRubyとPythonを比べると、
書籍の数 Perl > Ruby > Python
雑誌の記事の数 Ruby >= Perl > Python (最近Rubyの記事が多い)
出来ること Perl > Python >= Ruby
ってとこか(恣意的意見)。

スクリプト言語をやりたければ、全部かじってみて、好きなのを選ぶといいと思うよ。
0018デフォルトの名無しさんNGNG
>>17
出来ることはPerl = Python = Rubyだと思うんだけど、
Perlには出来るけど、Python、Rubyでは出来ない事ってあるの?
001917NGNG
>>18
ライブラリの数で見ると、です。
0020デフォルトの名無しさんNGNG
Ruby >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
0021デフォルトの名無しさんNGNG
Rubyが電磁波を放射している様子ですか?
0022JustStupidRubyistNGNG
>>1
スレ立てないで。いいかげんうんざりする。

Rubyを愛する奴は人生の敗北者 Part3
http://pc.2ch.net/test/read.cgi/tech/1001829961/
002318NGNG
>>19
なる、それなら納得。
ライブラリがなかったら自分で作ればいいと思うけど、
まあ、手間がかかるという意味では大変かな、、、
0024デフォルトの名無しさんNGNG
>>22 はぁ? あんたがうんざりする亊と何か関係でも?
0025デフォルトの名無しさんNGNG
>>24 sageで煽るお前がuzeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
0026デフォルトの名無しさんNGNG
Ruby!
0027デフォルトの名無しさんNGNG
俺もrubyの魅力が知りたい
0028デフォルトの名無しさんNGNG
Rubyを習得すれば、他の言語を見下せるようになる。以上。
0029デフォルトの名無しさんNGNG
答えになってないYO
もっと詳しく教えてYO
0030デフォルトの名無しさんNGNG
>>29
Ruby作者のまつもとはオウム真理教の教祖。
Ruby信者=オウム信者。
つまり社会のゴミ
0031デフォルトの名無しさんNGNG
:-/
0032デフォルトの名無しさんNGNG
初心者のオレから超初心者のアナタにアドバイス

256本は最初に買うと死にます。とりあえず

プログラミングRuby (ピアソンエデュケーション) か

Rubyプログラミング入門 (オーム社) を買おう。
0033デフォルトの名無しさんNGNG
>>32に横やり補足。
オブジェクト指向スクリプト言語Ruby(アスキー)は
まつもとさんが書いてますが、一般へのRubyの紹介及び解説みたいな本です。
初心者にはお勧め出来ない。
256本は興味のある分野に書かれているものなら、読んでおくといい。
オレは極道と界道を買ったけど、とてもためになった。
0034デフォルトの名無しさんNGNG
>>33
> オブジェクト指向スクリプト言語Ruby(アスキー)は
> まつもとさんが書いてますが、一般へのRubyの紹介及び解説みたいな本です。
いや、むしろRubyの実装とかにも踏み込むマニアックな本だとおもう。
石塚さんのOO設計とかも入ってるし。

> 初心者にはお勧め出来ない。
それは同意。
0035デフォルトの名無しさんNGNG
(;´д`).。oO(むんむんむ〜れむ〜れ腋の下ぁ…)
Windows 98 SE にて、rubyw.exe 1,6,4,0 を使ってます。

最初に、スクリプトを書いた hoge.rb のショートカット(アイコン)を作って、
あとで、入力したいデータが入ったアイコンをショートカットの上に
ドラッグ&ドロップしてやる、なんてことができるでしょうか?
何をどうやって試してみてもうまくいかないので、極めて討つ討つ討つ…。

Windows のショートカットアイコンのプロパティに "%1" とか入れてみたり、
hoge.rb では $_ や $* から入力を拾ってみようとしてみたり、
ためしにテキストファイルに fp.print strHogeHoge してみたり。
たまに print できても「nil」なんて書かれたりしてガックリ。

(;´д`).。oO( どうしたら井〜の頭?)
0036デフォルトの名無しさんNGNG
>>35

rubyw.exe へのショートカットをつくって、
そのパラメータにスクリプト名を書けばよかったりしません?
パス名が \ 区切りになるので cygwin版じゃなくmingw版とかのほうが
よかったりはするかも(未確認)
0037デフォルトの名無しさんNGNG
>>36
(´−`).。oO( スクリプトと入力データ。2つのファイル名を与えたかった。)

しかし、なんとなくわかってきました ヽ(;´д`)ノ゙(((○ ソリャソリャ

問題点
1. Windows のアイコンの仕様:
  *.exe, *.bat,... = D&D のターゲットになれる
  上記以外(*.exe に関連付けしてあっても)= D&D のターゲットになれない2. Windows のパス名の区切り文字が逆スラッシュなのはイヤだ
3. Ruby インタプリタに複数のファイル名や文字列が与えられるだけでは
スクリプトと単なる文字の羅列との区別がつかない
(というより、Windows が *.rb とかのスクリプトのファイルを
実行権限つきで動かせない。しかも #!C:\Progra~1\ruby.exe などの
型式でインタプリタを指定できない)

↓ダサい方法ですが、なんとかいけます (´д`)ノ 

解決策
droptarget.bat の中身:
TYPE %1 | START "E:\Program Files\hogehoge.rb"

hogehoge.rb の中身:
strText = STDIN.read
(以下略)

そして、droptarget.bat の(ショートカット)アイコンに
なにか好きなものをドラッグ&ドロップする

…という感じでうまくいきました。
ありがとうございました〜♥>>36
0038デフォルトの名無しさんNGNG
>>37

手元のWindows2000だと、リンク先を

c:\path\to\ruby.exe c:\path\to\script

にしておけば、ドロップしたファイル名が受け取れてます。
Windows98だとダメなのかもしれないですね。。。

ところで、droptarget.bat の %1 はスクリプト名、%2が
ファイル名のほうが便利じゃないです?ってこれも
うまくいかない?
0039デフォルトの名無しさんNGNG
最近Ruby厨がかわいくてしょうがない・・・
0040デフォルトの名無しさんNGNG
ときどき、大声で「Ruby!」と突然叫んでみたくなりませんか?
0041 ◆RubyOmS2 NGNG
>>37
ARGFを使った方がスクリプトが汎用的でいいと思うんだけど、、、
Rubyのスクリプトを実行形式(.exe)にかえるツールがいくつかあるらしいので、
それを使ってもできると思う。
詳しくはどれなのかオレも忘れちゃったので、MLなどで検索してみてください。(ごめんなさい)

>>40
一日一回は「Ruby!」と叫ばないと禁断症状が現れます。w
0042デフォルトの名無しさんNGNG
Ruby!
0043デフォルトの名無しさんNGNG
病人が居るスレに認定
0044デフォルトの名無しさんNGNG
Rubyでオブジェクトをシリアライズする方法を教えてください。オブジェクトをファイルに保存したいんです。Googleでさがしたけど、方法がわかんないんです。
0045デフォルトの名無しさんNGNG
>>44
Rubyはできません。
0046デフォルトの名無しさんNGNG
obj.dump
0047デフォルトの名無しさんNGNG
こっちを本スレにしよう。
0048デフォルトの名無しさんNGNG
>>44
ネタ?
組み込みモジュールの Marshal を使う。
0049デフォルトの名無しさんNGNG
>>44
Marshal.dump を使おう
http://www.ruby-lang.org/ja/man-1.6/?cmd=view;name=Marshal

だたし、特定のオブジェクトの dump ができなかったり、
Marshal フォーマットがいつの間にか変わっていて
load できなかったりすることもある。
後者は Changelog や ruby-list で情報が得られると思う。
0050デフォルトの名無しさんNGNG
Pstoreでも良いんじゃないかね。>>44
0051デフォルトの名無しさんNGNG
>>49
Marshalのフォーマットは基本的には上位互換でしょう。
ただし、一時期バグのせい(?)で互換性がなくなってしまったことが
あったみたいです。
0052デフォルトの名無しさんNGNG
>>49
ああ、そっか。Ruby界隈ではマーシャリングって言葉の方が多く使われてるんですね。ありがとうございました。
0053デフォルトの名無しさんNGNG
>>51
>>49 のMarshalのドキュメント読んだ?

1.7以降はMarsharl::MAJOR_VERSIONが違うとエラーになるみたい。
0054デフォルトの名無しさんNGNG
>>53
Marshalのつづりを間違えた。
すまん、逝ってくる。
0055デフォルトの名無しさんNGNG
>>53
がーん
古いのは読めないの?
0056デフォルトの名無しさんNGNG
>>55
データをファイルに書き出したいならテキスト形式にするのが
互換性問題もきにしなくていいし一番長持ち。
0057デフォルトの名無しさんNGNG
そりゃそうだけど大きさと速度考えたらどう考えてもテキスト不可でしょ。
0058デフォルトの名無しさんNGNG
>>57
もちろんケースバイケースなんだけど、いまどき大きさや速度を
気にしなければいけないケースはあまりないのでは?
それよりもデータをテキストに変換、テキストをデータに変換、
という部分を作らなければいけないのが面倒かも。
でも Marshal されたものに比べテキストなら他言語でも読めるし
にんげんにも読めるしメリットも多い。

なんかあたりまえのこと書いてるなあ。おもしろくなくてスマソ。
0059デフォルトの名無しさんNGNG
言語仕様的にどうよ?
悪くないんなら、ちょっとしたShellでも
作りたいんだが。
0060デフォルトの名無しさんNGNG
>>58
ぜんぜんおもしろくない。オブジェクトで保存、オブジェクトで通信、なんでもオブジェクトしてこそのオブジェクト指向だろうが。一々テキストに書き出して正規表現で処理するならPerlと同じじゃん。
0061デフォルトの名無しさんNGNG
>>58
現実にはテキストクソ遅せーとのたまう信者が多数なので不可。
それよりもディスアセンブラみたいに、何が書かれているのか
入出力するフィルターがあれば十分。
0062デフォルトの名無しさんNGNG
Sather!
0063デフォルトの名無しさんNGNG
Rubyってオブジェクトをテキスト形式で書き出せないの?XMLは?
0064デフォルトの名無しさんNGNG
クソムルで書くなんて、アホ。
0065デフォルトの名無しさんNGNG
>>64
アホはおめーだよ。普通まともなオブジェクト指向言語なら、オブジェクトをXMLに吐き出せて当然。
0066デフォルトの名無しさんNGNG
できるのかできないのかはっきりしろ
0067デフォルトの名無しさんNGNG
65は「おまえだよ」使いに認定〜
0068デフォルトの名無しさんNGNG
Marshalのことを言っている人、このページを読んだ事はある?

http://www.jin.gr.jp/~nahi/RWiki/index.cgi?cmd=view;name=Marshal%A1%A3

XMLに吐き出すならXMarshalがある。(制限はあるけど)
試したわけじゃないけど、AMarshalが一番色々できそう。
0069デフォルトの名無しさんNGNG
>>67
ありがとう。ところで、できんのか、できないのか、今作ってるとこなのか、どうなんだ?
0070デフォルトの名無しさんNGNG
読むのめんどくせえからこんなとこできいてるんじゃねえか、ぼけ>>68
0071デフォルトの名無しさんNGNG
あ、お礼言うの忘れてた。どうもありがとう。>>68
0072デフォルトの名無しさんNGNG
satherか。
イテレータとかsatherから持ってきてるんだっけ。
0073デフォルトの名無しさんNGNG
>普通まともなオブジェクト指向言語なら、オブジェクトをXMLに吐き出せて当然。
クスッ。初学者さんですねえ。
0074デフォルトの名無しさんNGNG
先月創刊のNEXT ENGINEERに未踏ソフトウェア事業の
天才プログラマネタが載ってるね
0075デフォルトの名無しさんNGNG
>>73
だからこんなとこできいて、礼儀正しくお礼までのべてるんじゃねえか、ぼけ。
0076デフォルトの名無しさんNGNG
>72
CLUじゃないの?
0077デフォルトの名無しさんNGNG
>>59
個人的には書きやすくて好きだけど。
shell って何やりたいかよくわからないけど、標準で入っている shell.rb とか
おもしろい。
注: インタラクティブな Shell ではないよ。
0078デフォルトの名無しさんNGNG
>>77
シェルじゃなくて、なんていうかemacsのスクラッチバッファみたいなの
作ってみたい。とりあえずそのshell.rbでも見てみるわ。サンクス。
0079デフォルトの名無しさんNGNG
>>78
対話的に Ruby のコードを実行したいなら、
irb(Interactive Ruby)が標準で添付されているよ。

Emacsといっしょに使うなら RAA にあるirbshかな。
0080デフォルトの名無しさんNGNG
>78
スクラッチバッファ相当を作りたいのなら shell.rb は全然関係ないね。
79が言うとおり irb がついてる。

irb って何であんなに複雑なんだろう。
0081デフォルトの名無しさんNGNG
>>79-80
成るほど。そっちを見たほうがいいのか。
ていうか既にあるのか。
じゃあ視点変えて、例えばエディタ等の
マクロ言語として使用する場合の
メリット・デメリットを教えてくれない?
非常に興味あるんだけど。
0082デフォルトの名無しさんNGNG
>>81
はぁ?emacs使えば?
0083デフォルトの名無しさんNGNG
>>80
Rubyがそのたぐいの処理に向いてないからです。しょせんPerl オブジェクト指向地方の方言じゃん。
0084デフォルトの名無しさんNGNG
>>81
Lisp のかわりに Ruby を積んだ Emacs みたいなイメージですよね。
おもしろいんじゃないでしょうか。
Ruby はもともと文字列処理は得意だし、悪くないと思いますよ。

JED というエディタに Ruby を組み込んだものは既にある(あった?)みたい。
0085デフォルトの名無しさんNGNG
あたまわるいひとばっかりなのはなんでえ?
0086デフォルトの名無しさんNGNG
>>80
irb は、Rubyの字句解析に相当する部分を全部自前でやっているから。
0087デフォルトの名無しさんNGNG
ruby 1.6.7 がリリースされているようです。アナウンスは月曜?
0088デフォルトの名無しさんNGNG
だって、くるなっていってんのに、きみみたいのばっか集まってくるんだもん。>>85
0089デフォルトの名無しさんNGNG
>>84
エディタのマクロ言語としてRubyを使いたい場合、
エディタにRubyを組み込むという手と、
Rubyでエディタを書いてしまうという手が考えられるけど
どっちがいいだろう。
0090デフォルトの名無しさんNGNG
>>89
Rubyで書いちゃう方が(使う方としては)面白いと思う。
その方が触ろうとする時サンプルソースも多いし、Squeak(Smalltalk)みたいに色々弄れるんじゃないかな、と思うけどEmacsはどんな感じ?
速度としては
http://www.bagley.org/~doug/shootout/craps.shtml から
http://www.bagley.org/~doug/shootout/lang/xemacs/ xemacs
http://www.bagley.org/~doug/shootout/lang/ruby/ ruby
うーん?
まぁ、2.0になれば速くなるだろうし、このままでもあまり問題では無いだろうけど。
0091デフォルトの名無しさんNGNG
>>91
ねぇ、ねぇ。Rubyで書かれたエディタなんていくらでもあるよね。昨日、今日できたプログラム言語じゃないんだし、真のオブジェクト指向言語で、とっても素晴らしいんだから、エディタなんか、みんな自分で作っているよね。
0092デフォルトの名無しさんNGNG
>>91
ハァ?
Rubyで疑似OSもつくれるよ。
0093デフォルトの名無しさんNGNG
RUNIXを作ろう。
プロセッサはRubyのコードをそのまま実行できるCPUを採用。
0094デフォルトの名無しさんNGNG
>>91
まあ tk や gtk でテキストウィジェッと出せばできたも同然だからな。
でも常用できるレベルにするのは大変でしょ。
0095デフォルトの名無しさんNGNG
ごたく並べてねぇで、エディタ出せよ、エディタ、ぐぉらあ!>>92
009692@低能NGNG
>>95
Rubyでコーディングなんてできません<(`^´)>
0097デフォルトの名無しさんNGNG
>>94
それは実用性のあるプログラムをRubyで書くのは無理だから止めた方が良いというアドバイスか?それとも実用レベルのプログラムを書けるやつがRuby界隈にはいないということか?
0098デフォルトの名無しさんNGNG
>90
その速度の比較だけど、比べにくくてよくわからんのだが Ruby って
Emacs Lisp より遅いの?
まあ lisp なんて処理系が単純だから高速であたりまえの気もするが。
0099デフォルトの名無しさんNGNG
>>97
単に「自分はコーディングできません」ってことじゃないですか?
0100デフォルトの名無しさんNGNG
実用レベルのエディタを作るのは言語に関係なく大変だろ。
既存のエディタが無数にあるのだから組み込めば良し。
0101デフォルトの名無しさんNGNG
>>92
おまえの書き込み低脳過ぎてこっちが恥ずかしくなるから
もう少し勉強してしゃべってくれませんか?
0102デフォルトの名無しさんNGNG
>>98
数値計算が絡むのは遅いよ
0103デフォルトの名無しさんNGNG
>>100
素直になれよ。ちゃんと認めたらどうだ。「Rubyじゃエディタはもちろんこれといったアプリケーションは何も作れません。現に何ひとつ目玉となるようなアプリケーションがありません。」って。
0104デフォルトの名無しさんNGNG
今の流れ、雰囲気でいくと
>>103の方が恥ずかしいね。
0105デフォルトの名無しさんNGNG
>>100
誰か Emacs に Ruby を組み込んでくれないかなあ。lispでなんか
書きたくないよ。lisp は残しとくのは構わないから。
RubyじゃなくてPerlでも良いけど。
0106デフォルトの名無しさんNGNG
>>101
ネタにマジレスしているんだか、ネタと分かって煽っているのかよく分からないな。
0107106NGNG
ネタ禁止スレだったらごめん。
0108デフォルトの名無しさんNGNG
>>105
自分でやれ。俺はlispのほうが好きだ。
0109デフォルトの名無しさんNGNG
>>105
Emacsに変なもの持ち込まないでくださいね。
0110sageNGNG
みんなして黙っていてもしょうがないよ。Rubyで作ろうよ、ね、エディタ。時間はかかるけどね。今のままだと、一生日陰者だよ。がんばってみんなを見返してやろうよ。絵に書いた餅じゃない、「これがRubyで作ったエディタだ、使ってみろ!」って。
0111デフォルトの名無しさんNGNG
WindowsアプリのマクロにRubyを組み込む為の分かりやすい
キットが有ればいいのに、とPythonが組み込まれたIriaを見て思った。
どう?
0112デフォルトの名無しさんNGNG
>>109
よりも
>>108の方がずっと好感が持てる。
0113デフォルトの名無しさんNGNG
>>111
そういえば Becky! に Ruby を組み込んだものってあったなあ。
0114デフォルトの名無しさんNGNG
>>110
別にそこまで卑屈にならんでもいいんじゃない?
エディタを作ってみようってのは悪くないけど、誰かが音頭をとって
ある程度たたき台を作らないとすすまないよ。
君がやってくれると嬉しいんだけど。
0115ageNGNG
>>113
そんな話ばっかりでお茶を濁しているから、Ruby全体がしぼんだちんちんみたいになっちゃうのよ。
0116デフォルトの名無しさんNGNG
>> 111
ttp://www.jin.gr.jp/~nahi/RWiki/index.cgi?cmd=view;name=ML+Topics%3A%3ARuby%A4%CB%A4%E8%A4%EB%B3%AB%C8%AF

が参考になるかも。
0117デフォルトの名無しさんNGNG
>>114
洩れのティムポは真のオブジェクト指向。だけど、彼女を最後までいかせたことは一度もないの。
0118sageNGNG
>>110
一番楽そうなのは Apollo の Phi::Editor か VisualuRuby + Scintilla かな。
どっちもRubyスクリプトの色付けが可能みたい。

Scintilla(http://www.scintilla.org/) は gtk+ でも使えるけど、
誰かRuby/GTKから使えるようにした人はいる?
0119デフォルトの名無しさんNGNG
>>118
いないんだって。真のガベージコレクションとイテレータを駆使しても解決できないみたい。
0120デフォルトの名無しさんNGNG
まともなエディタの規模になるとソースの可読性が問題になるからな。Rubyの可読性はPerlとさして変わらんでしょ。作るならJavaかPythonにしとけよ。
0121デフォルトの名無しさんNGNG
>>118
Scintilla はプログラミング言語の編集に特化したものみたいですね。
なかなかおもしろそう。
他にもいろいろ GUI ツールキットがあるから、wrapper になるクラスを
用意して、編集作業はそれを経由してやるようにするのが良いだろうか。
0122デフォルトの名無しさんNGNG
Scintillaじゃないけど、SciTeはPragProgのWindows Installerにもついてくるんだったっけ? これでRubyが編集できるから、みんなそれで事足りてるんじゃないのかな。
0123デフォルトの名無しさんNGNG
>>121
そのGUIのラッパというのもさんざん聞き飽きたよ。いつまで話だけしてんだよ。さっさと作れよ。
0124デフォルトの名無しさんNGNG
まあまあ、Rubyがデファクトスタンダードである事実は
変えようがないんだからさ。またーりいこうよ。またーり。
0125デフォルトの名無しさんNGNG
脳内デファクトスタンダード?
0126デフォルトの名無しさんNGNG
>>121
GUIラッパは、個人的な経験からいうとやめといたほうがよい。
抽象度のレベルにもよるけどね。漏れがヘタレだからうまくいかなかった
だけかもしれんが。
0127デフォルトの名無しさんNGNG
>>126
名前しか知らないが、
pythonのanygui http://anygui.sourceforge.net/
JavaのEclipseのSWT http://www.eclipse.org/articles/Article-SWT-Design-1/SWT-Design-1.html
RubyのLocana http://www.locana.org/

Locanaはクラスの名前が気持ち悪いし、どこまで使えるか
分からないので、今のところ様子を見てる。
0128デフォルトの名無しさんNGNG
>>127
RubyのGUIラッパ、ちゃんと作っている人がいるのではないの。やっぱ外人さんだね。カタログスペックをごちゃごちゃ並べたてるだけの日本勢はここらで手を引いたらどうだ。そのほうがRubyのためだぞ。
0129デフォルトの名無しさんNGNG
やがて日本のRuby厨房文化と海外勢の間で摩擦が起きて、海外Ruby勢はForkすると読んでいるのだが、どうよ。
0130デフォルトの名無しさんNGNG
>>128
別に関わりたい人が関わればいいんでないの?
海外勢だってスタートダッシュだけの放置プロジェクト沢山あるし。
割合はともかく優秀な人はどこにでもいる。
とにかく使い手が増えることが肝心。
0131デフォルトの名無しさんNGNG
>>122
> SciTE is a SCIntilla based Text Editor
って書いてるぞ。
以前のPragProgのWindows InstallerについていたRubyWinも
Scintillaを使っていた。RubyWinはIRBが使えて便利だったんだけど、
SciTEに取って代わられたな。

SciTEはRubyに特化しているわけでないから、
RubyのIDEの需要はあると思うが、どうよ。
0132デフォルトの名無しさんNGNG
PragProgのWindows Installerてなにさ
0133デフォルトの名無しさんNGNG
RubyWin はデバッグ支援機能ないしな。

IDE for Ruby

RubyWin http://homepage1.nifty.com/markey/ruby/rubywin/
C++ 製、Ruby 用 IDE の先駆け。最近は更新されてない。

RDE http://homepage2.nifty.com/sakazuki/rde.html
Delphi 製。デバッグ支援、入力補完など現代的な IDE の機能はそろっている。
ただ、使い勝手の面で作りこみが必要かな。

FreeRIDE http://www.rubyide.org/cgi-bin/wiki.pl
CVS にソースが載り始めたくらい。
きっちり目標を決めて作っている模様。
動く実装ができるまで時間かかりそう。

>>132
これ
http://www.pragmaticprogrammer.com/ruby/downloads/ruby-install.html
0134デフォルトの名無しさんNGNG
Ruby.NETをVS.NETで開発とかってできないのかな
0135デフォルトの名無しさんNGNG
>>134
できるYO!みんな使ってるYO!現実から目を背ける力さえあれば、実現できないことなんて何もないのさ!
0136デフォルトの名無しさんNGNG
>133さんきゅー
0137デフォルトの名無しさんNGNG
.NET 方面だと

NETRuby
http://www.geocities.co.jp/SiliconValley-PaloAlto/9251/ruby/netruby.html
C# で Ruby (のようなもの) を記述。

JRuby
http://jruby.sourceforge.net/
Java で Ruby を実装。

Ruby and .NET スレ @ ruby-talk
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/33851
0138デフォルトの名無しさんNGNG
>>133
RDEは補完とかソースブラウザーとか大雑把にやっている感じが
して、あまり好きではないな。とりあえずFreeRIDEに期待。

あと、MacOSXだけどRubyStudioってどんな感じ?
RubyStudio
http://www.ruby-lang.org/en/raa-list.rhtml?name=RubyStudio
0139デフォルトの名無しさんNGNG
@ ruby-talk は死滅スレみたいになってるね。anywhere chu-bo
0140デフォルトの名無しさんNGNG
>>138
アダルトサイトか?
http://homepage.mac.com/WebObjects/FileSharing.woa/wa/default?user=canyonrat&templatefn=FileSharing.html&aff=consumer&cty=US&lang=en
0141デフォルトの名無しさんNGNG
Rubyそのものは置いとくとしてもさ、プログラミング言語の発展というものに対して戦略がなさ過ぎるよね。まあ、まつもと尊師自身が「好きでつくってるだけ」というのだから、しょうがないけどさ。

言語マニアを除いた一般プログラマにとってはいくつもの言語をマスターしなくちゃならないのは苦痛なわけで、新しい言語を学ぶにはそれなりの動機付けが必要なんだよ。
JavaやPythonなんかはその新分野の開拓に成功したけれども、Rubyは結局Perlの焼き直しでしかなくて、これといった得意分野がないじゃん。何でもできます、でもどれも中途半端。Perlと同じように読みにくいしさ。

bashの前に敗れた去ったCシェルと同様の運命を辿ると思割れ。
0142デフォルトの名無しさんNGNG
別に大掛かりな発展なんてしなくても、
絶滅しない程度に使われていけば、それでいいんじゃないのかなぁ
まつもと氏が好きで作ってるんなら、自分は好きで使ってるだけだし。

分野としてperlとほぼかぶってるってのはそうだと思う。
でも、別に「だったらperl使えばいいじゃん」って言う人は別にrubyなんて覚えなくて
perlでやればいいと思う。
自分はperlよりrubyのほうが好みだからrubyを使ってるだけ。
0143デフォルトの名無しさんNGNG
自分はrubyなんか眼中にないから使わないだけ。
0144デフォルトの名無しさんNGNG
自分はrubyなんか仕事にならないから使わないだけ。
0145デフォルトの名無しさんNGNG
自分はrubyが原因で首吊りたくないから使わないだけ。
0146デフォルトの名無しさんNGNG
そんなことよりMINDを発展させるべきだ。
0147デフォルトの名無しさんNGNG
俺も好きで使っているから、perl/pythonと競合しようが、 これからも使っていくつもり。 色んな所で認められて、広く使われるようになった方が もちろん良いけどね。
0148デフォルトの名無しさんNGNG
pythonに得意分野があるというのならrubyにもある。
0149デフォルトの名無しさんNGNG
>>148
ぼうや、おねいさんが聞いてあげるから言ってごらん。
0150デフォルトの名無しさんNGNG
>>141は本当にRuby使ったこと有るのか?Perlと同じように読みにくい???
あと、Cシェルが敗れ去ったっつーのも、なんだ。あれだな。まぁいいが。bashが勝ってるのなんて・・・
0151デフォルトの名無しさんNGNG
LISPの人はさすが下積みが長いだけあって、現状分析が的確だ。
http://www.shiro.dreamhost.com/scheme/trans/being-popular-j.html
0152デフォルトの名無しさんNGNG
RubyがPerlより優れている点ならたくさんありますよ。
オブジェクト指向であることも一つです。
それに、Perlみたいに弱い言語じゃないことも事実です。
エラー処理については、第一級レベルだと思います。


0153デフォルトの名無しさんNGNG
また始まったよ...
0154デフォルトの名無しさんNGNG
てっかさ、Rubyが使わないから関係ないとか、プログラマにとってたくさん学ぶことは苦痛とか行ってるけど、
Perlみたいに、堕落した言語使ってたら、人間馬鹿になって、最終的に
プログラマとして無意味になりますよ。ただの自惚れじゃないんですか?
それに、プログラミング言語は、それぞれ特徴があるけど、(Perlユーザーは堕落するとか)
ほんとにプログラミングが出来る人間なら、大半の言語は同じようにに見えるんじゃないの?
基本的には、同様ですからね。
0155デフォルトの名無しさんNGNG
所詮はス(以下略
0156デフォルトの名無しさんNGNG
そうですね。スレ違いです。
0157デフォルトの名無しさんNGNG
>>154
端から見ると、どうみてもRubyはPerlそっくりだけど。
0158tripNGNG
ASMTNUOE : #-xhU?zhJ
ASMN9CQ6 : #F\KFJd^*
ASMho0u6 : #Ey「'Y%nc

VB.oJQOc : #]xP:2サ.[
VBe6Xi.Q : #BxPssNQP
VBqk7G2E : #NxP:シ_|/

OBJFuKbw : #Vy%RC)Fk
OBJF1MTg : #1y%*fM4+
OBJOq.uM : #iy%@~」3Q

EXEwd/xo : #PI5w23.a
EXEH.1yY : #XI5dBm],
0159デフォルトの名無しさんNGNG
>>156
いや、所詮はスク(以下略
0160デフォルトの名無しさんNGNG
つーかさ、158みたいなわけのわからない書き込み多いんだけど、
Ruby信者って普通の会話もできないクズばっかりなの?
0161158NGNG
>>160
クソをクソらしく利用してやったんじゃねえか。
勝手に決め付けんな低脳
0162デフォルトの名無しさんNGNG
>141
そういう意味ではHSPの方が成功しているという事実・・・

Rubyも世俗化してWinでexeファイルが作れるようにしろ!
言語の実装上無理か・・・
0163デフォルトの名無しさんNGNG
Ruby>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>158
0164デフォルトの名無しさんNGNG
ワーイ158がキレタ!
            158がキレタ!
0165デフォルトの名無しさんNGNG
うわ、すげー質悪い
0166158NGNG
ちょっと冷静になろう。Ruby厨はふたことめには「Perlは汚い」と言うが、なぜその汚い言語がここまで普及しているのか、どうして考えようともしないのか。
開発者のパワーでいえば、間違いなくインターネット上でダントツ一等賞の言語がPerlだぜ。「Rubyに決定的に欠けているものが、Perlにはあるのかも...」と発想するセンスはないの?
0167デフォルトの名無しさんNGNG
Rubyの良さがわかんない人にRuby勧めたってしょうがないよー
Ruby信者はうざいだけだよー
0168158NGNG
段々わかってきたろ?Rubyはな、Perlには勝てないんだよ。
実は、166で言ったことはほんの序章に過ぎないんだ。
本当のPerlの力とは、天才ハッカーの作者が作り出した
「Perl教」。これにある。これに入ればなにもせずに
ただでどんどんお金が入ってきて、しかも願い事は全てかなうという
最強の宗教だ。さぁ、今すぐ入会を会をカイヲカイヲカイヲ
0169158NGNG
Perlの力にかかればな、まつもtなんかチョイだぜ、チョイ。指でな。
指でチョイってやるだけなんだよ。そうだ。チョイだ。
それに追い討ちをかけるかのごとくチョイとやれば、
もうRuby厨なんかチョチョイノチョイだ。わかるか。チョイなんだよ。指でな。
あとは、わかるな?
0170デフォルトの名無しさんNGNG
>>141
そうはいうものの、Ruby レベルに発展した言語自体少数だよ。
かなり成功してると思うが。

>>152
弱い言語ってなんだそりゃ。
Perl6 でかなり機能が追加されるから、
現在ウィークポイントとなっている言語仕様は改善される(はず)。
まあ、同時に今よりごちゃごちゃするが。
Python もイテレータ装備した。
上品に使う分には Ruby の言語仕様の機能的優位性はないと言っていい。

>エラー処理については、第一級レベルだと思います。
rescue すべき例外が実行前に分からないのが Java と比べて相当面倒。
開発環境でサポートすべき点だ。

>>162
バイナリコードに落とすのではなく、
パックして exe ファイル作るツールはある。

rb2exe
http://www.os.rim.or.jp/~eban/
rb2exe (同名)
http://yuya.4th.to/ruby/rb2exe/
rbwrap
http://www.ce.chalmers.se/~feldt/ruby/applications/rbwrap/
0171158NGNG
>>170
クソをクソらしく利用してやったんじゃねえか。
勝手に決め付けんな低脳
0172158NGNG
>>170 スレ違い。
おまえらマジメにPerlの事について語ろうぜ!
0173デフォルトの名無しさんNGNG
>>166
QuickHack に適しているから
それとちょうどインターネットの成長と時期が合ったのも普及の要因
0174デフォルトの名無しさんNGNG
ム板も最近こんなのばっかりだな…
0175デフォルトの名無しさんNGNG
>>166
Perlが先に普及したからに決まってんじゃんよー
時系列考えなー

そもそもPerlが存在しなかったらRubyも存在しなかっただろうし。

0176デフォルトの名無しさんNGNG
QuickHack(フ?フ?
0177デフォルトの名無しさんNGNG
>>173
90年代初頭、Perlはすでに広く使われていたぜ。DOSエクステンダ上で。日本でもCマガジンなんかが特集していたし。
0178デフォルトの名無しさんNGNG
Perlはめちゃくちゃ必要だけど、
Rubyは別に存在しなくてもいいよね。
0179デフォルトの名無しさんNGNG
>>177
そっか。やはりテキスト処理の能力かね。
Perl 以前のテキスト処理に強い言語って何があるかな。
awk と sed か。
0180デフォルトの名無しさんNGNG
>>141
>そういう意味ではHSPの方が成功しているという事実・・・
>Rubyも世俗化してWinでexeファイルが作れるようにしろ!
>言語の実装上無理か・・・
実装上無理って、>>170にあるように存在するジャン。どーせソースも読んでない癖
にえらそうなこと言うなよ。こういう計算機学の素養を感じさせない人間がRubyを攻撃するんだよね。
たぶんHSPとかDelphiとかの厨房向けツールを使っただけでいっぱしのプログラマに
なったつもりなんだろーな。煎ってよし。
Rubyも初心者向けだけど、使う人はコンピューターサイエンスの分かった人が多い。
なぜなんだろう?
0181デフォルトの名無しさんNGNG
日本人がつくった言語が天下をとれるわけないだろ。
0182デフォルトの名無しさんNGNG
やっぱりアンチRUBYはサヨク
0183デフォルトの名無しさんNGNG
Rubyな皆さん。あなたたちは180>>みたいなのを大量生産して、世にのさばらせているのですよ。この責任をどう考えているのですか?
0184デフォルトの名無しさんNGNG
温泉に逝って作者の話聞いてきます
http://spa.jssst.or.jp/
0185デフォルトの名無しさんNGNG
え?
>たぶんRuby使っただけでいっぱしのプログラマになったつもりなんだろーな。煎ってよし。
>Ruby使う人はコンピューターサイエンスの分かってない人が多い。
>なぜなんだろう?
0186デフォルトの名無しさんNGNG
>>180 大筋同意だが、HSPもDelphiも厨房向けツールではない。
0187デフォルトの名無しさんNGNG
>>185
>なぜなんだろう?
つーかキチガイがやたら多い
0188デフォルトの名無しさんNGNG
>>187
つーか基地外はRubyをネタにするただの荒らしだと思われ…
0189デフォルトの名無しさんNGNG
٠٩٧٣هخخخخخخعف٤٣صضسيسسسسسغ(|)
0190デフォルトの名無しさんNGNG

 / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 |  はいはい
 |  取り壊しの邪魔だから出てった出てった
 \___  ______________
        |/_____
   , --、    |  |._ |   rubyはやっぱクソだったな!     まったくだ
  f=+=l.    |  ||.R|.|        ∧_∧       ∧_∧
  (,,゚Д゚).   |  ||.u|.|       ( ・∀・) ニヤニヤ (・∀・ )
  ⊂  つ .  |  ||.b||       (    つ     (    )
 〜|  | 彡  |  ||.y||       | | |       | | |
   し`J    |  | ̄ .|       (__)_)      (_(_)
 ~~        ̄ ̄ ̄     ~~
                           ~~

   ゴゴゴゴゴ

      /ゝ     ┌―┐ <--Ruby
      / ●.  ┌┘品└┐
  {{ []台      | ロロ ロロ.|
  ̄ ゚゚゚゚゚゚̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄


         \\あぼ――ん/ /
            (´;)
        /\  (;)┌―┐
        / <<●(´;;;) └┐ }}
       []台   (;;⌒);;;) ロロ.|
  ̄ ̄ ̄ ゚゚゚゚゚゚̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄

                          ―Ruby完―
0191デフォルトの名無しさんNGNG
>>189こういうのがほんとの荒らし。なにいってんの?>188
0192デフォルトの名無しさんNGNG
Ruby以外の言語は糞。何度言ったら分かる?
0193デフォルトの名無しさんNGNG
>>189=191
いいかげんにしる!
0194デフォルトの名無しさんNGNG
 ∧||∧
(  ⌒ ヽ ああ、、もうだめぽ。
 ∪  ノ この板で紅玉の繁栄はありえないぽ。
  ∪∪  
0195デフォルトの名無しさんNGNG
       /         /.    │    ヽ          \
 ∧ ∧/          /.     │     ヽ         ∧\∧
(  ⌒ ヽ           /      │      ヽ        (  ⌒ ヽ
 ∪  ノ          /      │      ヽ         ∪  ノ 
  ヽ_),)           /       │       ヽ        し' l_ノ
       ミ      /       │        ヽ      
            ∧ /∧      │       ∧ヽ∧  彡 
           (  ⌒ ヽ      │      (  ⌒ ヽ
            ∪  ノ ミ  ∧│∧  彡   ∪  ノ
             ヽ_),)    (  ⌒ ヽ      し' l_ノ
                     ∪  ノ
                      ヽ_),)


0196デフォルトの名無しさんNGNG
   ||     ⊂⊃
   ||    ∧ ∧
   ||    (  ⌒ ヽ
 ∧||∧   ∪  ノ  
(  ⌒ ヽ 彡  V   
 ∪  ノ  フワーリ
  ∪∪
0197デフォルトの名無しさんNGNG
   ||     ⊂⊃
   ||    ∧ ∧   
   ||    (  ⌒/   
 ∧||∧   ∪ / /ヽ   消えろ
(  ⌒ ヽ 彡   / ノ   
 ∪  ノ      V
  ∪∪
         ∧ ∧,〜  トドメ!
        ( (⌒ ̄ `ヽ    _
          \  \ `ー'"´, -'⌒ヽ
         /∠_,ノ    _/_
         /( ノ ヽ、_/´  \
       、( 'ノ(     く     `ヽ、
      /`   \____>\___ノ
     /       /__〉     `、__>
   /        ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  /
0198デフォルトの名無しさんNGNG
クソスレニハクソレスガオニアイダヨ
0199デフォルトの名無しさんNGNG
      ∧_∧
      ( ´∀`)
   γ⌒" ̄ `Y" ̄`⌒ヽ
  /´  、   ¥   ノ  `ヽ.
 / ,-ュ人` -‐´;`ー イ` ェ-、 ヽ
 l 「  } i 彡 i ミ/ {  `ノ
 ` `ー' .}    {  `ー'´/ ̄ ̄\
     /      \||  |  Ruby! |
    /   /`ヽ、 i |i  \  _/
   /  ノ    l| | i|   //
   \  `ヽ    |    ||  /
     \ \  l|| l|i | ,, '⌒Y
      ノ  _>‘、|l  |・i/ノ , ノ >>1
     <.,,_/~,-・i |゚;・li。i,・'(__,.J
0200デフォルトの名無しさんNGNG

                        ∧_∧  / ̄ ̄ ̄
                      ∧( ^∀^)< 200ズザー
                    ∧(  ( つ ⊂ )  \___
                  ∧( ( つ.)  ) )
                ∧( ( つ  (__)_)
              ∧( ( つ (__)_)
            ∧( ( つ (__)_)
          ∧( ( つ (__)_)
        ∧( ( つ (__)_)
      ∧( ( つ (__)_)
    ∧( ( つ (__)_)
  ∧( ( つ (__)_)
 ( ( つ (__)_)
 ( つ (__)_)
 | (__)_)
 (__)_)

0201デフォルトの名無しさんNGNG
ソシテクソゲンゴニハクソスレガオニアイ
0202141NGNG
>180
すまん、言い方が悪かった。
何が言いたいのかというと、HSPは言語仕様などに問題が多い厨房ツールかもしれんが
ターゲットとなるユーザーを定めて、結果として成功してるだろ、ということ。
Rubyを流行らせる気があるのなら、そういった戦略をもっと考えるべきだよ
ずっとマイナー言語のままでいてもいいのなら何も言わないが。

0203デフォルトの名無しさんNGNG
色々あったけど、結局Rubyで書かれたエディタが存在しないのはなぜなんだ?おまえら、答えてください。
0204デフォルトの名無しさんNGNG
Perlで書かれたエディタってあるの?
0205デフォルトの名無しさんNGNG
>>184
オレも逝ってくるよ
いま発表スライド書いてる最中(w
0206デフォルトの名無しさんNGNG
>>204
あるよ。わけのわかんないのがうじゃうじゃ。オライリーから本が出ているのにエディタが書けない言語って、RubyとSQLくらいじゃない?
0207デフォルトの名無しさんNGNG
>>206
ほほー。
てか書けないの?Rubyでエディタは作れないの?
0208デフォルトの名無しさんNGNG
>>206
結局 Ruby を攻撃している人って、Rubyのことをろくに調べもせずに
攻撃しているんだよね。

まあ、Ruby厨の振る舞いを見ていれば腹を立てる気持ちは
わからんではないけど、それじゃ荒しに反応しているのと一緒。
Ruby厨なんてアホなんだからほっとけばいいんだよ。
同じレベルに落ちて反論しているなんて見てて情けないよ。

Ruby で書かれたエディタなら昔からある。このスレの上のほうを見ろ。
0209デフォルトの名無しさんNGNG
>>202
せっかく Ron Jeffries も Ruby に興味もってくれていることだから、
XP と連携したプロトタイピング言語というのはどうかな。
UnitTest だけでなく、リファクタリングツールも開発して。
ってプロトタイプでリファクタリングしてどうする…
それと、Perl の後追いではあるが、
Web アプリケーション方面で実績ができれば道が開けると思う。
WALRUS に期待してる。
dRuby も手軽で面白いから使い道を見つければ。

>>203
いや、あるけどさ。実用性はともかくとして。
つうかエディタが作れると何がどうなんだっけ?
UNIX だと Emacs と vi という二大エディタがあるから、
「Ruby で作る」 という以外にモチベーションがない。

mine (Ruby/Tk)
ftp://ftp.ruby-lang.org/pub/ruby/contrib/mine-0.0.4.tar.gz
VRedit ( Ruby/Gtk )
http://priest.team-ct.org/~dellin/ruby/#vRedit
Apeed ( apollo )
http://member.nifty.ne.jp/take_tk/apollo/index.htm
RuEdit ( Ruby/Gtk )
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/22766
0210デフォルトの名無しさんNGNG
>>208
なんだ、あるんならあると早く言ってくれよお。けど、このスレの上を読めって、そんな殺生な。どこですかいな?
0211デフォルトの名無しさんNGNG
>>209
志が低いのお。Emacsってエディタの最終完成型なの?エディタってものがこの後進化する余地ってないの?EmacsがLISPでそうしているみたいに、Rubyでエディタを書いて、Rubyで拡張できる、そうすればもっとすごいものができる、とか考えないの?
0212デフォルトの名無しさんNGNG
>211
Rubyは関係ないけど、そういうマクロで拡張できるエディタっていう
コンセプトはEmacsが最終形というか、もうすでにやりすぎてるって感じ。
0213sageNGNG
>>206, >>210
Rubyで書かれたエディタとしては >>209 が挙げたのが有名で、
その他のRubyで書かれたエディタは知らない。
>>118 にエディタ用の拡張ライブラリとして
2つほど上がっているが、アレはエディタではない。

>>209
Walrusはobaqライブラリだけ取りだして、Webrickと組み合わせると面白そう。
上手くやればZopeまがいを作れるかも。
ただ、日本語のドキュメントすら不足している現状では
Walrus/obaqは広まりそうにはないな。
最近、開発が止まっているみたいだが、IOWAはどう?

エディタに関しては激しく同意。
0214デフォルトの名無しさんNGNG
>>212
ああ、夢がないのね。どうして今すでにあるエディタとか、マクロというレベルでしか発想できないのかね?Emacsなんて4半世紀も前に設計されたものだぜ。どうせ考えるなら、これから25年後のエディタを考えたら?
あと、自分で自分を拡張し、その拡張された自分自身でさらにもっと拡張するって手法自体はソフトウェア開発において、今後も長く続く手法だと思うけどね。
0215デフォルトの名無しさんNGNG
>>213
あの、Rubyを攻撃するつもりはないんですが、ZopeとWalrusを一緒にするのは止めていただきたい。現状はEmacsとメモ張を比較するようなもんなので。
0216デフォルトの名無しさんNGNG
んん・・・
オレも煽り無しで言いたいのだけど
Rubyが優れていても業務に使えない言語を学ぶのは躊躇してしまう。
Delphiもそうなんだけど。

RubyもDelphiもそのユーザーが擁護する気持ちは分かるけど
それがスキルとして認められるのか? と言えば疑問だし。
0217デフォルトの名無しさんNGNG
>>215
Zopeは詳しくないが、WalrusとZopeではレベルが違うのは分かっているつもり。
そういう意味をこめて「まがい」を付けた。
0218デフォルトの名無しさんNGNG
>>216
つーことは VB、C++、Java、C# しか学ばないと?
0219デフォルトの名無しさんNGNG
>>215
あの、Zopeを攻撃するつもりはないんですが、

17 名前:名無しさん@お腹いっぱい。 投稿日:2001/11/14(水) 23:34 ID:???
Zopeか。
ちょっと使ってみた感想としては技術ヲタ向け玩具の最高峰という印象。
基本的に遅い、原因不明落ち、妙な独自仕様で汎用性無しと、業務系で使うにはちょっとためらう要素が満載。
技術的には結構面白い構造してたりするので趣味の範囲内でいじってみようかなとか思っているが。

だって。まあWalrusは開発始まったばかりなのでZopeにも追いついていないんだ
ろうとは思いますが。
0220デフォルトの名無しさんNGNG
>>216
正直, Ruby は簡単に使える(それはすばらしいことなんだけど)ので、
使えてもスキルつーほどのものにならない。差別化しにくいから。
ある意味で VB と一緒。
道具としては便利だし、言語マニア的フィーチャーに溢れているから
試してみるくらいしてもよいと思う。簡単だし。
0221デフォルトの名無しさんNGNG
>>219
あの、Walrusを攻撃するつもりはないんですが、

「開発始まったばかりなのでZopeにも追いついていないんだ」というのは「身のほどを知れ、誰にモノ言ってんだゴルァ!」という気がします。伊達に「技術ヲタ向け玩具の最高峰」を名乗っているのではありません。
0222デフォルトの名無しさんNGNG
ZopeヲタとRuby厨って似ているなあ。
0223デフォルトの名無しさんNGNG
>211
そういう君はEmacsを超えるものを作ったのか?
言いがかりにしか聞こえんが。
0224デフォルトの名無しさんNGNG
そんなに褒めるなよ。照れるぜ。>>222
0225デフォルトの名無しさんNGNG
>>223
そうゆう君はEmacsを越えるものを発想するぐらいのことはできんのかね?
頭が悪いようにしか見えんが。
0226デフォルトの名無しさんNGNG
ちょっと言い方が意地悪いと思うけどね。>>225
既存のものの後追いだけじゃメジャーになれんというのは、その通りだと思う。
0227デフォルトの名無しさんNGNG
>>226
既存のものの後追いだけじゃ駄目ってのは、たしかにそうだと思う。論点が
ちょっとずれている気がしないでもないが。
でも Ruby を攻撃している人って、自分は何もできないくせに口ばっかり
のやつが大半じゃないか?。あと Ruby のことをろくに知りもしないやつとかね。
やってることは Ruby厨と同じくらいたちが悪い。ようするに Ruby攻撃厨だな。
Ruby厨はレベルが低くてつっこみどころが多いのはたしかだが、のせられている
やつもみっともないと思うよ。それとも確信犯なのかね。
0228デフォルトの名無しさんNGNG
>>227
だからあ、きみみたいのをRuby厨て言うんだからあ、自覚してよ。
0229デフォルトの名無しさんNGNG
なんでRuby関連のスレって荒れてるんだ?(数が多いからってのはわかる)

俺はRubyが日本人が作ったスクリプト言語でオブジェクト指向って程度しか
知らないんだけど、なにが理由で叩かれてるの? 雑誌だとマンセー記事
ばかりだしわけわかんねぇよ。

正直、「Ruby厨うざい」とか「Ruby糞」だけだとなにが悪いのかさっぱりな上に
むしろそう言っている奴の方がよほど厨房に見えるのだが。Ruby使いが増えると
なにか困るのか? アホ言語だったらメジャーになられると迷惑ってのは理解
できるから、アンチのひとはどのへんが嫌いなのか真面目に教えてくれ。

門外漢として思い付くのは、

1.言語仕様が不細工
2.実行速度が遅い
3.ライブラリが未整備
4.日本人以外使わない
5.作者の人格が嫌い

てなところだがどうよ。
0230デフォルトの名無しさんNGNG
自分はRuby愛用者なので、公平な意見ではないかもしれないが。
(ちなみに、仕事で使ってる(た)のは、C,C++,Java。趣味ではPerl)

1.言語仕様は好き嫌いは別にしてすっきりしてると思う。
2.遅い。これは事実。
3.まぁ、少ないかもしれない。が、荒れる理由にはならない。
4.絶対数では、外人(英語圏)のほうが全然上だと思われる。MLの
流量も4,5倍有る。
5.愛想のある人ではないが、そもそもRuby使ってなければ、松本
氏の発言なんて見かけないだろう。

たんに、マイナーなイメージの割に使用者が多いので、ネタになりす
い
だけだと思うが。
0231デフォルトの名無しさんNGNG
全部いいがかりじゃないか。。>>>229
0232デフォルトの名無しさんNGNG
>>228
客観的に見ても >>227 より >>228 のほうがずっと厨に見えるな。
Ruby厨にしろ、Ruby攻撃厨にしろ、ウザい連中につかまっちゃって
気の毒に思う俺は主に perl 使い。
0233デフォルトの名無しさんNGNG
>>227
板の書き込みを良く見てると
上がっているスレに満遍なく煽りレスを
入れてる人がいたりするのが分かるよ。

叩くのに理由はいらない。
何にでも当てはまるような言い方をすれば良いだけ。
それと Ruby の場合叩き方のテンプレも豊富だったり。
0234デフォルトの名無しさんNGNG
>>229
「って程度しか/知らないんだけど」って言ってるヤシが
「思い付くのは、」などと煽るから荒れるんだろが (゚Д゚)ゴルァ

(;´д`).。oO(ム板なのにプの字にトライすらしないやつらだろ?)
0235229NGNG
ああ、すまん。
「煽り文句として思い付くのは」という意味だ。

結論としては、煽っている奴は単なる好き嫌いを吠えてるだけということでよろしいか。
0236デフォルトの名無しさんNGNG
これまであまり言及されなかった事なんだけれど、
OOを前面に打ち出した事で低知識階級の反感を
買ってしまった。というの実際のところだろう。
0237デフォルトの名無しさんNGNG
ちょっと目を離すとすぐこれだ>>236

00くらい知ってるぜ。00000000だろ。
0238デフォルトの名無しさんNGNG
>>236
「低知識階級」はかわいそうだろ。
0239デフォルトの名無しさんNGNG
OOくらい分かるだろう。。。
だれでも。
024000NGNG
真のオブジェクト指向。

これといって何が作れるってわけでもない。

けど、真のオブジェクト指向。

それが何の役に立つのかわからない。

でも、真のオブジェクト指向。
0241デフォルトの名無しさんNGNG
alias の引数に制御構造を使えないのが辛い
(defalias 'hoge
(if CONDITION
'fuga
'moge))
みたいなのが出来ないのは面倒スギ
0242デフォルトの名無しさんNGNG
alias はシンボルに別名を与えるだけだかんね。
マクロ的なことができると可読性が落ちるというのもあるかな。
今でも eval 系を駆使すれば(ある程度マクロ代わりになる)、
いともたやすく他人が読む気をなくすコードにできるけども。
0243デフォルトの名無しさんNGNG
意味不明瞭だな。

s/落ちるというのもあるかな/落ちる/
0244デフォルトの名無しさんNGNG
>>241

class Hoge
def hoge
p 123
end
def fuga
p 456
end
alias :foo :hoge
alias_method :baz, (:fuga if $DEBUG) || :hoge
end

h = Hoge.new
h.foo
h.hoge
h.baz

Module#alias_method ならメソッドなので、
こういうこともできるけど、ちょっと違うかな?
自分ではこんなのを使おうとは思わないが。
0245241NGNG
>>244
あぁ、だいたいそんな感じです。ありがとう。
ただ、今いじってるのは小さなスクリプトなので
クラスとか設けてないんだけど、クラスを指定してないと
alias_method は使えないみたい...。使いにくいなぁ。

>自分ではこんなのを使おうとは思わないが。
うーん、こーいう考えって Ruby には向いてないのか...
へこむなぁ。
0246デフォルトの名無しさんNGNG
Rubyってただ日本人が作ったから愛国心で
みんな(・∀・)イイ!て言ってるだけだろ?
0247 NGNG

    おはよう 
0248デフォルトの名無しさんNGNG
本屋で256倍シリーズのずらっと並んだ背表紙を見るたび
ユーザに恵まれてないんだなあと思うよ
0249デフォルトの名無しさんNGNG
>246
そうなんだよね
こまったもんだ。
0250デフォルトの名無しさんNGNG
「低知識階級」の嫉妬はみっともないねぇ
OO理解できなくても生きていくことはできるから気にするな
0251デフォルトの名無しさんNGNG
ruby がすごいっていう人は
ruby に移植してみて
おれにはどんなことをしてるのかさっぱりわからん
有名だけどね
#!/usr/bin/perl -w
# 531-byte qrpff-fast, Keith Winstein and Marc Horowitz <[email protected]>
# MPEG 2 PS VOB file on stdin -> descrambled output on stdout
# arguments: title key bytes in least to most-significant order
$_='while(read+STDIN,$_,2048){$a=29;$b=73;$c=142;$t=255;@t=map{$_%16or$t^=$c^=(
$m=(11,10,116,100,11,122,20,100)[$_/16%8])&110;$t^=(72,@z=(64,72,$a^=12*($_%16
-2?0:$m&17)),$b^=$_%64?12:0,@z)[$_%8]}(16..271);if((@a=unx"C*",$_)[20]&48){$h
=5;$_=unxb24,join"",@b=map{xB8,unxb8,chr($_^$a[--$h+84])}@ARGV;s/...$/1$&/;$
d=unxV,xb25,$_;$e=256|(ord$b[4])<<9|ord$b[3];$d=$d>>8^($f=$t&($d>>12^$d>>4^
$d^$d/8))<<17,$e=$e>>8^($t&($g=($q=$e>>14&7^$e)^$q*8^$q<<6))<<9,$_=$t[$_]^
(($h>>=8)+=$f+(~$g&$t))for@a[128..$#a]}print+x"C*",@a}';s/x/pack+/g;eval

0252デフォルトの名無しさんNGNG
>246,249
何でLinuxが発展したか知ってるのか?
Linuxの開発者にはなぜヨーロッパ人が多いのか知ってるのか?

ヨーロッパ人のアメリカに対する反発心からなんだよ
アメリカに迎合しすぎる日本人にはホントあきれるよ
もっと日本人としてのアイデンティティを持てよ、おまえら。
0253ななしさんNGNG
>>253
またドキュソなことを。るび厨ばかにされるだけだよ。
Linuxの代替はそのころなかったじゃないか。

それにLinusやGuidoは今アメリカの会社ではたらいてるんだけど反発心で
技術のない人はどう反応したらいいのかね?
0254デフォルトの名無しさんNGNG
252も変だが253も何がいいたいのか良くわからん。
本質と関係ないところでくだらん議論はやめよう。

Ruby は日本以外でも使っている人は多い。正確な数は測りようもないが、
MLの流量などを見ていると日本以外で使っている人のほうが多いんじゃないか?

雑誌なんかでとりあげられるときに日本発の言語ということが(めずらしいので)
クローズアップされやすい傾向はあると思う。

まあ日本人としては、作者に直接日本語で質問したりリクエストしたりしやすいって
のはメリットのひとつかもしれない。ドキュメントの質や量は、もはや日本語より
英語のもののほうが上だろう。
0255252NGNG
プログラマという人種は良くも悪くも合理的なのかな?
愛国心という不合理な心理を持ち込むのがいやなのか?
それとも単にアメリカ迎合主義?
0256デフォルトの名無しさんNGNG
多くの人に使ってもらったほうがフィードバックが多い。
それだけだろ。
0257デフォルトの名無しさんNGNG
日本生まれだから人気ってことは無いでしょう。

外国でもぼちぼち使われているのでは?
http://www.pragmaticprogrammer.com/ とか
0258デフォルトの名無しさんNGNG
>>257
まぁ、使いたい人が使うわけ。だよね。
http://www-6.ibm.com/jp/developerworks/linux/011102/j_l-ruby1.html
0259デフォルトの名無しさんNGNG
>>252
一般日本人に愛国心が希薄なのは偏った戦後教育の結果。
ほとんどの国では自国への愛国心が育つような教育をするのが常識。
中国・韓国などは国家戦略として日本人の愛国心を失わせるような対日本外交を行っている。
板違いだな。
SAPIO読め(藁
0260Ruby!NGNG
>259
つまりこの板のアンチ厨どもはスパイだったということですね(w
まあ気づかないうちにスパイになるということは割とありそう。
真相がわかったところで、
Rubyマンセーーーーーーーーーーーーーーーーー!!!!!!!!
Ruby>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>Perl
Ruby以外の言語は糞言語です。
はぁ。すっきり。
0261デフォルトの名無しさんNGNG
Rubyには260みたいのがたくさんいて、みんなシアワセだね。
0262デフォルトの名無しさんNGNG
>>261
260みたいなのがいて、むっちゃ迷惑しています。察してください。

というか 260 は低知識階級のジサクジエンだろ。おもしろくもなんともない。
荒しはくるな。
0263デフォルトの名無しさんNGNG
>>262 (´-`).。oO(ハゲドー)
てか、職場でセッセコセッセコと、ツールを Ruby で書いているんだが、
同僚にスクリプトを使って貰えなさそうであるということに気づいた漏れ漏れ。

蓋し、萬國のPG労働者は Ruby くらい使えるようになれよ、と。
0264デフォルトの名無しさんNGNG
いま就職活動中なんだけど、
セミナーの社員に質問するコーナーで使ってる言語を聞くと
Perl や Ruby でツールを作って…という話を結構聞くよ。
0265デフォルトの名無しさんNGNG
ヽ(;´д`)ノ
Windows 98 SE.

Ruby 使って、 hoge.lzh みたいな書庫に
foo.doc みたいなファイルを
yyyymmdd_hhmmss_foo.doc みたいな名前でガシガシと
突っ込んでみたかったんですが…

書庫に突っ込むファイルの名前を任意にしたいっつー時点で
「テンポラリなファイルを作んなきゃいけねーのかyp!」
「DOS窓の copy とか xcopy とか使わなきゃ、なのかモナー」
「ファイル作ってから lha32.exe を動かすっつー同期は、どうよ?」
「たけ(tk)さんの Archives.txt をためしてはみたんだけどさ、
 DLL のほうの仕様が変わっちゃってるみたいで、なんだかなぁ…」
などと、悶絶して死にそうです。

せっかく、 WSH で やろーかなっつー迷いを払拭したところダターので

∧ ∧
(´-`).。oO(だれか救ってくれろ)
 つーことで禿規模。禿規模。
0266デフォルトの名無しさんNGNG
>>265
圧縮ファイルの形式がlzhでなくて良くて、
cygwinのrubyを使っているなら(zlib.soも必要?)、RAA の
Ruby/zlib + rubyzip が良いんじゃない。

Ruby/zlib http://www.blue.sky.or.jp/atelier/ruby/
rubyzip http://sourceforge.net/projects/rubyzip

試しに書いたサンプル。

require 'zip'
require 'find'

files = []
Find.find(ARGV[0]) do |filename|
if FileTest::readable?(filename) and FileTest::file?(filename) and /.*\.rb$/ =~ filename
files.push(filename)
end
end

Zip::ZipOutputStream.open("exampleout.zip") do |zos|
files.each do |name|
zos.putNextEntry(name)
File.open(name){|f| zos.puts(f.read) }
end
end

上のスクリプトで作ったzipファイルは
cygwinのunzip/Lhut32で解凍できたよ。
0267266NGNG
>>266
zlib.soはlibz.aの間違い。
すまん。逝ってくる。
0268265NGNG
>>266-267
(´д`)ノ  激しくありがとうございます。
追って経過・結果をお知らせします。
0269デフォルトの名無しさんNGNG
Rubyスクリプトでsetuidなことをしたいのですがどうすれば良いでしょうか。
suidperl に相当するものってない?
0270デフォルトの名無しさんNGNG
>>269
今はない。
swap_uidの名前問題が解決したら出来るようになると思う。
0271269NGNG
>>270
ありがとうございます。
今はできないのですね。やむを得ず C でラッパーを作って
それを setuid することにします。
0272デフォルトの名無しさんNGNG
Rubyに関しての
初心者用質問スレはどこですか?
0273デフォルトの名無しさんNGNG
ここ
0274デフォルトの名無しさんNGNG
def [](key)

これわからないのです。
誰か教えて頂けませんか?
0275デフォルトの名無しさんNGNG
hoge[1] <- これ
0276デフォルトの名無しさんNGNG
>>274
Rubyでは、一見そうとは見えないようなものもほとんどメソッドとして実現されています。
例えば配列やハッシュの要素参照である a[key] のような表記も、key を引数に [] という
メソッドを呼び出していると解釈されます。実際試してみればわかりますが、
a[key] と書くところは a.[](key) とも書けます。

ほかにもほとんどの演算子がメソッド呼び出しです。 1 + 2 は、1.+(2) と同じ意味です。
0277デフォルトの名無しさんNGNG
>>276
ありがとうございます。

yieldの読みと、
yieldの効果的な使い方がいまいちわからないのですが。。
0278デフォルトの名無しさんNGNG
>>277
> 読みと
http://dictionary.goo.ne.jp/cgi-bin/dict_search.cgi?MT=yield&sw=0
から「イールド」が近めなんではないかと。
> 効果的な使い方
ブロックを取るときに使います。hoge.each、hoge.timesなどはこれを使っています。
("do || ... end"の部分をこれで呼び出すわけです)
Lispのlambdaをかなりヘボくしたようなものです。
0279デフォルトの名無しさんNGNG
>>278

ヘボくしたのかよ・・・。

俺が Ruby 使いはじめのとき教えてもらったのが
「yield は繰り返せるreturn みたいなもんだ」と言われて、なんとなく
納得した。

Ruby のイテレータは強力やね。

(ぶっちゃけ、もう今後 Ruby を超えるスクリプト言語は出ないんじゃ
ないかと思う。)
0280デフォルトの名無しさんNGNG
>Ruby のイテレータは強力やね。
なにが?
0281デフォルトの名無しさんNGNG
>>279
最強の言語なんてものは存在しない。不毛な話はやめとこう。

>>278
Rubyにもlamdaあるじゃん。
0282デフォルトの名無しさんNGNG
Rubyのメソッドは、普通の引数だけでなくブロックをつけてよぶことができます。
そのようなメソッドのことをイテレータといいますが、この名前はあまり適切では
なく、必ずしも繰り返しとは関係ありません。
それはさておき、引数といっしょにメソッドに渡されたブロック部分を実行する
のが yield 文です。ちょうどメソッドの中から、メソッドを呼び出した側で指定した
処理を実行させるようなイメージなのでコールバックと呼ばれることもあります。
yield に引数をつけて呼び出すと、それがブロックに渡されます。ブロックでの
引数は | | で囲んで受けます。
0283278NGNG
>>281
……。逃げます。
(Lispのlambda引数とRubyのブロックの自由度の違いは単なる思想の違いだと言えるからね……)
0284デフォルトの名無しさんNGNG
鬼車ってどうよ?
ていうか、どうやったら使えるの?
0285デフォルトの名無しさんNGNG
>>284 Rubyistに記事でてますね。つか、鬼車、RubyでGoogleで検索しても一件もヒットしないから
誤爆かと思ったよ。
0286デフォルトの名無しさんNGNG
Rubyって最近バージョンアップしてないんじゃないですか?
Windowsの環境はそろってるんでしょうか?
しばらく前に使った時はまだ一般に受け入れられるほど
使いやすくはなかったです。基本的にコマンドラインで。
0287デフォルトの名無しさんNGNG
>基本的にコマンドラインで。
この点はおそらく永遠に変わらないので、君は一生使わなくて良いよ。
0288デフォルトの名無しさんNGNG
>286
最近 Ruby 1.6.7 が出てるね。Windows版が出ているかどうかは知らんけど。
0289デフォルトの名無しさんNGNG
>>133
にWindows用のinstallerへのリンクがある。
最新の奴にはFOXとTkの拡張ライブラリが付いてたはず。

ところで、WindowsってやっぱりGUI無しでは駄目なのか?
0290デフォルトの名無しさんNGNG
>289
Visual Studioに組み込んでプロジェクト管理&デバッグ
できないと使う気がおきましぇ〜ん
0291265NGNG
>>290
管理は WinCVS で足りる
0292289NGNG
291に同意。
おれはWinCVSの使い方が分からなくて、
cygwinのcvsを使っているが(w

後はDebuggerだな。deubg.rbのGUIラッパーでもあれば
良いんだが、今の所 Emacs/Meadow と RDE
くらいしか知らないな。
0293291NGNG
(´-`).。oO( 291(ニクイ)ゲトー ズサー )

>>292
デバッグについては、ですね、
print を多量に埋め込む…
               …諸刃の剣。
(;´д`).。oO( そか、debug.rb ですか。漏れも遠慮なく逝って来ます )

あと、標準出力に出てくる エラーメッセージは 、
リダイレクトしてファイルに保存。
 (´-`;).。oO( なんで標準出力なんだろう? )
0294デフォルトの名無しさんNGNG
エラーメッセージは標準出力じゃなくて、標準エラー出力でしょ。
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/14601
0295292NGNG
>>292
deubg.rbってなんだよ、おれ。

>>293
printよりはpかppを良く使う。
最近はppの方が多い。
0296デフォルトの名無しさんNGNG
ppは標準でついていないのが痛い。
何にしろインタプリタ型言語だと、print相当の命令を埋め込んで
デバッグすることがほとんどだな。埋め込んで即実行できるからね。
Cではデバッガを使うけど。
0297デフォルトの名無しさんNGNG
どっかのすげー外人がVS.NETに組み込んでくれないかな。
0298295NGNG
>>296
CVSのroughにはppがあるから、
1.8くらいでは標準で付くんじゃない?

今のdebug.rbはかなり遅いから、
基本はp,ppでデバッグして、
debug.rbは必要になったときだけ使うようにしている。
0299デフォルトの名無しさんNGNG
>>284
$wget ftp://ftp.ruby-lang.org/pub/ruby/snapshot.tar.gz
$wget ftp://ftp.ruby-lang.org/pub/ruby/contrib/onigd20020313.tar.gz
$tar fvzx snapshot.tar.gz
$cd ruby
$tar fvzx ../onigd20020313.tar.gz
$cd oniguruma; ./configure; make 172; cd ..
$autoconf; ./configure; make
0300デフォルトの名無しさんNGNG
>>299
ありがとー。なんて親切な人なんだ。試してみるよ。
0301デフォルトの名無しさんNGNG
プログラミングは、Perlがある程度できるだけ、という人に
Rubyの本を何か一冊薦めるとすればどれ?
0302デフォルトの名無しさんNGNG
http://www.amazon.co.jp/exec/obidos/ASIN/4894714531/ref=sr_aps_d_1_1/249-2952849-8512349
0303デフォルトの名無しさんNGNG
そもそもperl知ってればrubyに手を出さないと思われ
0304デフォルトの名無しさんNGNG
>>302
同じくその本(プログラミングRuby)を薦める。もうちょっと初心者向きだと
オーム社の「Rubyプログラミング入門」かな。
>>303
そんなことはないでしょ。
実際俺は Perl をかなり使い込んでいたが Ruby に乗り換えた。
0305デフォルトの名無しさんNGNG
>>302
それはProgramming Rubyの日本語訳なのかな?

http://www.rubycentral.com/book/index.html


0306デフォルトの名無しさんNGNG
>>305
そうです.
英文読んで気に入ったら,本を買うのがよろ紙
#本であると使いやすいしね
0307デフォルトの名無しさんNGNG
日本で作られた言語なのに、英語による本のほうが良いというのは
いかがなものか?
やはり英語圏の人のほうがユーザが多いってことか。
0308デフォルトの名無しさんNGNG
英語圏というか、
欧米圏だろ
0309デフォルトの名無しさんNGNG
Rubyの詳細について知っていて、かつ書籍を書ける人が
日本にいなかったということでは。
文章を書く能力とプログラムを書く能力は
一致しないでしょう。

今では 英語圏ユーザー > 日本のユーザー ですね。
ruby-talk, ruby-list の流量の差からもわかると思います。
0310デフォルトの名無しさんNGNG
ruby-talk はしょうもない質問や議論も多いけどね。
ruby-list の敷居の高さに乾杯。
0311デフォルトの名無しさんNGNG
いるとは思うけど、著者がすっかり定着してしまったように感じる。
話題も偏っている?

0312nanasiNGNG
Ruby使いかけたけど、ライブラリの質が低いからやめちゃったよ。
標準添付のライブラリ使えなさすぎ。
英語圏の人が増えて改善されてるの?

ruby-talkの流量が多いのはusenetと連動してるからだよね。
0313デフォルトの名無しさんNGNG
rubyのオブジェクトって参照カウンタ使ってるの?
0314デフォルトの名無しさんNGNG
>>307
(´−`).。oO( >>303 のような人が日本に多いから )
0315デフォルトの名無しさんNGNG
def f(i, j)
 i + j
end

f(1
,2)

が通らないのって仕様?
0316デフォルトの名無しさんNGNG
>>315
何をしたいのかサパーリ… 
0317デフォルトの名無しさんNGNG
改行すんなよ
0318デフォルトの名無しさんNGNG
>>315
Ruby は C やPerlと違って、改行は空白と同等ではありません。
改行は、式や文がまだ続くと明白にわかる場合以外、式や文の終わりを意味します。
この仕様には賛否両論があるでしょうが、Rubyの仕様のほうが ;(セミコロン)などの
文末を示す記号が必要ないので、個人的には好きです。; を省略できるのはとっても楽。

その代償として、式の途中で改行する場合は、parserが理解できる範囲で、まだ式の
途中であることが明白である必要があります。315の例では、

f(1,
2)

とすれば通ります。

315でも括弧が閉じてないから文の途中であることは明らかじゃないかと思うかも
しれませんが、LALR(1)の範囲内ではたぶんそう判断するのは無理なんだろうと
思います。
0319デフォルトの名無しさんNGNG
VBみたいな仕様だね
0320デフォルトの名無しさんNGNG
printfみたいな関数は
printf(
"hoge%d%s%f"
,param1
,param2
,param3
)
と書いたほうがコピペしやすいと思うんだけど、どうよ
好きと言い張るのは勝手だけど。
0321デフォルトの名無しさんNGNG
>>320
printf(
"hoge%d%s%f",
param1,
param2,
param3
)
これとそんなに違わない気がするけどどう?これなら Ruby でも通るんだけど。
0322デフォルトの名無しさんNGNG
>>321
いや、param1/2/3が同じ風に書けることを言いたいんだと思ふ。
引数増やしても全部「,引数」という形式だからコピペやすいとか。
0323デフォルトの名無しさんNGNG
>322
なるほど。そうだとしたら確かにそうですね。
しかし、カンマの前に改行を入れるスタイルって、C でもほとんど見たこと無いですが。
それに printf だからいいんですけど、320スタイルでも第一引数は特別扱いしないと
いけないし。
0324315NGNG
なるほど、ためになりました。

もともとは
f(<<EOS1
hogehoge
EOS1
,
 <<EOS2
foofoofoo
EOS2
)
と、ヒアドキュメントを2個書きたいのでした。

これは結局
f(<<EOS1,<<EOS2)
hogehoge
EOS1
foofoofoo
EOS2
と書けることが分かったのですが、
コンマの書き方で通らなくなるのは何でかなぁと思って。
0325デフォルトの名無しさんNGNG
312じゃないけど、今の標準ライブラリで不満なところとか、
今後標準添付して欲しいライブラリとかある?

俺は標準ライブラリはあまり使わないので、
今のところ不満はない。

将来はdiff(RAAにpure rubyの実装があったような)と
xmlパーサーは標準で付いて欲しい。
あと、RDtool、RDoc、RubyUnit、pp も。
0326デフォルトの名無しさんNGNG
>>313
ruby の GC は参照カウンタではなく、mark-and-sweep 方式を使っています。
Java などと同じ方式です。
0327デフォルトの名無しさんNGNG
>俺は標準ライブラリはあまり使わないので、
それって標準と同機能の代替ライブラリ使ってるって事?
それとも標準の機能そのものが不要って事?
前者なら思いっきり不満って事では...
0328325NGNG
>>327
後者。
俺はRubyをテキスト処理に使うことが多いから、
組み込みクラスのArray,Hash,String,Regexpくらいが
あれば、大体事足りる。
0329デフォルトの名無しさんNGNG
よく使うのは nkf と getoptlong くらいか。
後は組み込みクラスで大体足りるんだよね。
0330java!java!java!NGNG
なんか宣言が無いのが素晴らしいそうですが
宣言ってなんであったら駄目なんですか?
0331デフォルトの名無しさんNGNG
>>330
意見が分かれる
0332デフォルトの名無しさんNGNG
>>330
(´−`).。oO( 自称「VB使い」に対する敷居を低くするため )
0333デフォルトの名無しさんNGNG
宣言は面倒だからお手軽系言語では無いにこしたことはないとは思う。
Rubyにはもともと変数に型は無いので型宣言は不要だし、
$ や @ をつけることでスコープを決められるので基本的には
宣言はいらない。
しかし、宣言を排除することに固執するあまり(?)、ブロックの部分での
ローカル変数のスコープ規則が複雑になっているように思う。かといって
あまり良い代案は思い浮かばないのだが。
0334312NGNG
>>321
CGI関係。結局必要なものを全部書き直した。
あとストリームがほしいよ!
0335.NGNG
>>334
ruby標準添付の cgi.rb は、よく言われていることだができが悪いね。
あんなものを添付するなって感じだが。
0336デフォルトの名無しさんNGNG
Rubyには興味あるけど、ここの板の信者が馬鹿過ぎて使う気に
ならないんだよな。こんなところで馬鹿やってるくらいなら、
アプリケーションの一つでも書いた方がよっぽどRubyの為に
なるとおもうんだけど。
0337デフォルトの名無しさんNGNG
>>325
rubyunit, pp, rdoc と、RDtool に必要な全ライブラリは
1.8 で入る。RDtool 自体も入るかも。XML パーサはどれを
つけるか dev で議論中。いまのとこ REXML になりそうな
気配が濃厚。そのほか stringio とか iconv とかいろいろ
入るよ (入ったよ)。
0338.NGNG
>>336
ネタにマジレスかもしれんが。

ここで馬鹿やってる奴らは信者じゃない。
むしろ逆で Ruby の評判を落とそうとしているだけ。
336 みたいなこといったら奴らのおもうつぼだろ。
つうかそんなことも見抜けないなら 2ch なんかにこないほうがいい。
0339デフォルトの名無しさんNGNG
むしろ首釣って死ね。
0340デフォルトの名無しさんNGNG
>>338
ああ、誉め殺しか。なるほど、済まなかった。
2ch歴はもう2年近くになるけど、関心がそれ程
ないものには騙されてしまうんだな(w
というかアホスレ立てるやつってなんなんだ?
Perl信者?ま、どうでもいいか。とにかく
アンチがこんなに沢山いるとは思わなかったよ。
0341デフォルトの名無しさんNGNG
>むしろ逆で Ruby の評判を落とそうとしているだけ。
そこまでの考えも無く、単に叩かれているから叩いてるだけだろう。
特に、Ruby は最近有名になったから、
出る杭は叩くの精神が働いている。
まあ、隙が多いのは確かやね。
0342デフォルトの名無しさんNGNG
また糞スレが立ったよ...いい加減にしてほしいな。
0343336=338NGNG
おれのお気に入りのスレ、一つ貼らせてもらうよ(w
http://choco.2ch.net/test/read.cgi/kao/1014442536/
0344325NGNG
>>337
CVSwebをみると、たしかにppとかはrough以下に入っているな。
RDocはどこにあるのか分からなかった。

RDocに必要なライブラリってもしかして、IRBのslex.rbのこと?
0345デフォルトの名無しさんNGNG
>>340
> アンチがこんなに沢山いるとは思わなかったよ。

沢山?馬鹿なことやってる奴はごく少数でしょ。一人でもこれくらいのことはできる。
まあアフォにとり憑かれたと思ってあきらめるしかないね。
0346デフォルトの名無しさんNGNG
アフォの正体予想
1.熱狂的Perl信者
2.最近めっきり少なくなったCGI屋
3.言語研究をしていたポス毒
0347デフォルトの名無しさんNGNG
RD, RDoc, RDTool の関係を誰か教えてください。
0348デフォルトの名無しさんNGNG
RDはRubyのスクリプトのソースで

=begin

=end

の2つで囲まれた部分。Rubyはこれをコメントとして扱う。

RDtoolはRDに書かれた文章を
特定の形式に整形するスクリプト
(今は=begin,=endがなくても大丈夫かも)。
形式としてはHTMLが多いけど、他にも
いくつか合ったはず。

RDocはスクリプトのモジュール・クラス・メソッドなどの上に
書かれたコメントを元にドキュメントを生成するプログラム。

こんな感じにスクリプトを書いておくと、コメントといっしょに
メソッドの引数とか、クラスの親クラスやincludeしているモジュールとかを
ドキュメントに記述してくれる。

# Hoge クラスの説明
#
class Hoge < Fuga

include Foo

# Hoge#fooの説明
#
def foo(bar)
end

end

クラスの継承関係を画像にしたり、XMLを吐いたりすることもできる。
0349デフォルトの名無しさんNGNG
>>348
ということは RD と RDoc は直接関係無いんですね。ありがとうございました。
0350デフォルトの名無しさんNGNG
Ruby厨
Rubyにとり憑いて、わざと Ruby の評判を落とす言動を繰り返す。
プログラミングに関するスキルはほぼ無いに等しく Ruby も使ったことはない。
わけもなく他の言語を中傷する。
実際の Ruby ユーザからも、他の言語のユーザからもひどく嫌われている。
特技は糞スレを立てる、糞スレをあげる、多言語のスレを荒らす。
0351デフォルトの名無しさんNGNG
350はコピペ厨
0352デフォルトの名無しさんNGNG
ソースの中にコメントとしてドキュメントをごちゃごちゃ入れるのは、
読みにくいし書きにくいと思う。
0353デフォルトの名無しさんNGNG
>>352
けど、別々に管理してるとそのうちにドキュメントとソースの同期とるのが面倒くさいよ。
0354デフォルトの名無しさんNGNG
あ、日本語おかしい。
面倒くさくなるよに修正。

ちゅーか
beginとかendってださいな。
ちょっとちがうが if/fi みたいなのがすき。
  end
 end
end
0355デフォルトの名無しさんNGNG
case
esac
0356デフォルトの名無しさんNGNG
foo(;´д`).。oO(bar){
}
0357デフォルトの名無しさんNGNG
fiはfinalの略だと思ってた
0358337NGNG
>>344
>>337 は
[rubyunit], [pp], [rdoc], [rdtool に必要なライブラリ] と
読んでください。rubyunit は test/unit という名前で rough に、
pp は既に 1.7 に入ってます。

rdoc は ruby-talk でまつもとさんが入れることに同意したばかり。
また irb のライブラリも使ってるけど、あれはソースレベルで
コピー・編集して使っているのだと思った。

rdtool に必要なライブラリとは optparse, raccrt, strscan で、
raccrt/strscan はすでに 1.7 に入った。rdtool 自体はまだ話が
出てないけど、遅かれ早かれ入れることになると思う。

ほかに以下のものも入る予定。
・zlib インターフェイス
・Ruby/DL (ruby dynamic linker ... dln インターフェイス)

以下のものは相談中。
・OpenSSL インターフェイス
・nntp

ちなみにライブラリ添付希望はまだ ruby-dev で大募集中です。
dev 入っていないのなら、list で騒いでれば誰かが dev に
提案してくれると思います。
0359デフォルトの名無しさんNGNG
Pascal の begin-end に比べたら、
Ruby の if-end とかのほうが好き。
0360344NGNG
>>358

>[rubyunit], [pp], [rdoc], [rdtool に必要なライブラリ] と
>読んでください。rubyunit は test/unit という名前で rough に、
>pp は既に 1.7 に入ってます。
そういう意味ね。しかし、RubyUnitがtest/unitになると、
Test::Unitがどういう扱いになるのか分からなくなる。
結局、標準添付されるのはRubyUnitに決まったの?

おれはTest::Unitが標準添付されるんだと思ってた。
RubyUnitをメインに使っているので、RubyUnitの方が嬉しいけど。

>rdoc は ruby-talk でまつもとさんが入れることに同意したばかり。
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/36826
これね。指摘される前から読んでたんだけど、
ソースにRDoc風のコメントを入れるという話だけだと思ってた。

しかし、自分のプログラムを標準添付するよう推薦するつーのは…。

>また irb のライブラリも使ってるけど、あれはソースレベルで
>コピー・編集して使っているのだと思った。
IRBのライブラリで依存しているのはslex.rbだけだったはず。
RDocは便利なんだけど、Rubyスクリプトのパーサーには
irb、rtagsから引き継いだバグがあったりするのが問題。

>rdtool に必要なライブラリとは optparse, raccrt, strscan で、
>raccrt/strscan はすでに 1.7 に入った。rdtool 自体はまだ話が
>出てないけど、遅かれ早かれ入れることになると思う。
おれはRDtoolが入らないなら、raccrt、strscanを入れて欲しくない。
raccならともかくraccrtなんかいれてもほとんど役に立たないし、
strscanはstringioと役割がかぶっている気がする(もちろん違いはあるけど)。

>ちなみにライブラリ添付希望はまだ ruby-dev で大募集中です。
>dev 入っていないのなら、list で騒いでれば誰かが dev に
>提案してくれると思います。
ruby-listでは提案しづらい。
0361デフォルトの名無しさんNGNG
>>360
>おれはRDtoolが入らないなら、raccrt、strscanを入れて欲しくない。

同意ですな。一度入れると抜けないしね。
0362デフォルトの名無しさんNGNG
>>354
if/fi 方式は予約語が増えすぎるから却下。
0363デフォルトの名無しさんNGNG
一応現在の本スレなので age。
Rubyistを名乗って荒らしているやつって、絶対にこのスレはあげないのな。
しかし馬鹿一人のためにRubyユーザ全体が窮屈な思いをしているのって
なんとかならんもんかなあ。
0364デフォルトの名無しさんNGNG
>>362
括弧とかインデントなら、予約語増えないよ。

begin とか end って変数名で使いたいと思うんだけど。
python の in もアレだが。
0365デフォルトの名無しさんNGNG
正直、インデントしないとendがどこに掛かるのかワカラン
だったら括弧でも同じだったと思われ
0366デフォルトの名無しさんNGNG
>>364
メソッドなら予約語も使えるけど、
分かりにくくなるだけのような気がする。

class Hoge
def begin; 'begin'; end
end

h = Hoge.new
p h.begin

0367デフォルトの名無しさんNGNG
ttp://www.rubycolor.org/r/

の2002/03/28のREXMLの記事の紹介をどう思います?
pythonのDOMはpythonのxml_objectifyとRubyのREXMLの比較を
しているので、別にずるくないと思うのですが。
DOM以外の実装がひいきされているという事が言いたいんでしょうか?
0368デフォルトの名無しさんNGNG
>> 363
一人かなぁ。本当は30%ぐらいは厨だったりして(w
0369デフォルトの名無しさんNGNG
>>368
お前がその1人(ww
0370デフォルトの名無しさんNGNG
オタキモイ
ttp://www.rubycolor.org/r/rubychan2.jpg
0371デフォルトの名無しさんNGNG
sage 藁藁
0372デフォルトの名無しさんNGNG
>>370
ユーザ層と関係してるんだろうか。
0373デフォルトの名無しさんNGNG
も1つsage 藁藁
0374デフォルトの名無しさんNGNG
ヲタですが何か?
ttp://www.clio.ne.jp/home/web-i31s/Flotuard/Ruby/rubygirl/ruby_1.1_c.jpg
0375デフォルトの名無しさんNGNG
荒れ荒れ
0376デフォルトの名無しさんNGNG
>>374
Rubyは好みではないが、眼鏡っ娘はヨい。
0377デフォルトの名無しさんNGNG
新刊
http://books.softbank.co.jp/bm_detail.asp?sku=4797314087
たのしいRuby
Rubyではじめる気軽なプログラミング
高橋 征義/後藤 裕蔵 著
0378デフォルトの名無しさんNGNG
>>376
Ruby は好きだが、眼鏡っ娘は嫌いだ。
0379nanasiNGNG
>>367
ほのめかすような書き方でRubyを持ち上げてるんでしょうが、それこそ
あまりフェアじゃないと思います。Rubyヲタはきっと勘違いするでしょう。
どっちにしてもHaXMLほどクリアに書けないわけですが。
0380デフォルトの名無しさんNGNG
>379
HaXMLって何?
もしかしてHaskell?
0381デフォルトの名無しさん NGNG
>>377
「はじめてのC」は名著とされている。
しかし、わかりやすくても初心者向けとなると疑問。
まだ習っていない書式とかが、何の前触れもなく出て来るからだ。
「たのしいRuby」もその轍を踏んでいるような気がする。
「すぐわかるPerl」とか、情報処理試験向けの参考書みたいな
入門書が出ればいいのにな、と思ってしまいます。
0382デフォルトの名無しさんNGNG
>381
たのしい Ruby は本屋で立ち読みしただけですが、初出の用語はちゃんと
説明もあると思いましたが。足りているかどうかは別として。
でももうちょっと薄い本でもよかったんじゃないかと思いました。
0383デフォルトの名無しさんNGNG
mailing listでも話題になっていたけど、Windowsユーザーをうまく取りこめていないのが
大きな問題だと思う。
それとプログラミング初心者にもわかるような入門書の欠如。

本もいろいろ出版されてきていますが、内輪受けのような内容のものを何冊も出版しても
あまり意味無いですしね。
0384デフォルトの名無しさんNGNG
>>383
Windowsユーザを取り込むつもりがあるのかどうかはよくわからないね。

本については同意。ていうか ASCII が悪いんでしょ。
0385デフォルトの名無しさんNGNG
>>383
うーん。Windowsユーザーを取りこめていないというのは
少し違うと思う。今はPragProgのWindows Installerがあるし、
Ruby Gardenのプラットフォームに関する投票をみると
Windowsユーザーの数はそれなりにあるように思える。

http://www.rubygarden.org/pollBooth.php?op=results&pollID=11
http://www.rubygarden.org/pollBooth.php?op=results&pollID=12

あと、書籍も重要だけど、それよりはWebから自由に読める
チュートリアル的なものの方が必要だと思う。
0386デフォルトの名無しさんNGNG
>>379
これ?

HaXml is a collection of utilities for using Haskell and XML together.
ttp://www.cs.york.ac.uk/fp/HaXml/
0387デフォルトの名無しさんNGNG
>>385
> あと、書籍も重要だけど、それよりはWebから自由に読める
> チュートリアル的なものの方が必要だと思う。

最初はこれを見て覚えました。古いのが欠点か。
http://www.ruby-lang.org/ja/uguide/uguide00.html
チュートリアル
http://www.ruby-lang.org/ja/tutorial/tutorial.html
0388デフォルトの名無しさんNGNG
デスクトップリファレンス(O'REILLY)はいいよ
コンパクトで安い割に内容が入ってる
リファレンスなんだから当たり前だが
0389デフォルトの名無しさんNGNG
>>387
あれだけを読んで、全くの初心者が
Rubyを使えるようになるとは思えません。
あの2つはPerlやCである程度のプログラミングの経験がないと、
読むのは難しいです。
0390デフォルトの名無しさんNGNG
Perl 知らんけど、一度リャマ本読んだほうがいいかなぁと思っている。
# 誤爆じゃないよ。
0391nanasiNGNG
>>386

そうです。>>367のリンク先にもあるんですが、Davidの連載で取り上げられて
います。Haskelマンセーではないですが、Rubyのメソッドはなかなかエレガントに
書けないですね。

>>390

Rubyからはじめた人がPerlやってどう思うのか興味あります。
0392デフォルトの名無しさんNGNG
>>391
Perl は覚えなければならないことが多い気がしました。
0393デフォルトの名無しさんNGNG
特異メソッドってどういう時に嬉しいのでしょう?わかりにくくなりませんか?
クラスメソッドは嬉しいのはわかりますけど。
0394デフォルトの名無しさんNGNG
>>393
OOの一般論だからスレ違い。
0395デフォルトの名無しさんNGNG
Pyrex の ruby版が欲しい。すごく欲しい。誰か作ってくれないかな。
というか Pyrex がうまらやしい。
0396デフォルトの名無しさんNGNG
Pyrexってこれ?
http://www.cosc.canterbury.ac.nz/~greg/python/Pyrex/

気合い入ってるな−。
0397デフォルトの名無しさんNGNG
>>396
そうそれ。
Rubyでも、Rubyっぽい構文で簡単に書けて、コンパイルして拡張ライブラリに
できてしまうってのがあればすごく便利だと思う。

Python使えってのは勘弁(w
0398デフォルトの名無しさんNGNG
>>396
Python-ml-jpとPyJUGのページに紹介が出てるね。
Rubyの拡張ライブラリはCで書いても難しくないので、
SWIGがあればそれほど需要はないかもしれない。

でも、RubyでRubyの拡張ライブラリを書けるっていうのは
確かに魅力だね。SqueakはSmalltalkで自分自身を
変更できるみたいだけど、ある意味でそういうものに近いのかな?

0399デフォルトの名無しさんNGNG
ドキュメントで言えばPHPのページはええね
各国語(っても他の国のは見てないけど)対応だし
一通りのリファレンスあるし
0400デフォルトの名無しさんNGNG
ruby/google?
0401デフォルトの名無しさんNGNG
>>400
ruby-talkを見てきました。
GoogleはSOAPで検索ができる(?)ようになっているんですね。
0402デフォルトの名無しさんNGNG
Ruby/SDLのスレってどこかにあったっけ?
0403デフォルトの名無しさんNGNG
>>402
SDLスレ
http://game.2ch.net/test/read.cgi/gamedev/1005469181/
にも少し話が出てますよ。
0404デフォルトの名無しさんNGNG
◆毎年約1万人も韓国人が大量帰化しているというのに、在日の数が
ほとんど減っていない。

        1998年   1999年  2000年
在日韓国人  638,828   636,548  635,269 人

これではいつまでも韓国人の日本人汚染が続き、そのうち日本が
日本国籍の韓国人だらけになってしまう。

一方、不法滞在の韓国人は56000人で外国人で最も多い!

◎外国人帰化数
http://www.kyotsu.com/level2/hobby/data/toukei.htm
0405402NGNG
>>403
ありがとう、見て来ます。
0406デフォルトの名無しさんNGNG
>>401
これか。
http://www.caliban.org/ruby/
Google の SOAP Web API 用ライブラリ。
0407デフォルトの名無しさんNGNG
cygwin環境上でmingw32のgccを使ってビルドするとき、

mingw32を c:\egcs-1.1.2 に展開して、
.bashrcに以下を追加して有効にして、
export PATH=/cygdrive/c/egcs-1.1.2/bin:$PATH
export GCC_EXEC_PREFIX='c:\egcs-1.1.2\lib\gcc-ilb\'

./configure --enable-shared
make
とやると、dir.cで sys/param.h が無いとか言われてしまう。
そもそも c:\egcs-1.1.2 下には param.h は存在しない。

どうやれば mingw32 でビルドできるの??
0408デフォルトの名無しさんNGNG
touch sys/param.h
0409407NGNG
やってみたけど dir.c でエラーでまくって
途方に暮れました(´Д`)
0410デフォルトの名無しさんNGNG
あの〜、rtagsを実行すると、
TAGSファイルができるときと、永久に処理が終わらないときがあるのは、
なぜですの?
rtags用のスクリプトの書き方でもあるの?
教えてください。
ruby 1.6.7 (2002-03-01) [i386-cygwin]を使ってます。
0411RubyistNGNG
ぷち ぷちって あり殺すのやめろよなぁ
 かわいそうだろぉぉぉー
 たーいせつな 命だからなぁー
0412デフォルトの名無しさんNGNG
>>410
rtagsの構文解析は大雑把なので、
時々パースに失敗します。
一番まずいのは

while hoge do

end

みたいにdoをつけることなんですが、
ループに入るのは珍しい気がします。
ループに入るスクリプトのソースはどうなってます?
0413デフォルトの名無しさんNGNG
>>412様
レスありがとうございます。
自分なりにうまくいくファイルとそうでないファイルを比べたところ、
どうやら単純に[EOF]の前にうっかりスペースがあると
うまくいかないことに気がつきました。

end
 [EOF] ←スペースがあるので駄目
お騒がせしました。


0414デフォルトの名無しさんNGNG
ruby の ML の名前はどうよ。
ruby-list, ruby-talkって名前からは区別しにくくないか?
0415デフォルトの名無しさんNGNG
英語圏向けの ruby-dev の需要もあるみたいだしね。
名前を変えるなら、ruby-talk を ruby-list-en に改名して
ruby-list-{ja,en} ruby-dev-{ja,en} に一票。

ruby-house-win32 がほしいなあ。
スペシャルトピックに
「dir の実行」 とか
「どのRubyを使えばいいのですか」とか作って。
0416デフォルトの名無しさんNGNG
>>415
ruby-coreのこと?
0417デフォルトの名無しさんNGNG
ふつーweblogつったら、Radio UserlandとかBloggerのことじゃん。ruby-weblogって何よ。Rubyでつくる日記システムのメーリングリストか?
0418デフォルトの名無しさんNGNG
で、こんどの rubyの本はどうよ?
0419名無しさん@EmacsNGNG
あいうえお
0420デフォルトの名無しさんNGNG
かきくけこ
0421デフォルトの名無しさんNGNG
>418
都内で売っている本屋教えて。
0422デフォルトの名無しさんNGNG
>>421
ある程度大きい本屋ならあるんじゃないか?
少なくとも渋谷の某店には平積みだった。
0423デフォルトの名無しさんNGNG
>>421
amazon とか cbook24 で買うとか。
0424デフォルトの名無しさんNGNG
>>418
「Rubyアプリケーションプログラミング」
この本はなかなか良いかも。まだ全部はきちんと読んでないけど。
実用Perlプログラミング、だったっけ?あれに通ずるものがあるといったら
言い過ぎか?
0425デフォルトの名無しさんNGNG
上下巻にできるくらいのトピックを盛り込んであるので全体的に駆け足ぎみ。
個人的には拡張ライブラリの作り方にそこそこページ数が割かれていたのが良かった。
readme.ext.ja を取っ掛かりにするのは結構大変だからね。
0426デフォルトの名無しさんNGNG
何しろ ASCII が発行元じゃないのが良い。
0427デフォルトの名無しさんNGNG
>>424
おれも今までの和書の中では一番良いと思った。
でもどうせならデータベースものも(・∀・)ホシイ!
>>425と同じでWeb,GUIで巻を分けて安くしてくれ。
と、こんなとこでリクエストしてもしゃーないが、Perl,Pythonの洋書と
かと比べて技術書として上を目指したら? オーム社とソフトバンク頑張れ!
最近のASCIIはrubyのアプリケーションを256倍使うという趣旨におもわれ。
悪くはないがおれは必要ないし、rubyでプログラム書こうと刺激する内容
じゃないよ。
0428デフォルトの名無しさんNGNG
Practical Ruby

gaiacrtn.free.fr/practical-ruby/index.html
0429デフォルトの名無しさんNGNG
>>428
.fr? フランス?そういえばruby-frっていうフランス語メーリングリストも
あるみたいね。
0430デフォルトの名無しさんNGNG
IOWAの人がRubyからSmalltalkに乗り換えたらしい。

blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/39319

ここにいくつか理由が書いてあるんだけど、
IOWAの人がRubyからSmalltalkに乗り換えるきっかけになった
Smalltalkの特徴ってRubyで実装することは可能?

開発環境のことは抜きにするとしても
(Ruby本体だけではGUIを作成できないので)

1. あるクラス(Aクラス)に動的に付加されたメソッドの中で新しい
インスタンス変数があったら、すでに生成されているAクラスの
オブジェクトでも新しいインスタンス変数が使用できる。

2. stackをExtensionライブラリ等を書かずにいじることができる
(もっと言えば、Rubyの内部構造(構文木とか)をRubyオブジェクトとしていじくる)
0431デフォルトの名無しさんNGNG
>>430
IOWAって何?
0432デフォルトの名無しさんNGNG
>>430
>Smalltalkの特徴ってRubyで実装することは可能?
こういう風に、なんでもかんでも取りこもうとするのって
なんつーか、厨房的発想だよな。
0433デフォルトの名無しさんNGNG
Ruby/SDLでジョイスティックの十字キーが片側に入らねーぞゴルァ。
片側に入れると -32768 になるはずなんだけど、FIXNUM だっけ? が、
31 ビットだから、MSBが欠けちゃってるとか?
0434デフォルトの名無しさんNGNG
>FIXNUMだっけ? が、31 ビット
そんな仕様だっけ
0435デフォルトの名無しさんNGNG
>>433
今SDLのソースが手元にないんでわからないけどさ、
もし本当にそのセンなら、Ruby/SDLのソースを
INT2FIX → INT2NUM
FIX2INT FIX2LONG → NUM2LONG
に機械的に直せばいけると思うよ。
0436433NGNG
>>435
いちゃもんつけてしまったけど確認してみたら、
ちゃんと INT2NUM になってたなぁ。
おれのジョイスティックが逝かれてんのかなぁ。。。
0437435NGNG
>>436
いまRuby/SDL v0.7を確認したら、INT2FIXかなり大量にあるよ。
(もっと新しいの出てたっけ?)
rubysdl_event2.c の createKeyEvent( ) が怪しいんじゃない?
0438デフォルトの名無しさんNGNG
>>434
Ruby の実装は FIXNUM オブジェクトを(ほぼ)即値で表現してる。
(ビットシフトで値が取り出せる。)
FIXNUM かそれ以外かを判別するのに 1 bit 使ってるので、
void なポインタのサイズが 32 ビットの処理系では 31 ビットになる。
0439デフォルトの名無しさんNGNG
>>438
最後の1行は変じゃない?
Rubyのオブジェクトは基本的には構造体へのポインタで表されているが、Fixnum
は高速化のため特別扱いしている。ポインタの最下位bitが1だったらFixnumとみなして
右に1bitシフトした値をFixnumとする。よってFixnumは31bitであらわすことができる範囲の
数値ということになる。
最下位bitが0だったらポインタとみなす。
(ポインタが奇数アドレスにalignされることはありえない)
0440デフォルトの名無しさんNGNG
あげるなよ
0441デフォルトの名無しさんNGNG
>Fixnum は高速化
高速化に貢献してるの?
0442デフォルトの名無しさんNGNG
>>439
8バイトアラインメントなら下3ビット使えるね。
昔lisp/schemeスレでやってたけど。
貧乏クサイけど数割のサイズ削減になる。
0443デフォルトの名無しさんNGNG
>>441 そりゃしてるでしょう。即値よりもポインタを経由した構造体を
演算した方が速いなんて有り得る?
0444デフォルトの名無しさんNGNG
>>443
なるほどね。
でもさ、あんな気持ち悪い方法しかないの?
1bit右シフトしたときって符号はどうなるの?
0445デフォルトの名無しさんNGNG
>>442
rubyは4バイトアラインメントかな。Symbolも即値なので下1bitだけじゃ足りない。
0446デフォルトの名無しさんNGNG
Symbolが即値ってどういうこと?
0447デフォルトの名無しさんNGNG
true false nilも即値らしい。
>>446
Symbol#to_iに当たる値をFixnumのように直接もっていると言うことだろ。
0448デフォルトの名無しさんNGNG
>>444
signedにcastして右シフトすれば最上位ビットはコピーされるでしょ。
0449デフォルトの名無しさんNGNG
>>447
なんだ、hash値って意味ですか?
それともただの順序値?
まあこれ以上は自分でソース読むことにするよ。ありがとうね。
0450デフォルトの名無しさんNGNG
Object#id すればどう割り当てられているかわかるよ。

irb(main):001:0> [false, true, nil, 0, 1].each{|i| p i.id}
0
2
4
1
3
0451デフォルトの名無しさんNGNG
dRubyでリモートメソッドを呼び出すことが出来るのはわかったのですが,
ローカルにあるオブジェクトを投げてリモートで実行し,結果だけをローカルに返す,
ということはdRubyで出来るのでしょうか?
0452デフォルトの名無しさんNGNG
ここで聞かず、作者に聞け。
0453デフォルトの名無しさんNGNG
>>451
dRuby 本買っとけ。
http://www.amazon.co.jp/exec/obidos/ASIN/4756139612/ilikeruby-22/250-7951949-8758633

リモートメソッドの引数として渡せばいいんじゃないの?
リモートで起動するメソッドを統一してやって。
オブジェクトのコピーを渡すか参照を渡すかではまることがあるので注意。
0454デフォルトの名無しさんNGNG
>>449
Symbolって、:foo みたいのだけど知らないの?
シンボル毎にユニークな番号が振られる。
0455デフォルトの名無しさんNGNG
Ruby最高と言っている友人はロッテファンで
ロッテ最強と言っている。
0456デフォルトの名無しさんNGNG
>>455
Ruby最高と言っている漏れは阪神ファンで
阪神最強と言っている。
星野阪神マンセー!!!!!!!!
0457デフォルトの名無しさんNGNG
まつもとさんって田舎育ちだよね?
なのになんであんなにコンピュータに詳しいの?
0458デフォルトの名無しさんNGNG
>>457
http://japan.cnet.com/Newsmakers/Ruby/
オススメ。
0459457NGNG
>>458
なかなか面白かった。
>フリーソフト開発の合間に仕事をする男
という紹介も(w
0460デフォルトの名無しさんNGNG
>>442
Emacs Lispは整数値が 24bit だったっけ?のこり8ビットは何だろう?
0461デフォルトの名無しさんNGNG
昔、David Thomas のところに Apple から何か話があったようなことが出てたけど、
MacOS に搭載ですか?
0462デフォルトの名無しさんNGNG
HuntがRubyの開発者なの?
0463デフォルトの名無しさんNGNG
>>462
誰かそんなこと言った?
0464デフォルトの名無しさんNGNG
開発者の一人ではあるでしょ。作者ではないが。
PragmaticProgrammers は米国での第一人者だし。
0465デフォルトの名無しさんNGNG
というか、Mac OS XにRuby標準搭載のソースきぼんぬ。
どこにあるのやら〜。
0466デフォルトの名無しさんNGNG
ここには載ってるけど。
http://www.apple.com/downloads/macosx/unix_apps_utilities/
Carbon や Cocoa フレームワーク下で利用できるようにするって話なのかな。
0467465NGNG
>>466
RubyCocoaとの関係とか、気になりますです。
考え過ぎかな。
0468デフォルトの名無しさんNGNG
Rubyまたあたらしいのがでましたね。
先月2冊出たばかりだったのに。
いつまでこの新刊ラッシュは続くのだろう。
0469デフォルトの名無しさんNGNG
>>468
どんな本?書名は?
0470デフォルトの名無しさんNGNG
>>469
http://www.amazon.co.jp/exec/obidos/ASIN/4774114685/
Ruby/GTKプログラミング入門―Rubyで作って学ぶGUIプログラミング
書泉に売ってあった。
0471デフォルトの名無しさんNGNG
>>470
サンクス
0472デフォルトの名無しさんNGNG
昔はRuby本全部集めてたけど、
最近は全然ついていけないよ。
0473デフォルトの名無しさんNGNG
集めんなよ。
なんか意味あんのか?
0474マルチポストNGNG
postgresql(cygwin) + ruby でlocalhost 5432にアクセッスできません。
perlだとできます。


http://www.postgresql.jp/interfaces/ruby/index-ja.html
0475デフォルトの名無しさんNGNG
>>473
472ではないが、、、
本の著者に金を貢ぐことは、
それなりに意味がある行為だと思う。
開発に対する参加の一つの形、だろ?
0476デフォルトの名無しさんNGNG
>>475
但し、るびきちを除く。
0477デフォルトの名無しさんNGNG
私怨カッコ悪い
0478デフォルトの名無しさんNGNG
>>487
よくできているものが既にあるんだったら、何も同じようなものを作らなくたって
いいじゃん。
車輪の再発明って言葉知ってる?
0479デフォルトの名無しさんNGNG
>>478
スレ違いの予感
0480デフォルトの名無しさんNGNG
アホですか?
ネタですか。
0481デフォルトの名無しさんNGNG
何もRubyスレに誤爆しなくても。
0482デフォルトの名無しさんNGNG
>>478
Rubyの実装に疑問あり!
http://pc.2ch.net/test/read.cgi/tech/1004873294/
に落としたかったレスでしょ? まあ、そんなにひどい誤爆ってわけじゃないけど。
書き込み前に、ちょっとは確認しよーぜ。
0483デフォルトの名無しさんNGNG
この先の487が、同じようなものを作れ!っていうレスだったら問題ない。
0484デフォルトの名無しさんNGNG
>車輪の再発明って言葉知ってる?
車輪よりいい物を作るにはどうするか知ってる?
0485デフォルトの名無しさんNGNG
なんだか車輪の再発明でスレまでたってるな。
0486デフォルトの名無しさんNGNG
>>485上げるな
この板アラシまくってるぞ ソイツ
0487デフォルトの名無しさんNGNG
まー荒らしってほどでもないな。他の板に比べれば。
0488デフォルトの名無しさんNGNG
>>487
あんたヂョンじゃねーだろーな。
0489デフォルトの名無しさんNGNG
まあ再発明している暇があったらもっと別なことに時間を使えってこった。
0490デフォルトの名無しさんNGNG
cgi.rbが作り直されるみたいだけど今度のはどうよ?
0491デフォルトの名無しさんNGNG
HTML 生成機能は必要ないな。
量にあわせてヒアドキュメントか erb のどちらかで済ませるから。
セッション管理がもう少し使いやすくなると吉かな。
0492デフォルトの名無しさんNGNG
>>491
おなじく。HTML生成機能はいらない。今のも使ったことないし。
互換性のために残すのはいいけどね。
0493デフォルトの名無しさんNGNG
slashdotにRuby本の記事が出ている。

Ruby Developer's Guide
http://slashdot.org/books/02/04/30/1349242.shtml?tid=156
0494デフォルトの名無しさんNGNG
本スレをageとくか。
0495デフォルトの名無しさんNGNG
Programming Ruby のドイツ語版が出るらしい。
0496デフォルトの名無しさんNGNG
>>493
それをいうなら freshmeat.net にも The Ruby Way の記事が出ている。
やはり海外のほうが評価されているのか。
0497デフォルトの名無しさんNGNG
>>496
>やはり海外のほうが評価されているのか。
海外には馬鹿が日本と比較にならないほど沢山いるからかな。
0498デフォルトの名無しさんNGNG
>>497
(・∀・)ソレダ!
0499デフォルトの名無しさんNGNG
>>497
あながち間違いでもないなあ。
/. のスレッドみた感じでは、大体一年くらい前の日本と同じ状況だな。

「Ruby って(・∀・)カナリイイ! から使ってみ。これとかこれが素晴らしい!」
「はぁ?初めて聞くなそんな言語」
「あー日本で流行ってるらしいね。Python 使えばいいんちゃうん?」
「まあ良いのは分かるけどドキュメントが全然足りないよな」
0500デフォルトの名無しさんNGNG
n=["a","i","u"]
n.each{|n| print n,"\n"}
としたとき、なんで "i", "u" も表示されるの?
最初に "a" が代入されて、以降はダメな気がするんだけど。
見えない n_org みたいな一時変数が存在してるみたいでキモい。
0501デフォルトの名無しさんNGNG
>>500
どうしてそう思う?
nに"a"が代入されて print n, "\n"
nに"i"が代入されて print n, "\n"
nに"u"が代入されて print n, "\n"
だから、表示されるのは
a
i
u
になるんだけど。
0502501NGNG
勘違いしてた。
>>500
Lispのletとかと同じ。
ブロックでの|n|は代入じゃなくて定義。
スコープが違えばトップでのnは壊れないんだよもん。
0503501NGNG
def f(x)
 hoge = x
end
hoge = "namahage"

で、f()をいくら呼び出してもトップのhogeの値が変わらないのと同じだね。

f("わるいこはいねぇがぁ"); print a #=> namahage
f("なまはげはいねぇがぁ"); print a #=> namahage
0504501NGNG
最後の二行にある「print a」は「print hoge」の間違いだね。
何度も書き込んでごめんね。
0505デフォルトの名無しさんNGNG
>>500
irb(main):001:0> ary = [1, 2, 3]
[1, 2, 3]
irb(main):002:0> ary.each do |ary|
irb(main):003:1* p(ary)
irb(main):004:1> end
1
2
3
[1, 2, 3]
irb(main):005:0> ary
3
0506500NGNG
>>502
> Lispのletとかと同じ。
elisp(まともな処理系でなくてスマヌ)は少しだけ知っているのですが、たとえば

(setq ary '(1 2 3))
(let ((ary ary))
(setq ary 'collapsed))

としても元の ary は大丈夫ですよね。

(let ((ary ary))
(nconc ary '(4)))

とするとさすがにダメだけど。
で、元の話に戻ると、
>スコープが違えばトップでのnは壊れないんだよもん。
最後に p n とすると ["a", "i", "u"] じゃなくて "u" になるのが
変な気がするのです。
ruby の {|var| ...} の |var| は let じゃなくて代入だと
どっかで読んだ気はする。
すると、今度は何故 "a" だけじゃなくて "i","u" も出力されるのか(?_?)
0507デフォルトの名無しさんNGNG
>>506
> すると、今度は何故 "a" だけじゃなくて "i","u" も出力されるのか(?_?)

n.each のループ毎に n が評価されるとは限らないのでは。
つまり、nが評価されるのは each ループの直前のみで、
この時点で{|n|には"a" "b" "c"が代入されることが約束されるとか。

と、適当なことを書いてみるテスト。
0508デフォルトの名無しさんNGNG
(1) 最初に [1, 2, 3]という配列オブジェクトがありました
(2) そのオブジェクトにaryという名前をつけました
(3) aryという名前のついたオブジェクト、つまり(1)を呼んできて
(4) 「each」と命令しました
(5) eachを処理する途中で1というオブジェクトにaryという名前をつけました
(6) eachを処理する途中で2というオブジェクトにaryという名前をつけました
(7) eachを処理する途中で3というオブジェクトにaryという名前をつけました
(8) eachという処理が終了しました

eachはaryという名前に対して実行されるわけではなくて、
aryという名前の指すオブジェクトに対して実行される
だから、実行中にaryが別のものを指しても関係ない
ちなみに、実行中にオブジェクトの中身が変わる場合は話が別。

非破壊的なメソッドでオブジェクトの状態が変わらないのはRubyもlispも同じ
lispとRubyでは「名前をつけました」の意味が違うということ。
0509500NGNG
>>508 おぉ!! すっきりしました。ありがたう。
0510デフォルトの名無しさんNGNG
ブロックを含めた変数のスコープが分かりにくいというのは前から言われてるね。
matz を納得させられるほどの代案が出されていないのでそのままだけど。
後方互換性がなくなるしね。
0511デフォルトの名無しさんNGNG
age
0512デフォルトの名無しさんNGNG
>>511
この糞を何とかしろ
0513デフォルトの名無しさんNGNG
つまりRubyは糞ってことでいいですね?
0514デフォルトの名無しさんNGNG
>>513
なんで?
511にいってるんだろ。
0515デフォルトの名無しさんNGNG
>>513
いいよ
0516デフォルトの名無しさんNGNG
>>509
どこがすっきりするんだよ。
>>508の発言は、命名の意味の違いについての知識に酔っているだけにしか見えんよ。

なんでラムダ式の引数の命名にスコープ外の名前衝突を意識せねばならん?
それを意識させるストレスより、今の仕様の方が良いとする理由・事例は?

ちっともすっきりしないだろ。
0517500NGNG
>>516
> どこがすっきりするんだよ。
いや、とりあえず納得する理解はできたということで。
名前とオブジェクトは関係無いし。

> なんでラムダ式の引数の命名にスコープ外の名前衝突を意識せねばならん?
ラムダ式みたいに勘違いしやすいけどラムダ式じゃないんでしょ、たしか。

> それを意識させるストレスより、今の仕様の方が良いとする理由・事例は?
俺も変えて欲しいとは思うけどね。
マンセーとは書いてないでしょ?
0518デフォルトの名無しさんNGNG
つまり「すっきり」はしてないということで。
0519デフォルトの名無しさんNGNG
Ruby の仕様は「すっきり」してないけど、
500 はこの仕様を理解するうえで変にこじつける必要がなく
ちゃんと納得できたので「すっきり」したって事でしょ。
0520デフォルトの名無しさんNGNG
>>516
煽りじゃなく、どういう仕様ならすっきりするか是非教えて欲しい。
0521デフォルトの名無しさんNGNG
捨てる。
0522516NGNG
>>520
>>500の例でいえば、

n=["a","i","u"]
n.each{|n| print n,"\n"}

n #=> ["a","i","u"]

こうであればすっきりする。
これが良くないという理由と、現状のRubyで実装されている方式の方が
良いという理由が見えんのよ。

つーか、Rubyの別スレッドで似たような話題出てんじゃん…。
0523デフォルトの名無しさんNGNG
>>522
|n|のnをブロック内ローカル変数にする、ってことですか。

別の実例として、optparse.rbのドキュメントに書かれている例の一つに

q.on('-d', '--debug', 'debug message') {|debug|}

というのがあって、これはブロックの外にあるローカル変数へ
値を代入していますが、こういう使い方は良くない、
ということですね?
0524516=522じゃないけどNGNG
>>523
それは何をやってるの。直観的によくわかりませんれす。
同じことをやるのに

debug = q.on('-d', '--debug', 'debug message')

というようにonは定義できないの?
0525デフォルトの名無しさんNGNG
このスレッドがその件で一番新しいかな?
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/31198
0526501NGNG
また勘違いしてた……。 ごめんなさい。
0527デフォルトの名無しさんNGNG
>>526
バーカ
0528デフォルトの名無しさんNGNG
>>527
バーカ
0529デフォルトの名無しさんNGNG
>>528
バーカ
0530デフォルトの名無しさんNGNG
>>522
ルールが複雑になるな。
それを除けば現在よりもその仕様のほうが良いような気がする。
既にそういう方向にすすんでいるようだし。
0531デフォルトの名無しさんNGNG
>>530
ハァ?荒しじゃねぇがバカ?
Rubyなめんな。変な事言いふらすな。
変なアルゴリズム提示するな。他言語の信者にツッコミいれられるぞ。
0532デフォルトの名無しさんNGNG
531 はあちこちのスレで楽しそうだなあ。
0533デフォルトの名無しさんNGNG
Ruby で書かれたプログラムで勉強になりそうなやつはどこかにありますか?
0534デフォルトの名無しさんNGNG
ないよ。
0535デフォルトの名無しさんNGNG
>>534 氏ね。

かと言って
>>533 教えられないが。
0536デフォルトの名無しさんNGNG
>>533
ヤフー(海外の方)で検索してみな。
キーワードを増やす時は +key みたいにすればOK。
0537デフォルトの名無しさんNGNG
>>533
あなたがどれくらいのレベルか知らないし、どのくらいの規模のものを要望しているのか
わからないのだが、標準配布の中の sample ディレクトリの下あたりをまずは見て
みるのが良いんじゃない?
0538デフォルトの名無しさんNGNG
>>534
無知。
0539523NGNG
>>524
いやまあ、わかりずらいのは理解できます。僕も最初ピンと来なかった。

> q.on('-d', '--debug', 'debug message') {|debug|}

この場合、オプションに -d か --debug が含まれていると
debugにtrueを入れます。

> debug = q.on('-d', '--debug', 'debug message')
> というようにonは定義できないの?

使う側がメソッドを再定義すればなんとかなるでしょう。
ちなみにonメソッドの戻り値はselfです。
0540偽善者NGNG
×わかりずらい
○わかりづらい
0541やれやれNGNG
×ちなみにonメソッドの戻り値はselfです。
○ちなみにonメソッドの引数はselfです。
0542デフォルトの名無しさんNGNG
>>541
ヘ?
0543523NGNG
>>539 説明になってなかったんで、実際のコードを書きます。

> > q.on('-d', '--debug', 'debug message') {|debug|}
> この場合、オプションに -d か --debug が含まれていると
> debugにtrueを入れます。

require 'optparse'
debug = false
ARGV.options do |q|
 q.on('-d') do |debug| en
end
p(debug)

-dつけないとfalse、-dつけるとtrueが表示されます。
わかりづらかったらスマソ。
0544デフォルトの名無しさんNGNG
>>539
そのオプションに関する処理をブロックの中ですることが期待されている。

q.on("--version", "print versions.") do
puts "shige version 0.0.1"
exit(0)
end

str.sub(pat, rep){|s| } と似たパターンだと思う。
0545523NGNG
>>540 指摘感謝。

>>541 あれ、まちがってますか?

>>544
そういう意図があるのはわかります。

ただ>>524さんは「onにブロックがなければ戻り値にオプションの設定値
が帰ってきても良いんじゃないの?」って言っているように読めたんで
あのように書きました。妄想だったらスマソ。
0546544NGNG
>>545
>ただ>>524さんは「onにブロックがなければ戻り値にオプションの設定値
>が帰ってきても良いんじゃないの?」って言っているように読めたんで
ああ、なるほど。納得。
ブロック内で宣言された変数の寿命はブロック終了まで、
という自然な考えに反する使い方だと。
テンポラリ変数がブロック内に属するかどうかは考え方次第っぽいが、
確かに、それ以前に宣言されていたときだけ生き残るってのも半端だしな。
0547TAREANSNGNG
Rubyっていいよね。慣れれば楽だし。
プラットホームを絞ってくれればヨカッタのに。それだけが残念。
0548デフォルトの名無しさんNGNG
>>547
プラットフォームを限定するとどういいの?
0549デフォルトの名無しさんNGNG
>>548
日本人は限定品や限定モデルが好きだから
プラットホームを限定モデルにすれば
利用客が増え、本数も増やせるんだろ
でも、限定モデルは、ホームとの隙間が
大きく空いてる所があるから、要注意な
0550524NGNG
543-544で意味わかりました。
0551デフォルトの名無しさんNGNG
意味はわかったけど、そういうことができるから良いとは言い難いなあ。
激しく解り辛いことは確かだし、
q.on('-d') {|v| debug = v} でいいじゃんか。
0552デフォルトの名無しさんNGNG
>>551
q.to_sで--helpの時の表記が取得出来て便利だろーが。
0553デフォルトの名無しさんNGNG
書籍 Ruby de CGI 発売age
0554デフォルトの名無しさんNGNG
>>551
同意。

http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/14016

みたいに大域変数に代入するのは本当に止めて欲しい。
0555523NGNG
>>551
実際の話「わかりづらい」とか>>549さんの「自然な考え」というのが
ピンと来ないのは多分僕だけですかね。Rubyがそういう仕様なら
それなりに使おうとしてしまうので、気にならないのかも。

Ruby 2.0とかでこの辺が大きく変化したりしないかな。
メジャーバージョンが上がれば割り切って作ってもらえそうな
気がしますが。
0556523NGNG
>>555
書いてから色々気付く。うつ。

> q.on('-d') {|v| debug = v} でいいじゃんか。

初見で「vはブロック内ローカル変数なんだな」と想像できるのは、
過去にそういう言語を経験したことがある人のみではないか、
ということです。逆に最初にRubyを憶えてから他の言語を使う際には
逆の問題が起きたりしないのかな、とも思いますが、
そんなことない?
0557524NGNG
v0 = "hoge"
p0 = proc {|v0| v0 * 2}
p0.call (7)
p v0 # => 7

p1 = proc {|v1| v1 * 2}
v1 = "hoge"
p1.call (7)
p v1 # => "hoge"

# proc の位置の違いがポイントです。

最近のレス見て試してみたらこうなったんだけど
正直気持ち悪いと思ったよ。
これは仕様なの?仕様だとしてこうした理由は

1. 実装が楽なのでやむなく選択
2. 過去バージョンとの互換性のため
3. あえてこの仕様

のうちどれなのかな。
0558デフォルトの名無しさんNGNG
>>557
1+2 かと。
matz もこうならない仕様への需要があることは認識しているみたいだし。
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/31201
2.0 の仕様を議論するときに強く押せば標準採用もありえるカナ?
0559524NGNG
>>558
3だったらヤだなと思ってたので1+2ってことで安心しますた。
0560デフォルトの名無しさんNGNG
Ruby に Java でいうところの JDBC API みたいなクラスライブラリってありますか。
おすすめのものがあれば教えてください。
0561デフォルトの名無しさんNGNG
>>560
Perl でいうところの DBI はある。
http://www.ruby-lang.org/en/raa-list.rhtml?name=Ruby%2FDBI
0562デフォルトの名無しさんNGNG
>>558

1は違う気がする。
0563デフォルトの名無しさんNGNG
>>522
print n の n が、引数で使われているか否かでブロックローカルかそうでないか
変化するのね。
0564522NGNG
>>563
そういうこと。
ブロックの引数名は、そのブロック内での役割を示す簡潔な名前を付けるべきで、
外スコープのオブジェクト名とぶつかっているかどうかなんて、考えたくない。
例えば、hash.each {|key,value| ...}とスラスラ書くのに、
keyやvalueという名前が外側にあるかどうか気にしなくちゃいけないなんて鬱すぎ。
もし本当に外側のkeyやvalueにブロック内で代入したい場合には、メソッドの肥
大化を疑うつもり。
0565デフォルトの名無しさんNGNG
>>556
なんにせよ、[必要なら]その言語の仕様は覚えなくちゃ。

例文を「a = b = '1'」としよう。

初見で「aとbにオブジェクト'1'への参照を与える」と想像できるのは、
過去にそういう言語を経験したことがある人のみではないか、
ということです。

…というのと同じではないのかな?
0566523NGNG
>>565
あれは>>551さんがブロック内ローカル変数を前提にして

> q.on('-d') {|v| debug = v} でいいじゃんか。

と書いたものと思って>>556と書いたわけですが、これは私の妄想が
過ぎました。ごめんなさい。

なんか混乱してきました。頭冷やしに逝ってきます。
0567デフォルトの名無しさんNGNG
>>564
最後の2行は言い過ぎではないのかなあ。クロージャの意味が無くなる。
0568デフォルトの名無しさんNGNG
>565
言いたいことは分かるけど・・・同じではないよ。
>557の例、procをlambdaに置き換えるとさらに気持ち悪くなる。

rubyの、ブロックの手続きオブジェクト化にlambdaなんて
lispを思わせる別名をつけたのであれば、lispから類推できる
挙動であって欲しいって思うのは、かなり自然な要求だと思う。

…べつにオレはlispが好きってワケじゃないが。
0569デフォルトの名無しさんNGNG
なんでみんなRubyを貶すのかなー?
もしかして劣等感?僻んでる?
日本発の言語で世界に評価されているのはRubyしか存在しないんだから
みんなでRubyを盛り上げてC++やDelphiなんて、プププのプーってぐらいに
しなきゃ。
実際今まで10年ぐらいプログラミングしてきた俺だけど、Rubyより優れた
言語に出会った事がないよ。
やっぱり新しい言語は優れているんだろうね。

コピペして貰えれば幸いです。
0570デフォルトの名無しさんNGNG
>>569
RubyとC++/Delphiでは畑が違うよーな。
たとえばC++/Delphiの仕事に、あえてRubyをもってくるのは違う気がする。
Perlの仕事にRubyを使ってみる、とかならわかるけど。
0571デフォルトの名無しさんNGNG
>>568
rubyの次のメジャーバージョンアップでは、ブロックの引数はブロックローカルに
もできるようになるって話は出てたよね?
0572デフォルトの名無しさんNGNG
>>570
マジレス?まともにとりあうなよ。
0573デフォルトの名無しさんNGNG
>>572
え、マジレス(というほどのものでもないけど)しちゃだめでしたか。失礼。
0574デフォルトの名無しさんNGNG
>>564
メソッドが肥大化していなければ、ブロック内の変数とその外側の変数名の
衝突なんてしないというか、すぐ気がつくと思われ。
0575デフォルトの名無しさんNGNG
なんか、ブロック引数のスコープがブロックローカルでもそうでなくても、
n.each{|n|...}
という書き方はよくないと思うなあ。他人が見るとはまりやすいし。
C言語で
n = n++;
と書くのと似たようなものというか(w
0576デフォルトの名無しさんNGNG
どういう書き方ならよい?
0577デフォルトの名無しさんNGNG
>>576
別々の変数名をつけろってことだろ
0578デフォルトの名無しさんNGNG
>>568
> >557の例、procをlambdaに置き換えるとさらに気持ち悪くなる。
おぉ!! きもちわる〜いですね。
OO だから Ruby流をとかいいたいのか知れんが、
lambda を名乗る以上はどうにかしてもらいたいもんだ。
0579デフォルトの名無しさんNGNG
>>575
全然違うでしょ。これまでの流れを理解しているとは思えない。
他人が見るとはまりやすいってのは、Rubyしか触れてない人限定じゃないの?
lambda式っぽい構文があって、その引数の名前によっては外側のスコープの同名
変数を破壊するなんていう仕様はまず想像できないと思うんだが。
試しに、周りのプログラマに、以下のサンプルを見せて、

n = ["a","i","u"]
n.each{|n| puts n}

「この結果、nは何でしょう?」と聞いてみてほしい。
0580デフォルトの名無しさんNGNG
n.eachと書くから話しの流れと関係ないことに目が
いっちゃうんじゃないの?

n = "キタ━━━━━━(・∀・)━━━━━━ !!!!!"
["a","i","u"].each{|n| puts n}

「この結果、nは何でしょう?」と聞いてみてほしい。
0581デフォルトの名無しさんNGNG
>>568
> rubyの次のメジャーバージョンアップでは、ブロックの引数はブロックローカルに
> もできるようになるって話は出てたよね?
 ^^
この積み重ねがperlなんだと思う私は馬鹿なんだろうか。

>>580が良い事言った。
0582581NGNG
> >>568
-> >>571
0583デフォルトの名無しさんNGNG
>>579
正直 ruby を使う気なくしました。こんな仕様は非常識ですよ。
0584デフォルトの名無しさんNGNG
所詮学の無い作者のオナニー言語です。
気に入らないならさっさと他の言語へ行くか、作るかしたほうがいいよ。
0585デフォルトの名無しさんNGNG
>>583
ブロック引数のスコープの仕様だけ変わったって使う気無いくせに、いちいち
ageてまで書くな。
0586デフォルトの名無しさんNGNG
>>580
そう書くと現在の仕様でも納得できる気がちょっとしてきた。
0587デフォルトの名無しさんNGNG
>>586
では問題無しということで。
0588デフォルトの名無しさんNGNG
>>586,587 proc (a.k.a lambda) のほうは?
0589デフォルトの名無しさんNGNG
>>588
lambda って名前は廃止してほしいよね。
漏れはラムダ式と呼ぶには違和感ありありなので proc しか使わない。
0590デフォルトの名無しさんNGNG
>>589
要は名前が悪いってことでしょ。 lisp とかの lambda を知っている人にとっては、
違和感ありありだと。
lisp知らん人にとってはどうでも良いことかも。
0591デフォルトの名無しさんNGNG
スレの流れでは、ブロックの引数がローカルじゃないってことになっているけど、
実は、ブロック内で使われる変数すべて、ローカルではないんだな…

a = 3
b = 8
pr = proc{a = 'ha?'; b = 'fuun'}
pr.call

ってやるとa='ha?' b='fuun'になっちまう。
なんか、手続きオブジェクトって呼ぶにしても中途半端な仕様な気がする。
0592デフォルトの名無しさんNGNG
eval と binding を加えればさらに混乱必至。
0593デフォルトの名無しさんNGNG
>>591
http://www.ruby-lang.org/ja/man-1.6/?cmd=view;name=Proc

ようは見た目だけがブロックということ?
0594デフォルトの名無しさんNGNG
>>591
def f()
 proc{a = 'ha?'; b = 'fuun'}
end
a = 3
b = 8
pr = f()
pr.call
……とすると、a=3 b=8のまま。
def f(proc)
proc
end
a = 3
b = 8
pr = f(proc{a = 'ha?'; b = 'fuun'})
pr.call
……とすると、a='ha?' b='fuun'になる。
これはおかしい? それとも自然?
0595()後方参照NGNG
PERL-->RUBYに乗り換え進行中の初心者です。
ひとつつまずいてしまって、FAQかと探してたんですが
見当たらなかったので質問させてください。

Perlではこうすると;
$_="you love girls";
s/(\S+) (\S+) (\S+)/\3 don't \2 \1/;
print;
--> 出力:"girls don't love you"とできますけど、
Rubyではどうすればいいんでしょうか?

str="you love girls"
str.gsub!(/(\S+) (\S+) (\S+)/, "$3 don't $2 $1")
print str
これだと出力が "$3 don't $2 $1"になっちゃう。

なにか簡単な事を見逃しているんだろうけど、わからない、、、
0596デフォルトの名無しさんNGNG
>>595
str.gsub!(/(\S+) (\S+) (\S+)/, '\3 don\'t \2 \1')

無駄にメソッドチェーンしたいときは
str.split.insert(2, "don't").join(" ").display
0597595NGNG
あ、できた! ありがとうございました >>596
うーん、シングルクォート=式展開なし /
ダブルクォート=式展開あり
とばっかり思ってた。
(ていうかリファレンスマニュアルにはそう書いて、、、)
(ていうかシングルクォートも確か試したと思ったのになぁ)
後方参照もリファレンスには\1, \2でなく $1, $2とありましたが、
当方 Windows環境だから違ったのだろうか、、、、

ともあれ、これでPERLからの移行を続けられます。
ありがとうございました。

p.s. 「str.split.insert(2, "don't").join(" ").display」
  こっちはインタープリタによれば undefined method `insert' for
  ["you", "love", "girls"]:Array (NameError) との事で、
  できませんでした。

0598デフォルトの名無しさんNGNG
>>591
クロージャの意味分かってる?
0599デフォルトの名無しさんNGNG
>591
うーんとさ、それは他の言語でも閉包ってのはそういうものだから…
lispなんかでも
(setq a 8)
(setq prc (lambda () (setq a 3)))
(apply prc ())
=>3

a
=>3

になるし。文句はあまりでないと思うが。
0600デフォルトの名無しさんNGNG
むしろRubyにはletがないといった方がいいんじゃないか?
ruby-listで提案して玉砕された形跡があるが。
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/34901
0601デフォルトの名無しさん NGNG
Ruby初心者にやさしい本は何がありますか?
スクリプト言語は初めてです。
0602デフォルトの名無しさんNGNG
>>591はoccur freeな変数が関数オブジェクトでは
認められるということを
問題にしているのではなかろうか。
察するに。
0603デフォルトの名無しさんNGNG
無知なくせにでしゃばって恥をかいた悲惨な >>591 がいるスレはここですか?
0604デフォルトの名無しさんNGNG
ruby?

http://www.cs.nott.ac.uk/~gmh/ruby-interp.txt
0605デフォルトの名無しさんNGNG
Web 開発に Ruby 使おうということを上の人に説得したいんだけど、
提案に役に立つまとまった資料、文章とかないかな。ポジショニング
マップとかが書いてあって説得力のあるものが希望。
0606デフォルトの名無しさんNGNG
>>583

あなたは幸せものです。
世の中にはもっと酷い言語を使わされている人が沢山いるのですよ・・・?
0607デフォルトの名無しさんNGNG
>>605
あればもっと普及してます。
0608デフォルトの名無しさんNGNG
無知なくせにでしゃばって恥をかいた悲惨な >>591 がいるスレはここですか?
0609デフォルトの名無しさんNGNG
この板を紹介する。>>605
0610デフォルトの名無しさんNGNG
PerlとRubyのいいところだけを統合させた言語きぼんぬ
0611デフォルトの名無しさんNGNG
アホな機能満載のクソ言語スレはここですか。
0612デフォルトの名無しさんNGNG
>>610
ちょっとまった、rubyのいいとこってどこよ?
0613マジレス遺体NGNG
>>611
アホな機能とは具体的には何ですか?
0614デフォルトの名無しさんNGNG
>>610
それが ruby のはずなんだが。
0615デフォルトの名無しさんNGNG
>>611
いいえ。ここは無知なくせにでしゃばって恥をかいた悲惨な >>591がいるスレです。
0616112NGNG
なんだ?どこかで>>591にいぢめられたのか?>>615
0617デフォルトの名無しさんNGNG
>>616
どうでもいいけど、あんたが112のはずはないんだが。。。
0618デフォルトの名無しさんNGNG
>>611
作者やコミュニティがアホだから、他の言語の良いところを持ってきたつもりが、
いつのまにかrubyアホ機能その1に成り下がってるんだよね。
0619デフォルトの名無しさんNGNG
>>618
なんだ?どこかでrubyコミュニティにいぢめられたのか?>>618
0620 NGNG
質問ですが、下記の本ではどちらがおすすめでしょうか?

『Rubyアプリケーションプログラミング』
http://www.amazon.co.jp/exec/obidos/ASIN/4274064611/
『プログラミングRuby―達人プログラマーガイド』
http://www.amazon.co.jp/exec/obidos/ASIN/4894714531/
0621 NGNG
>>620
http://www.linux.or.jp/bookreview/OOSP-Ruby.html
『オブジェクト指向スクリプト言語 Ruby 』がいいよ。4000円。
0622デフォルトの名無しさんNGNG
>>620
はじめて読むならプログラミングRubyじゃないか。次にRubyアプリケーションプログラミング。
両方読むのがおすすめ。
0623620NGNG
とりあえず『プログラミングRuby』を買ってこようと思います。
Rubyをはじようと思った動機は、日本語に対応した正規表現を使いたかったから
という単純なものだったのですが、Perl以上にスイスアーミーナイフな感じで、
期待が持てます。(本家のホームページは (´・ω・`)ショボーン ですが・・・)
0624デフォルトの名無しさんNGNG
>>623
がんばれよ。
0625デフォルトの名無しさんNGNG
>>601
オーム社の Ruby プログラミング入門か、最近出たたのしいRuby(だったっけ?)
くらいかな。
スクリプト言語がはじめてでも、他の言語である程度の経験があれば、>>620 に
でているプログラミングRubyでも良いと思う。
0626デフォルトの名無しさん NGNG
Ruby本を2日以上、家に置いておくと、家族に不幸がやってくるぞ。
早く、捨てれ。
0627デフォルトの名無しさん NGNG
>>626
お前、不幸な奴だろ。同情するべ。
0628デフォルトの名無しさんNGNG
>>625
>オーム社の Ruby プログラミング入門か、最近出たたのしいRuby(だったっけ?)

この2冊はけっこう性格違うよ。
原さんのは「入門」な割には詳細に書いてあり、高度な話題も
チラホラある。あまり経験が無いと消化不良になるかも。良書ではあると思う。
導入として「たのしいRuby」を読む事は決して無駄にはならないと思うよ。
0629デフォルトの名無しさんNGNG
入門とか、たのしい、より、
拡張ライブラリや、組み込みRubyの本でないかな。
0630デフォルトの名無しさんNGNG
rubyを組み込んだ実用的なものというとmod_rubyくらい?
そういうことではなくて? >>629
0631628NGNG
というか、俺は情報系の知識が無い初心者なんだけど、
以前「入門」を読んだ時は、読むには読んだけど
いまいち理解できてなかった。
で、全然 Ruby 使ってないので久しぶりに勉強しようと
今回「たのしい」を読んでみているわけだけど、
結構話題を絞り込んであるので、ダレずに進めて有難い。

elisp だけは普段から触っているので今回イテレータは
すんなり理解できた。yield とか block とか、なんだ、
funcall や lambda じゃない。each は mapc(ar)
してるだけだし。

というわけで、lisp に似てて嬉しいんだけど
上のほうで話題になってる block と scope の関係や
lambda の仮引数(じゃなかった!!)とかは残念でならない。
0632デフォルトの名無しさんNGNG
Class#each が定義されてるとき、Class#each_with_index が
どのように定義されるか、Ruby (not C) で書くとどうなりますか?
0633デフォルトの名無しさんNGNG
>>632
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/11043
0634デフォルトの名無しさんNGNG
>>630
組み込んだ物じゃなくて、拡張ライブラリを書き方や、
アプリへの組み込み方法を「たのしい」レベルで
解説した本が欲しいんだけどなあ。

まぁ README.EXT.ja とか読みながら試行錯誤で
やれば出来るのだろうけど、学生じゃないから、
試行錯誤している暇はない。とか言っちゃだめか。
0635デフォルトの名無しさんNGNG
>>634
ruby-devでブロック引数のローカル化の話が出てますね。
0636デフォルトの名無しさんNGNG
>>635
ああ、癖で書いてしまいました。
>>635は>>634さんへのレスではありません。
まぎらわしくてごめんなさい。
0637デフォルトの名無しさんNGNG
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/17298

というような記述の仕方はどうなの?
正直、俺はあまり好きではない。

それにこういう記述形式にすると、
今まで以上にparserが複雑になりそう。
0638デフォルトの名無しさんNGNG
昔の動作を {<arg> ...} にしてくれたらいいのにぃ。
ま、互換性の点から無理だが。
# <arg> はダサいな。[arg] というのはダメ?
# 複数あれば {[arg1, arg2] ...} となるけど。
0639デフォルトの名無しさんNGNG
256本の racc のやつは難しいですか?
C は知りません。Ruby は原先生のと「たのしい」だけ読んだ事あります。
他の言語も殆ど知らないと同じです。

次に何を読もうか迷ってるんですよね。
プログラミングRuby は、そのうち買うつもりだけど、
たてつづけに解説書だけ読んでても面白くないし、実践的な事しないと。
0640デフォルトの名無しさんNGNG
>>638
それはArrayの即値と見なされるのでだめ。
0641デフォルトの名無しさんNGNG
>>639
無道編はコンパイラコンパイラの入門として面白いと思う。
0642デフォルトの名無しさんNGNG
ruby-talkにannounceがあったけど、ILEってどう?

http://virtualschool.edu:8083/tut/HomePage

HTTPサーバーを内蔵しているみたいだし、面白そうなんだけど。
0643デフォルトの名無しさんNGNG
どうしても言語処理系を作りたいのでなければ、
『Rubyアプリケーションプログラミング』 のほうにしといた方がよいとおもう。 >>639
0644デフォルトの名無しさんNGNG
>>638
グローバル変数で挙動を変えるようにするとか。
なんか perlっぽいけど。
0645デフォルトの名無しさんNGNG
いや、それはさすがに論外では。
というかパーサの問題だからグローバル変数じゃ話にならない。
0646デフォルトの名無しさんNGNG
>>645
じゃあ起動時オプション --traditional で古い挙動になる、とか。
いや、本気じゃないけど。
0647デフォルトの名無しさんNGNG
オプションで変わるにしては影響が大きすぎるというか、
どこまでどういう影響が及ぶか非常に分かりづらいから、
それはたぶん採用されないと思う。
0648デフォルトの名無しさんNGNG
>>637
ポリシーも無く、行き当たりばったりで作ってるから
こんなことになるんだな。
0649デフォルトの名無しさんNGNG
「ブロック引数は多重代入のセマンティクス」というポリシーはあるんだよ。
そのポリシーに反する要求を満たそうとするとどうしても無理が出て来る。
0650デフォルトの名無しさんNGNG
後付けポリシーの予感がするな
本気のポリシーなら押し通せよ
0651デフォルトの名無しさんNGNG
むしろ今問題にされてるのは、ローカル変数スコープのポリシーか。
0652デフォルトの名無しさんNGNG
むしろ問題はるびきちの傍若無人ぶりだ
0653デフォルトの名無しさんNGNG
最近見ないが。
0654デフォルトの名無しさんNGNG
正直、るびきちが羨ましい。
0655デフォルトの名無しさんNGNG
るびきちの話題は撲滅スレでおながいします。
0656デフォルトの名無しさんNGNG
無知なくせにでしゃばって恥をかいた悲惨な >>650 がいるスレはここですか?
0657デフォルトの名無しさんNGNG
>>651
なんでこんな重要なことを今まで放っておいたんだろうね。
0658デフォルトの名無しさんNGNG
>>637-638
いっそのことブロックに名前付けちゃうのどう?
schemeだとletに対してfluid-letというのがあるけど、
こういう目で確認しづらいものは構文拡張より名前で区別した
ほうがわかりやすいと思う。

foo let:{ ... }

とかブロックの前に明示的に名前(ラベル)つけれる様にして、
省略すると以前の形式。

{<,,>...}みたいな変な構文導入するよりマシな気がする。
0659デフォルトの名無しさんNGNG
>>658

素晴らしい意見過ぎてたまらん。(俺はもう、Ruby の syntax はこれ以上
進化しなくても、構わないとは思う。)
0660658NGNG
>>659
こういうのってまっさきに思いつきそうな気がするんだけど、
外側に名前置くってのはなんか問題あるのかな?

>>658の思いつき自体はこの人の最初の方の意見に近い。
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/17330
けどあんまり注目されてないみたい。(というか作者が理解せず終わった?)
枝止まってるみたいだし。
正直、この議論は変な方向へ行ってる気がするなあ。
ともかく、{<a,b,c>...}これはやめてほしい。

作者はブロックの中で解決することに何故かこだわってる感じ。
なんでだろ。
今の規則をデフォルトにしてしまいたくないのかも。ここで、
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/17352
「失敗であった」とか言ってるし。
0661デフォルトの名無しさんNGNG
>>658
ごめん。ブロックに名前付けてどう使うのか教えてください。
ちなみに scheme は知りません。
0662デフォルトの名無しさんNGNG
名前を付けるんじゃなくて、単に{}とlet:{}を区別するためだけにラベル
付ければいいというだけの話だと思う。
ブロックに名前が付くのではなくて、ブロックの構文にラベルを導入してブ
ロックの種類を区別するだけ。
0663デフォルトの名無しさんNGNG
ブロックの外側にラベルをつける方式って{ }なブロックならいいけど
do 〜 end なブロックで書こうとすると見づらくならないか?
0664デフォルトの名無しさんNGNG
>>662
ますますわからんです。
ラベルをつけて、それを何に使うのか。
ラベルがついているブロックとついてないブロックと何が違うのか。
ブロック引数とブロック内変数のスコープの問題とどう関係するのか?
0665デフォルトの名無しさんNGNG
あっほ〜
0666デフォルトの名無しさんNGNG
rubyって、statement ... endの形式で書くのかと思えば、
{...}という表記もある。
一貫性のないむちゃくちゃな言語に見える。
0667デフォルトの名無しさんNGNG
作者が日本人なので一貫性の無いのはある意味当然といえます
0668デフォルトの名無しさんNGNG
>>666
メソッドチェーンする場合、{} の方が短いとか、
ブロックのスコープと他のを区別しやすいとか。
後付けの理由だけども。

[1,2,3,4].collect{|i| i*2 }.select{|i| i < 5 }
[1,2,3,4].collect do |i| i*2 end.select do |i| i < 5 end
0669デフォルトの名無しさんNGNG
>>666
本質的なことじゃないんだけど、結局俺もそれが嫌。
0670デフォルトの名無しさんNGNG
「今度から、現状の{|a,b| }の書式でブロックローカルが実現されるようになりました」、で いいじゃん。

{<a,b> }だとかlet:{}の導入って、結局は「互換性を保つため」という前提だよね。
本当にそのまま互換性を取れると思うの?
過去を気にして醜くなるより、諦めた方が幸せなこともあると思うぞ。

問題になっているブロック内ローカル変数の名前衝突は、知らない人がほとんど。
ということは、(運良く)名前は衝突していないわけで、互換性は問題なし。

{|a|}や{|$a|}とかいうのは、ブロック内で何もしていないことを検知して「旧書式臭い」ことを通知してもらえれば結構。

これで9割がた問題ないだろ。
残りの1割は、バージョンアップによって仕様が変わったんだから、ソース変えろや!そのまま動くと思うなんざ甘いんじゃゴルァ!ということで。
0671デフォルトの名無しさんNGNG
>>670
そうですね。
0672デフォルトの名無しさんNGNG
|この中で|すでに宣言された変数使った方が新しい変数作らなくていいから
都合のいいこともある。
0673デフォルトの名無しさんNGNG
>>670
この人も同じ意見らしい。

http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/17365

結局、ブロックローカルを期待して書いてる傾向が強いみたいなので、変に互換性を気にする必要はないのかもね。
0674670NGNG
>>672
新しい変数作らなくていい == 都合がいい、の?
新しい変数作らなくていい == 手短に記述できる、なら解るけど、

>|この中で|すでに宣言された変数使った方が

は、スレ上流で言われているように、「解りにくい」。
0675デフォルトの名無しさんNGNG
ブロック引数がローカルスコープになって外と同じ変数名を使ったほうが
わかりにくいプログラムになる気がする。
0676デフォルトの名無しさんNGNG
代入(=)が or/and よりも結合の優先度が高いというのに気付かなくてはまったのでメモ

例: x = true and false
0677デフォルトの名無しさんNGNG
>>675
外の環境を破壊しない事が保証されている方が安全でそ。
0678デフォルトの名無しさんNGNG
そりゃPerlからの仕様だ。
もひとつ、or/andは同じ優先度だってのも覚えとくべし。これはshといっしょ。
0679デフォルトの名無しさんNGNG
>>677
同じ名前で別のものを指すのは混乱の元じゃないか?
0680676NGNG
>>678
スマソ
perlってあんまりいじってないんで知らなかった。

perlより先にrubyをいじったらperlをやるモチベーションがイマイチなくなってしまったので
0681デフォルトの名無しさんNGNG
>>679
用途が同じで使われる場所が全く違うものにわざわざ別の名前を付けなければいけない方が
混乱の元じゃないか?
0682デフォルトの名無しさんNGNG
だって同一メソッド内での話だろ。
「使われる場所が全く違う」ってことはありえん。
0683デフォルトの名無しさんNGNG
同一メソッド内だろうがスコープが違うってことでしょ。
「全く」はちと大袈裟な気がしたけどね。
メソッド内でのメソッド定義とかも、引数の名前衝突を気にしたいってこと?
0684デフォルトの名無しさんNGNG
>670

禿道

 Ruby はあくまでもシンプルで自然を目指すべきだと思う。

 1.4 から 1.6 の時に Hash の要素に nil を認めるようにした時の方が
影響が大きかったんじゃないかな。
0685デフォルトの名無しさんNGNG
>680

 わざわざ後付で Perl をやる必要は無いよ。

 and/or の優先順位は Perl 確かに準拠だけど、
はじめから Ruby の仕様だと思って覚えても
問題ないでしょ。
0686デフォルトの名無しさんNGNG
本屋でRubyアプリケーションって書籍がオーラパワーを出していたので買ってきた。
これ全部理解出来たら、物凄いスキル上がりそうな気がした。
一年ぐらい掛けて読むか。
0687デフォルトの名無しさんNGNG
いきなりローカル扱いされたんじゃ、わずかばかりの効率を追求していた人が可哀想?

require "benchmark"
include Benchmark

n = 4000000
j = 0
bm do |x|
x.report("A: "){ n.times do |i| end }
x.report("B: "){ n.times do |j| end }
end
0688デフォルトの名無しさんNGNG
tyj
0689デフォルトの名無しさんNGNG
>687

 まあ、今時 Ruby の様な言語で、わずかばかりの効率を追及するより
script の分かりやすさ(==メンテナンス性)の方が大事だと思うので、
ローカル化に一票!!
0690678NGNG
>>685
同意。678の前半はただの余計なお世話だから気にしないように。
0691デフォルトの名無しさんNGNG
既存のプログラム掻き集めてきて、
どのくらいが影響受けるか調査すれば
ローカル化への道も開けるか?
0692デフォルトの名無しさんNGNG
とりあえずruby-dev 講読してない人のためにも
ruby-list や ruby-talk で聞いてみたほうがいいと思うが。
是非変更してほしいな。
0693デフォルトの名無しさんNGNG
変数を宣言する仕様だったら問題なかったのに。typoもチェックしやすいし。
var i
a.each_with_index do |var e, var i| end
0694デフォルトの名無しさんNGNG
>>691

>>673 のリンク先にあるように
rubyに標準添付されているライブラリに関しては問題ないみたい。
後は

http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/17366

で言われているようにどの位の数のサンプルを集めて調査するかだね。

>>692
ruby-talkでも議論が始まってますよ。
0695デフォルトの名無しさんNGNG
Man, it took me hours to write this mail. Why you guys don't read Japanese?
0696デフォルトの名無しさんNGNG
皆は、ブロック内では「||」にある変数しか使わないの?
仕様を変更するなら、ブロック内の変数の扱い全般を変更しないと片手落ち……って、
こんな所に書いても意味が無いか。
0697デフォルトの名無しさんNGNG
>>696
おれもそんな気がしていた。
となると、||の中のは仮引数として、それ以外についても
let ブロックを導入する必要があるんじゃないのかなぁ、と。
0698デフォルトの名無しさんNGNG
>>696
片手落ちってこたぁないでしょ。
あったら使うと思うけど、ソースが汚くなるからあえて採用してない、
というポリシーも解る、という程度。
0699デフォルトの名無しさんNGNG
作り直せ!
0700デフォルトの名無しさんNGNG
うんこ
0701デフォルトの名無しさんNGNG
>696

 ブロック内で代入した物はすべて、ブロック・ローカルでいいんじゃない?
0702デフォルトの名無しさんNGNG
>>701
じゃあ、ブロックローカルな変数から外に還元するには
返り値のみしか方法がなくなってしまうじゃない?
これはちょっと不便すぎな気が。
proc はそれでいいとも思うけど。
0703デフォルトの名無しさんNGNG
いいかげん変数宣言しちまえよ。
perlのuse strict;みたいなの導入しちまえよ。
キモイんだよ。
0704デフォルトの名無しさんNGNG
>>696

http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/17352 より

* そこで、ブロックパラメータについては

<x, y>

という宣言であれば、外側に同名のローカル変数があってもそ
のブロックローカルになるようにしたい。記法は変化するかも。
重複していたら警告するかどうかは未定。

* ブロック内ローカル変数については、ブロックパラメータの指
定を借りて

<x, y; a, b>

という「宣言」によって指定するか(宣言型)、あるいは、特別
の代入演算子(たとえば「:=」)によってその代入された変数は
以後ブロックローカルになるか、のような方法で実現したい。
重複していたら警告するかどうかは未定。

* 上記ふたつの機能が実現すれば、現在の「不自然かつ使いにく
い」ブロック内ローカル変数の役割は終わる。よって、将来の
バージョンでは、メソッドのローカル変数、明示的に指定され
るブロック内ローカル変数のふたつだけになる(ようにしたい)。
でも、互換性がなあ。

ということらしいです。
互換性を捨てる場合(||をブロックパラメータにする)は
ブロックローカルの変数の扱いで問題が残りますね。
0705デフォルトの名無しさんNGNG
>>704
<>自体がキモイんだよ!
こんなの採用されたら、もうRubyいらんわ。
0706デフォルトの名無しさんNGNG
>>705
ま、||の意味を現行のままにできたらと
松本さんが思うのも当然でしょう。
困るのは(一部だけど)ユーザなんだから。
でも俺も <> は嫌だな。絶対に || の意味を変えてほしい。
0707701NGNG
>702
 その方が明示的でいいと思うんだけどなぁ・・・

 そんなに内と外を一緒にしたいならグローバル変数でも
使えばいいんじゃない。

0708デフォルトの名無しさんNGNG
>>707
>>704 の <x, y; a, b> (ちゅうか、|x, y; a, b|ね)
じゃだめなの? 俺はこれでいいかなと思ったんだけど。

# もしかして Haskeller?
0709デフォルトの名無しさんNGNG
>706
 まあ、幸い(嫌みではない) Ruby は未だユーザも
少なくて、そのユーザも状況を理解している人が
多いだろうから、今から過去に縛られて変な構文を
持ち込むより、シンプルで自然を貫いた方がいいと思う。
0710701,707,709NGNG
>708
 確かに |x, y; a, b| も悪くないと思うけど、とってつけたような
感じは否めないと思うんだよね。
0711702=708 でした。書き忘れてた。NGNG
>>710
表記としてはとってつけた感はあるかも。
でも Ruby では気楽にプログラミングが出来る事が重要でもあるのだから
やたら面倒な記述が必要というのも困りそうだね。
別のスッキリした表記法があればいいんだけど。

で、return value しか使えないとなると、next とか redo みたいな
のが使いにくくなるんじゃないかなぁ。

# プログラミングのスキルは初心者な奴が書いてるので、あまり本気で
# 相手にしなくていいです。
0712710NGNG
>711
 とってつけたと書いたのは、見た目の問題だけじゃなくて、
他ではいわゆる変数宣言というのを廃しているのに、ブロック
ローカルだけ宣言ぽいことをするのも、とってつけた感じが
するからなんだけど。

 で、簡潔な記述が要求される局面と云うのは、小規模な script
だろうから、グローバル変数を使っても良いだろうし、大規模な
script なら、多少記述が面倒でもスコープの管理が厳格な方が
良いんじゃないかと思う。

 あと、 next とか redo とかは確かに困りそうだけど、いっそこと
next value とか redo value と云うふうに拡張しちゃったらどうかね?

#なんか、自分で書いててネタだかマジだか分からなくなって来た(^^;
0713702NGNG
>>712
自分が慣れてるのは elisp ですが、これは
defvar しなくてもいきなり setq で変数に代入できます。
let で局所変数を利用する事もできます。
特に不自然だと思った事は無いですよ。少なくとも自分は。

next value とかの利用法がどんなのか想像できないのですが、
return value しか利用できないとなると、
a, b, c, ... = hoge.each{ ... }
としたときの左辺が凄い事になりそうです。

# うーん、純粋な関数型言語使ってる人の意見を聞いてみたくもある。
## 初心者な俺がスレを占拠していいのだろうか。そろそろ去らなきゃ。
0714デフォルトの名無しさんNGNG
>>712
next value とか redo value が意味があるかどうか疑問だが、
break value は1.7では使える。
0715712NGNG
>713

 まあ、 |x, y; a, b| という記法が絶対駄目とは思って
ないんだけど、自分としてはとってつけたような感じが
好みじゃないんで、他の方法を適当に考察してるだけ
なんだけど・・・

 next value ってのは >711 で next が使いにくいと
書いてたのに対する解のつもり何だけど、勘違いして
るかも?

 左辺がすごいことになりそうなら、 Array や Hash を
使った方が良いんじゃないかな?

#どうも、趣味の問題になって来ているので、そろそろ
#止めた方がよさそうですね(^^)

0716デフォルトの名無しさんNGNG
ああ、ひょっとしてこういうこと?

f = proc {|x, y|
p [x, y]
redo x+1, y+1
}

proc.call(0, 0)
[0, 0]
[1, 1]
[2, 2]
...

でもnextはそのブロックの終端にとぶ、redoはブロックを最初から同じ引数で
再開するというものだから、これじゃへんだよな。

>>711はたぶん、ブロックの繰り返し間で保存される変数も必要だということ
をいいたかったんじゃないだろうか。だとすると、valueというのはちょっと
違うという気がする。
0717デフォルトの名無しさんNGNG
この、仮引数と同名の変数がシャドウ化されないのは、
元々何の為だったんだろう
元々のきっかけが知りたいですね
しかもよりにもよって、それにlambdaとか付けてみたり・・・
明らかにλでは無いんだから、
これを付けたのは混乱の元だと思う。
しかも、procといってよいかも分からない。
routineじゃ無いですかね。或は、subprogとか。
0718702 とか 711 とかNGNG
>>716
#うーん、ちょっと話題がこんがらがってるようですが

自分が next や redo の場合が云々と書いたのは
hoge.each{|x, y| ...}
の case を考えてでした。

proc の場合と each のような場合を一緒くたに話題にしてすみません。

# あと、proc で redo とかできましたっけ? ruby -v #=> 1.6.5 の irb では
# エラーになるのですが。
0719712NGNG
>716

 正直なところ redo については自分自身用途には
疑問を感じつつ、流れで書いてしまったのですが、
next の場合、終端にとんだまま終わっちゃう場合も
あるから、あっても良いかなとは思ったのですが。

 ブロックの繰り返しの間するための変数は・・・
自分の外側の変数を参照するのはよしとして、
繰り返しを暗黙的に再起呼び出しとみなす。
つまり、

n = 1
n = 3.times do
 n = n
 n += 1
end
p n #=> 4

なんてどうだろう?









やっぱへんか(^^;

0720デフォルトの名無しさんNGNG
>>717
「仮」じゃないから。
ブロック引数は多重代入として処理されるというルールと、
外部で定義されている変数はブロック内でも共有するというルールから
必然的にそういう結論になる。
後者については当人も失敗と認めているけど。
0721デフォルトの名無しさんNGNG
>>718
procでredoはできるようだけど。

$ ruby-1.4 -ve 'i=0;proc{p i;redo if (i+=1)==1}.call'
ruby 1.4.6 (2000-08-16) [i686-linux]
0
1
$ ruby-1.6 -ve 'i=0;proc{p i;redo if (i+=1)==1}.call'
ruby 1.6.7 (2002-06-12) [i686-linux]
0
1
$ ruby-1.7 -ve 'i=0;proc{p i;redo if (i+=1)==1}.call'
ruby 1.7.2 (2002-06-12) [i686-linux]
0
1

1.6.5あたりでちょっと仕様が二転三転したのかも。
0722デフォルトの名無しさんNGNG
>>719
> 自分の外側の変数を参照するのはよしとして、
> 繰り返しを暗黙的に再起呼び出しとみなす。

=の左右で別物になっちゃうわけ? lispのletなんかはそうだけど…。
0723702 とか 711 とかNGNG
>>721
あ、それは実行できました。
>>716 の f = proc... を irb では error になったけど。

>>722
(let ((hoge hoge))
...)
という奴ですね。
hoge という変数に変更を加えても let を抜けると元通り。
でも >>719 のは読みにくい気がしました。するなら
{|x, y; n = n| ...} みたいな感じにして
外部のを参照しているのかパッと分かるようにするとか?
# うーむ…。
0724719NGNG
>723

 ・・・ >719 を書き直すと

n = 1
n = 3.times do | ; n = n |
 n += 1
end
p n #=> 4

ですか。

 自分としては | ; って辺りが気持ち悪いんで、それこそ

n = 1
n = 3.times do
 let n = n
 n += 1
end
p n #=> 4

の方が好みかな・・・でもさすがにここまですると窮屈
な気もして来た(^^;
0725デフォルトの名無しさんNGNG
>>723
そりゃ>>716はredoに引数を追加すると*したら*って例だから、当然エラーだよ。

> >>722
> (let ((hoge hoge))
> ...)
> という奴ですね。
> hoge という変数に変更を加えても let を抜けると元通り。

さらにいえば、左のhogeは新しい変数だが右のhogeは外側の変数ということも含めて。

> {|x, y; n = n| ...} みたいな感じにして
やっぱりこれはrubyにはそぐわないと思う。

いい代案は思い浮かばないんだが…。
0726デフォルトの名無しさんNGNG
文字列配列の検索ってどうやるのですか?
assocではうまくいきません。
p ["a", "b", "c"].assoc("a") # nilが返る

0727デフォルトの名無しさんNGNG
>>720
それはもうブロックと言わないだろ。
ブロックは一般的にはスコープの範囲を画定するためのものでもあるし。
それは、単にまとめてるからブロックと言ってるということだろ。
ほとんど誤用に近いよ。
0728デフォルトの名無しさんNGNG
うーむ、でもProcにしたり他のメソッドからyieldしたりできるというのが。
0729デフォルトの名無しさんNGNG
>>727
> ブロックは一般的にはスコープの範囲を画定するためのものでもあるし。
それはかなり偏った意見では。
0730名無しさん@カラアゲうまうまNGNG
>>726
grepとかfindとか
ary = ["a", "b", "c"]
p ary.grep("a")[0]
p ary.find {|s| s == "a"}

grepは該当するものすべてを返すので、一個だけでいいときはイテレータとし
て使うといいかも知れない
s = nil
%w[a b c a].grep("a") {|s| break}
p s

1.7なら一行
p %w[a b c a].grep("a") {|s| break s}

> assocではうまくいきません。
> p ["a", "b", "c"].assoc("a") # nilが返る
assocは目的が違う。
p [["a",1], ["b",2], ["c",3]].assoc("a")' #=> ["a", 1]
0731デフォルトの名無しさんNGNG
>>730
proc とかで盛り上がってるところに
| s = nil
| %w[a b c a].grep("a") {|s| break}
| p s
こんなの示されてしまうと ;(
0732696NGNG
>>704
どうもです。
現状の上に機能追加、ということか。

>>702
問題がそれだけなら、C++の「::hoge」のような感じで、
外の変数を明示的に参照するようにすればいいのでは。
0733名無しさん@カラアゲうまうまNGNG
それはネストしたときに途中の変数を指定できない
0734732NGNG
>>733
記号を重ねたり。
?hoge = 1 # 一つ上
??hoge = 1 # 二つ上
だめ?
0735デフォルトの名無しさんNGNG
他には、
?hoge # メソッドローカル
1?hoge # 一つ上
2?hoge # 二つ上

かなり痛い事を言っているのかもしれない。
0736デフォルトの名無しさんNGNG
>>734
いやん。いちいち数えなきゃダメなんて。
やっぱり let してない物については外を参照できるというのが
いいんじゃないかしらん?
0737デフォルトの名無しさんNGNG
>736

 数えるのがいやなときは

*?hoge

ってのはどう

#おれもイヤかも(^^;
0738702 だけどNGNG
elisp で

(let ((hoge hoge))
...)

というのが使えると便利な事があるのは、
1. emacs は dynamic scope であり、
2. それぞれの変数名には決った役割がある
からですね。
たとえば一時的に hoge-hook に add-hook して
ある関数を呼びたいとか。

それに対して Ruby ではせいぜい組み込み変数ぐらいだから
この必要性はグッと低い。無理にこんな事できるように
する必要は無いのでは? と思いました。
なので >>712 みたいなのを積極的にサポートしなくても
よろしいのでは?
0739702 だけどNGNG
失礼。
× なので >>712 みたいなのを積極的にサポートしなくても
○ なので >>719 みたいなのを積極的にサポートしなくても
0740名無しさん@カラアゲうまうまNGNG
>>734
すまん、::hogeで一つ外側のが見えりゃ充分だな。

ただ、この例で::barはどっちになるべきだろう?

def let(*args) yield(*args) end
foo = :foo
bar = :bar
let do <>
bar = :bar1
let do <>
foo = :foo1
p foo #=> :foo1
p bar #=> :bar1
p ::foo #=> :foo
p ::bar #=> :bar / :bar1
end
end

0741デフォルトの名無しさんNGNG
ブロックパラメータでないローカル変数はすべて
同じレベルのローカル変数にするというのでは駄目?

$v = 0
def local
 $v += 1
 yield $v
end

foo = 1
local{|x|
 p foo # 1
 p x # 1

 local{|x|
  p foo # 1
  p x # 2
  foo += 1

  local{|x|
   p foo # 2
   p x # 3
  }

  p x # 2
 }

 p x # 1
bar = 3
}
p x # nil
p bar # 3
p foo # 2
0742名無しさん@カラアゲうまうまNGNG
>>741
それはつまり<x;y>とかとおんなじわけよ。

> p x # nil
ここはNameErrorだろうな。
0743デフォルトの名無しさんNGNG
ri.rbとかrtags.rbってどこにあるんでしょか?
0744名無しさん@カラアゲうまうまNGNG
riはPragProg。
http://www.pragmaticprogrammer.com/ruby/downloads/ri.html

refeというのもある。
http://www.loveruby.net/archive/refe/refe-0.5.0.tar.gz

rtags.rbはirb-tools。
http://www.ruby-lang.org/~keiju/src/irb-tools-0.7.1.tgz
0745デフォルトの名無しさんNGNG
>>730
結果が1つでいいのなら無理にgrepを使うより
findの方がよくないか?
0746名無しさん@カラアゲうまうまNGNG
findのほうが融通が効いたりするけど、すべての要素についてyieldされるの
で速度的につらい場合もあるかもということで、お好みのほうを。
0747 ◆japan/wc NGNG
rubyにscheme組み込める?
0748名無しさん@カラアゲうまうまNGNG
schemeで書いたライブラリをロードするってこと?
処理系によるんじゃないかな。
0749デフォルトの名無しさんNGNG
オライリーか独習本が出るまで待ちでいいですか?
イイ本が無くて始められないYO!!!
0750名無しさん@カラアゲうまうまNGNG
「The Ruby Way」とか「21days(名前忘れた)」の和訳は出ないのかな。
0751743NGNG
>>744
ありがとう。
おかげでxyzzyのruby-modeが使いやすくなりました。
0752デフォルトの名無しさんNGNG
ruby/gtkで質問。

button1 = Gtk::Button.new("ぼたん")

button1.signal_connect("clicked") {
puts "ぼたんが押されますた"
}

で、このプログラムを実行して、表示されたボタンをマウスなりで
クリックすると、signal_connectが呼ばれるらしいのはなんとなく
わかりました。

んで、やりたいのは、プログラム中でシグナルを発生させるにはど
うすればいいの?

button1.send_signal("clicked")
みたいなことをやりたい。
0753名無しさん@カラアゲうまうまNGNG
Gtk::Object#signal_emitってのがある…と思ったらNotImplementedじゃん。
0754デフォルトの名無しさんNGNG
最近Rubyを始めたのですが、どうも変数への最初の代入が変数の宣言となる仕様は
少々気持ち悪いのですけど、慣れるものですかね?
明示的な宣言があったほうが、変数名の打ち間違いも簡単に見つかるし、
わかりやすいと思うのですが。
なんかバカなこと言ってたらごめんなさい。
0755名無しさん@カラアゲうまうまNGNG
>>732
あっさり却下。
0756名無しさん@カラアゲうまうまNGNG
宣言してても打ち間違えるとメソッドと見なされる罠。
動的な言語が嫌ならPascalでも使えば?
自分に合うものを探したほうがいいよ。
0757デフォルトの名無しさんNGNG
動的束縛よりも、Rubyにはいくつかのトラップがある。

関数オブジェクトが実際には「関数」オブジェクトではないという罠。

Smalltalkばりのブロックであるかのようでいて
Rubyではifやwhileがオブジェクト指向的枠組の中に回収されていないため、
CやPascal等のブロックと混合してしまうという罠
0758デフォルトの名無しさんNGNG
混合 ⇒ 混同
0759zeus.eonetNGNG
Net::HTTPで200 continueを処理するにはどうすればいい?
0760デフォルトの名無しさんNGNG
>>754
一生かかっても慣れません。
あきらめなさい。
0761名無しさん@カラアゲうまうまNGNG
HTTPレスポンスで200はOKだが。
rescue Net::HTTPInformationでredoするとか?
0762759NGNG
http://www.books.or.jp/Index2.aspxでISBNコードからの検索結果をRubyで取得したいがどうにもうまくいかん
再度リクエストを送ればいいみたいなので
http.post('/ResultList.aspx',query_data)
を二回やってみたら
「詳細情報:不正な数値が渡されています。」ってメッセージが返されるだけ
0763デフォルトの名無しさんNGNG
>>762
関係ないけど get の方が簡単そう。
http://www.books.or.jp/ResultList.aspx?scode=&searchtype=1&title=&series=&writer=&ymin=&ymax=&syuppansya=&isbn=4062573318&showcount=20&startindex=0
http://www.books.or.jp/ResultList.aspx?scode=&searchtype=1&title=&series=&writer=%82%e9%82%d1%82%ab%82%bf&ymin=&ymax=&syuppansya=&isbn=&showcount=20&startindex=0
http://www.books.or.jp/ResultList.aspx?scode=&searchtype=1&title=&series=&writer=%82%dc%82%c2%82%e0%82%c6+%82%e4%82%ab%82%d0%82%eb&ymin=&ymax=&syuppansya=&isbn=&showcount=20&startindex=0
0764デフォルトの名無しさんNGNG
とあるディレクトリ以下のファイルリストを保存しておいて
更新された場合にそのファイル名を返す・・・・
というスクリプトを作りたいんですが何か参考になるスクリプトやヒントぷりーず。
0765デフォルトの名無しさんNGNG
>>764
Find::find でファイル検索して、
ファイル名をキー、File#mtime を値にして dbm に格納でいいんじゃない?
0766デフォルトの名無しさんNGNG
Rubyのすばらしさを俺に語ってください
0767デフォルトの名無しさんNGNG
>>764
ディレクトリってローカルのディスクのこと?
0768デフォルトの名無しさんNGNG
次のRuby本に望む話題をあげてください。
0769デフォルトの名無しさんNGNG
>>768
もう要らない。
0770764NGNG
>>767
です。
0771デフォルトの名無しさんNGNG
>>768
クックブックみたいな。
0772デフォルトの名無しさんNGNG
このスレでも時々書かれるような、
ちょっとした機能や用途の為の小さなコードを集めた書籍、
みたいなものは欲しいなと思う時があります。
0773デフォルトの名無しさんNGNG
The Ruby Way がそれに近いよ。
http://www.amazon.com/exec/obidos/ASIN/0672320835/002-0332720-6810431
サンプルページが 120p 載ってるので参考に。
0774デフォルトの名無しさんNGNG
>>773
日本語訳版が欲しいな。
0775デフォルトの名無しさんNGNG
>774

 今日、神保町の三省堂で The Ruby Way を立ち読みしたけど、
英語の解説より Ruby の script の方が理解しやすかった(^^;

 そういう意味では、日本語訳でなくても良いのではないかと思った。

 
 
0776デフォルトの名無しさんNGNG
>>746
あ、そうか。
findは最初の1つで打ち切るから軽いと思ってたけど、
grepは===だけだからfindより軽い場合もあるのか。
0777デフォルトの名無しさんNGNG
RDE-0.960が出たらしい。IDEとしては使いやすい?

ttp://homepage2.nifty.com/sakazuki/rde.html

0778デフォルトの名無しさんNGNG
>>777
だれか kylix に移植してくれんかのう。
0779名無しさん@カラアゲうまうまNGNG
IDEの類は使わない
0780デフォルトの名無しさんNGNG
>>777
リファクタリング機能がほしいね。
あとは、UnitTest 支援機能。
0781デフォルトの名無しさんNGNG
イテレータて
繰り返すメソッドのことですか?
0782名無しさん@カラアゲうまうまNGNG
so
0783デフォルトの名無しさんNGNG
>>781
ブロックを伴うメソッドのことです。
0784デフォルトの名無しさんNGNG
繰返子
0785デフォルトの名無しさんNGNG
それ、なんて読むんだ?
0786デフォルトの名無しさんNGNG
「くりかえし」 じゃない?
0787デフォルトの名無しさんNGNG
繰り返しが無くてもイテレータなのですか?
0788デフォルトの名無しさんNGNG
というような語弊が出てきたので、
今はブロック、ブロック付きメソッドと呼ばれている。
0789デフォルトの名無しさんNGNG
なるほど
ありがとうございました
0790デフォルトの名無しさんNGNG
>>788
ブロック付きメソッドって呼び方は一般的?
0791デフォルトの名無しさんNGNG
Rubyプログラミング入門ではそう読んでいた。

全言語のページからブロック付きメソッドを検索しました。 約67件中1 - 10件目 ・検索にかかった時間0.09秒

Ruby のページだけ拾えて便利か?
0792デフォルトの名無しさんNGNG
>>778,780
無理だと思うけど。
0793デフォルトの名無しさんNGNG
もうおしまいだな
0794デフォルトの名無しさんNGNG
>>792
無理か…
eclipse の Ruby サポート状況を調べてみるかな。
0795792NGNG
>>794
RDEはWindowsに依存した部分が多すぎる(DosCommand, TEditor)ので、
移植が難しいと思う。

eclipseは

http://sourceforge.net/projects/rubyeclipse

にRuby用のプラグインがあるけど、IDEとして使えるという程度で、
RDEより完成度が低いと思う。

おれはFreeRIDEに期待しているけど、ruby-talkを読んでても音沙汰が無いな。
0796デフォルトの名無しさんNGNG
日本ではRubyカンファレンスってないの?

0797名無しさん@カラアゲうまうまNGNG
ここ2・3年はLinux ConferenceにくっついてPerl Ruby Conferenceってのをやっ
てる。
0798デフォルトの名無しさんNGNG
arei = ["top1-1"、
     ["sub1-1"、"sub2-2"]、
     ["sub2-1"、"sub2-2"]、
     "top1-2"、
     "top1-3"]
って配列があって(実際には、top〜、sub〜、ではなくめちゃく
ちゃ(識別不可)な文字列)

# 再帰を使った配列の配列の配列の配列のプリント
def recPrint(aArray)
 aArray.each { |str|
  if str.instance_of?(Array)
   recPrint(str)
  else
   p str
  end
 }
end

配列のすべての要素に対してある処理(ここでは出力のみ)を
したくて↑のようなメソッドを作りました。僕がやりたいのはトップ
レベルの要素のみに特別な処理をしたいのです。
(トップレベルは、top1-1、top1-2、に加えて、[sub1-1、sub1-2]、
[sub2-1、sub2-2]もあるけど、ここでは単純データのみを対象にしている)

↑のプログラムでは、例えば、
toplevel top1-1
sub1-1
sub1-2
sub2-1
sub2-2
toplevel top1-2
toplevel top1-3
のような出力を得ることはできません(トップレベルかどうか判別できないので)。

Rubyは不慣れですし、なにか見落としてそうで歯がゆいです。
よって、誰か助けてください。
0799デフォルトの名無しさんNGNG
http://js-web.cside.com/index.html
0800デフォルトの名無しさんNGNG
宿題?
トップレベルとそうでないのと同じことしてたらそりゃだめでしょ。
特別なことしたいのなら違いをつけなきゃ。関数を変えるとか引数
を変えるとか。

> Rubyは不慣れですし、なにか見落としてそうで歯がゆいです。
> よって、誰か助けてください。

もっと深刻。おまえさんの頭が不自由。よって助けられない。
0801デフォルトの名無しさんNGNG
>>800
カスはだまっててください。
0802名無しさん@カラアゲうまうまNGNG
800ではないが、

> 特別なことしたいのなら違いをつけなきゃ。関数を変えるとか引数
> を変えるとか。

これが理解できないなら黙ってろ。
0803デフォルトの名無しさんNGNG
>798
Rubyに不慣れってより、プログラムに不慣れなんじゃないのか?

800も指摘してるけど、トップレベルの要素とそれ以外に対する
処理が違っている以上、いきなり再帰を使うのは無理がないか?
それともどうしても再帰を使わなくてはならない事情でも……?

この場合、areiの各要素について配列かそうでないか判定する
関数を作って、もしそうでないなら、トップレベルに対する出力処理。
配列なら再帰を使ったそれ以外の出力処理をする下請け関数に
渡すようにするのが自然だと思うが。

ちなみに、Array#flattenを使えばこの場合再帰もいらないんだが・・・

0804名無しさん@カラアゲうまうまNGNG
Arrayを含むArrayだから、再帰を使うというのはある意味必然だと思う。
この程度なら>>800の後者にするかな。そのほうがシンプルそう。
0805デフォルトの名無しさんNGNG
HTMLエスケープされた文字列をCGI.unescapeElementを使って特定の要素だけ戻しています。
その特定の要素の中にコメント(<!-- -->)をつけたしたいのですがどうすればいいでしょうか?
0806名無しさん@カラアゲうまうまNGNG
特定の要素ってのが一つだけならsub(/>/, '><!-- -->')とかでいいんじゃないの。
0807デフォルトの名無しさんNGNG
Apolloってどうよ?
ちょっと使ってみた限りではとっても良かった。
0808デフォルトの名無しさんNGNG
>807

 DBアプリが Ruby でサクサク書ける所と Strings や DateTime 等、
Delphi 譲りの使いやすいクラスがあるのが良いかな。

 あと、 msi を使っているのでインストールやアップデートが簡単、
http://jurader.s1.xrea.com/apollo/tutorial/tut_index.html にある
チュートリアルがよく出来てる。と云う点も利点だと思うけど、既に
使って見てるなら、知ってるでしょう。

 欠点は、ドキュメント不足とレイアウト関連が弱い点(これは Windows
の欠点かもしれないが)。
0809名無しさん@カラアゲうまうまNGNG
今そのチュートリアルを眺めてみたが、
http://jurader.s1.xrea.com/apollo/tutorial/tut_form.html
は文字コードと改行コードを混同してるな。
0810デフォルトの名無しさんNGNG
昔ML入ってたことあるけど、Tacosってやつが知ったかでライセンスの嘘の話を
撒き散らすのがうざかった。
著作権などの法律には詳しいようだったが、ライセンスの知識
については一人でアホな解釈ばかりだった。
0811デフォルトの名無しさんNGNG
>>808
Apolloは少し触ったことがあるが、DBアプリを作っている人なんかいるのか?

>>809
確かに混同しているな。まあ、WindowsではShift_jis + "\r\n"、Linuxや*BSDでは
euc-jp + "\n"の組み合わせが多いことに違いはないが。
ところで、このチュートリアルは少し説明が冗長じゃないか?
0812デフォルトの名無しさんNGNG
>>808
そのチュートリアルは Apollo のページからもリンクされているから知っているけど、
読むのがめんどくさくなるようなページなので途中でやめた。
0813デフォルトの名無しさんNGNG
>811-812
 まあ、チュートリアルなんてのは、冗長な位がちょうどいいんじゃ
ねえのかな。文章読むのが面倒なら、サンプルのスクリプトを読めば
いいだろうし。

0814デフォルトの名無しさんNGNG
>>807
日本語は通りますか?
unicodeに変換しないといけない?
0815デフォルトの名無しさんNGNG
Cのライブラリのヘッダを渡すと自動的に
Rubyからその関数を呼べるようなツール・ライブラリはないですか?
0816デフォルトの名無しさんNGNG
Rubyのデベロッパーてすごいな
0817デフォルトの名無しさんNGNG
>>815
swig を使うとラッパーライブラリが比較的簡単に作れる。
Ruby/DL と使えば直接呼べる。
0818デフォルトの名無しさんNGNG
>814
 基本的には ruby だから Shift-JIS で問題ない。
0819デフォルトの名無しさんNGNG
>>818
THX!
ダウンロードしてサンプルを見たら、普通に漢字がスクリプト中に入っていました。
0820名無しさん@カラアゲうまうまNGNG
Powerd by RubyのAAキボンヌ。だそうだ([ruby-talk:43721])
0821名無しさん@カラアゲうまうまNGNG
つーか作っちゃったよw
http://www.its-explosive.net/~davey/tech/ruby/ruby.htm
0822デフォルトの名無しさんNGNG
>>821
AAというか、1文字1ドットの画像(w。
ワラタ。
0823デフォルトの名無しさんNGNG
Ruby.NETっていつ出るの?
というかgoogleでどうやって"Ruby.NET"を検索すりゃいいの?
0824デフォルトの名無しさんNGNG
モジュールの動的ロードはできないの? class A  def b(n)   include n  end end a = A.new a.b('ModuleName') 実行すると、 Aクラスにincludeメソッドはありませんって言われる。
0825デフォルトの名無しさんNGNG
>>823
出ません。
出るとしても、オフシャルじゃなくて多分ユーザーが作るんだろうね。
>>824
できません。
0826名無しさん@カラアゲうまうまNGNG
>>824
何がしたいのかいまいちはっきりしないがこういうことか?

class A
 def b(m)
  extend(m)
 end
end

a = A.new
a.b(Enumerable)

あるいはこっちか。

class A
 def b(m)
  self.class.module_eval {extend(m)}
 end
end

a.bで、aだけにモジュールを追加したいのか、A全体に追加したいのか。
0827デフォルトの名無しさんNGNG
>>823
ttp://sourceforge.jp/projects/netruby/
0828デフォルトの名無しさんNGNG
Thread.age
0829デフォルトの名無しさんNGNG
見事なクソスレですね。
0830デフォルトの名無しさんNGNG
ソートって昇順だけ?降順にするにはリバースつかうん?
0831デフォルトの名無しさんNGNG
sortにあたえるブロックを変えれば、reverseしなくても済む。
0832デフォルトの名無しさんNGNG
[1,2,3].sort{|x,y| y <=> x}
0833デフォルトの名無しさんNGNG
C言語の
#ifdef DEBUG
みたいなのはありませんか?
自作のデバッグ用の機能を場合によってつけたり取り除いたりしたいのですが。
みなさんはデバッグどうしてますか?
0834デフォルトの名無しさんNGNG
-dつけると$DEBUGの値がtrueになる

> ruby -d -e 'p $DEBUG'
true
> ruby -e 'p $DEBUG'
false
0835名無しさん@カラアゲうまうまNGNG
[ruby-dev:17706]はいったい何を狙ったもんなんだろう…。
デメリット以外まったく思い付かん。だれか説明してくれ。
0836デフォルトの名無しさんNGNG
>>835
bladeが死んでるらしくて閲覧できないよう。
0837デフォルトの名無しさんNGNG
>>835
名無し特異メソッドをブロックのように書きたいのだと思はれ。
0838デフォルトの名無しさんNGNG
>>836
まだ死んでる。
確認したいことがあるのに、、、
0839デフォルトの名無しさんNGNG
>>834
ありがとー。
当たり前ながらプリプロセッサという概念はないんですね。
デバッグコードを埋める→コードぶくぶく太る
になっちゃうなぁ。
センスない私はちと扱いに戸惑います。
0840デフォルトの名無しさんNGNG
>>839
cpp通すとか。当然場合分けのコードはC風に#ifとか#ifdefになります。

% cpp foo.rb | ruby

でも現在(今後も?)のRubyにそのような機能が無くて、
しかもユーザ的にもあまいその手の欲求が無い(本当か?)ということは、
代替手段があるか、根本的な考え方が違うとか、そういうところかも。
漏れはデバグ用コードは平気で残すけども。だって実行自体には
影響ないだろうし。
0841名無しさん@カラアゲうまうまNGNG
>>837
それはまだ分かる。でも、それと「selfを置き換える」ってのが、一体どうつー
かなんで結び付くのかがまったく理解できん。
0842デフォルトの名無しさんNGNG
>>841
メソッド定義なのだから、普通のメソッド定義と同じ context、つまり
class ... end の中で定義するのと同じ context にしたいということでは。

ブロックの context が変わることは現状でもあります。
Object#instance_eval、Module#module_eval と 1.7 の
Module#define_method にブロックを渡した場合。
0843842NGNG
って、 >>826 で使ってまんがな。
0844名無しさん@カラアゲうまうまNGNG
>>842
そもそもの動機は現在のブロックを知りたいってことだと思ってたんだけど、
もうそれとは独立した要求なのかな。どうもいまいち何をどうしたいのか、結
構みんな混乱してるような。

暗黙の{instance,module}_evalを行うのはTkとかModule.newとかもあるけど、
できればあまり例外を増やして欲しくない。少なくとも、定義側で決めるべき
であって、使用側でオブジェクト内部にアクセスできるかどうか決めるのは良
いとは思えない。
0845デフォルトの名無しさんNGNG
「たのしいRuby」を読んだプログラミング初心厨です。
次に初心者が読むべき本を教えてください。
このスレ遡って見ると「Rubyプログラミング入門」あたりになりそうですが、
他にありましたらお願いします。
0846デフォルトの名無しさんNGNG
>845
次にやるのは、実際にプログラムを書くこと。
0847デフォルトの名無しさんNGNG
Rubyで書かれた実用的なアプリケーションってあります?
0848デフォルトの名無しさんNGNG
RubyでGUIできるの?
0849デフォルトの名無しさんNGNG
>>847,>>848
SGmailは両方の答えになるか?
0850848NGNG
tkは使えるのですか?
windowsでRuby+GUIプログラミングしてみたいです。
Rubyともひとつtcl/tkも入れないとだめなのかな?
まあ、気軽にぼちぼちやっていこうと思ってます。
0851デフォルトの名無しさんNGNG
>846
「書け、然らずんば、去れ」という感じでしょうか。

もうちょい、このままでつづけてみます。

ポチポチと書いてはみるものの、
なにせ初心厨、今だなお足元覚つかず、
うーんと不安を募らせることも多々あり、
暗き道筋照らすロウソクがもう一本も欲しいかなと思った次第でして・・・。
お手間取らせて、スイマセン。
0852デフォルトの名無しさんNGNG
>>850
WINでGUIならvrubyがいいと思うぞ
ttp://www.osk.3web.ne.jp/~nyasu/software/vrproject.html
0853デフォルトの名無しさんNGNG
>>851
プログラミングRubyはいいぞ
短かくて素直で気のきいたコードがたくさん
0854デフォルトの名無しさんNGNG
>>851
プログラミングRubyはいいぞ
短かくて素直で気のきいたコードがたくさん
0855名無しさん@カラアゲうまうまNGNG
>>851
> 「書け、然らずんば、去れ」という感じでしょうか。

つーか、プログラムを書かない奴には用のない代物だし。

そういえば「レシピ本」の話もあるな。
0856デフォルトの名無しさんNGNG
>>847
QuickML Migemo 匿名掲示板(仮)
まあ、アプリよりツール作成向き。
0857デフォルトの名無しさんNGNG
>>856
>匿名掲示板(仮)
初めて知りました。
0858デフォルトの名無しさんNGNG
こんにちh
0859デフォルトの名無しさんNGNG
どこかはいえないけど、仕事でいくつかrubyを使ったサイトを納めてるよ。
って、コードを公開してないということはないも同然か(w

もうひとつ案件きてるけど、こいつもrubyで作るつもり。
0860デフォルトの名無しさんNGNG
>>857
Ruby(walrus) + C++ だそうだ。
http://210.155.146.159/bbs/
walrus がもうちょっとこなれてくれればなあ。

>>858
"こんばんは".chop #=> "こんばん\202"
0861デフォルトの名無しさんNGNG
>854
ありがとうございます。
ちと高い本なので、まずは本屋へ立ち読みに行ってきます。
「たのしいRuby」だけでは少々心許ないですし、
かといって、初心者にはWEB上の情報はなかなか見つけづらく、読みづらく、
やっぱ本が欲しかったのです。

>855
確かに。
ただ初心者なんで、用の無い代物を用の有るモノにしていく途上ってことで、ご勘弁願いたいです。

流れから外れたカキコでゴメン。
0862デフォルトの名無しさんNGNG
>>861
helpは見たのかの??
0863名無しさん@カラアゲうまうまNGNG
>>862
helpってなに? http://www.ruby-lang.org/ja/man-1.6/とか?
0864デフォルトの名無しさんNGNG
>>850
WindowsならApolloがよいと思われ。
0865デフォルトの名無しさんNGNG
Windows上のGUIでThread動いた人いる?どうやった?
0866デフォルトの名無しさんNGNG
>>865
cygwin版なら動くらしいけど、あれはWindows上というのかなあ。
0867名無しさん@カラアゲうまうまNGNG
>>865
ASRは使えると思うが。
他のもできそうな気がするが、反応が鈍かったりするか知れん。
0868デフォルトの名無しさんNGNG
最近、教祖まつもとの態度がでかくなった気がするが、気のせいか?
0869デフォルトの名無しさんNGNG
>>868
>>835のキティ相手なら、あれで良いかと。
0870デフォルトの名無しさんNGNG
http://www.osk.3web.ne.jp/~nyasu/software/vrproject.html
0871デフォルトの名無しさんNGNG
http://www.ganaware.org/S/sow/
にあるstart.pl を利用して、vmware内のIE内にGoogleの
検索結果を表示させるスクリプトを書いてます。
例えば、
% cat keyword
浜崎あゆみ
あゆ
AYU
ハマザキ アユ

% cat suffix
さま
様
たま
タン

の時に

% googlize-declinable_word keyword suffix
と使う。


% cat googlize-declinable_word
#!/usr/bin/env ruby
require "kconv"

keyword_file = ARGV.shift
suffix_file = ARGV.shift
kw_count = 1
googlized_count = 1

File.foreach(keyword_file) do |kw|
print "keywordの#{kw_count}つ目-->#{kw}をループしてます。"
kw_sjis = Kconv.tosjis(kw)
File.foreach(suffix_file) do |sf|
sf_sjis = Kconv.tosjis(sf)
system("~/local/bin/start.pl 'http://www.google.com/search?hl=ja&meta=lr=lang_ja&num=10&q=#{kw_sjis}+#{sf_sjis}'")
sleep 1 # ← 間隔は適宜変更
print "現在#{googlized_count}つ目が検索中... #{kw} #{sf}"
sf_count += 1
end
kw_count += 1
end


ところが、

&q=#{kw_sjis}+#{sf_sjis}'")
の部分の sf_sjis が外れて、kw_sjisのみ
が検索されてしまいます。

rubyには文字列の連結に
何か特別な書き方があるのでしょうか。
初心者ですが、よろしくお願いします。



0872名無しさん@カラアゲうまうまNGNG
>>871
systemの引数が一つでメタキャラクタを含んでいる場合は、/bin/sh経由で実行される。
この場合は&'?~など。
START_PL = File.expand_path("~/local/bin/start.pl")

system(START_PL, "http://www.google.com/search?hl=ja&meta=lr=lang_ja&num=10&q=#{kw_sjis}+#{sf_sjis}")

と引数が複数あれば直接実行する(かわりにメタキャラクタは解釈されないのでパイプやリダイレクトは働かない)。
0873しまった、途中だった。NGNG
で、おそらくSJISに変換した結果、シェルで誤って解釈されるコードが含まれてしまったのではないかと想像してみた。
0874デフォルトの名無しさんNGNG
>>869
>>835の対応のことなら、
むしろ、よくあそこまで辛抱してつきあったとホメてやりたい
0875871NGNG
サンクス>873
sjisが怪しいということで
以下のようにしてみた。

#!/usr/bin/env ruby
require "kconv"

START_PL = File.expand_path("~/local/bin/start.pl")

keyword_file = ARGV.shift
suffix_file = ARGV.shift
kw_count = 1
googlized_count = 1

File.foreach(keyword_file) do |kw|
print "sjis DebugPrint keywordの#{kw_count}つ目-->#{kw.chop}をループしてます。\n"
kw_sjis = Kconv.tosjis(kw)
 File.foreach(suffix_file) do |sf|
  sf_sjis = Kconv.tosjis(sf)
  print "#{kw_sjis.chop} #{sf_sjis.chop}\n"
  #system("~/local/bin/start.pl 'http://www.google.com/search?hl=ja&meta=lr=lang_ja&num=10&q=#{kw_sjis}+#{sf_sjis}'")
  system(START_PL, "http://www.google.com/search?hl=ja&meta=lr=lang_ja&num=10&q=#{kw_sjis}+#{sf_sjis}")
  sleep 1 # ← 間隔は適宜変更
  print "現在#{googlized_count}つ目を検索中... #{kw.chop} #{sf}"
  googlized_count += 1
 end
kw_count += 1
end
これをEUC_JPなターミナルでやると
おかしくなるので、
WinのTeraTermでターミナルをSjis表示にして実行
すれば、sjisのところは表示されているのを確認。


原因のsjis文字がだめなら、
URLエンコーディングなどで
%82%C6・・・・などに変換したいけど、
やり方判りません。
これから、rubyでURLエンコーディングしてる人を探して来ます。


0876デフォルトの名無しさんNGNG
CGI::escape
0877871NGNG
#!/usr/bin/env ruby
require "kconv"
require "cgi"
START_PL = File.expand_path("~/local/bin/start.pl")

keyword_file = ARGV.shift
suffix_file = ARGV.shift
kw_count = 1
googlized_count = 1

File.foreach(keyword_file) do |kw|
  print "keywordの#{kw_count}つ目-->#{kw.chop}をループしてます。\n"
  kw_esc = CGI::escape(kw)
  File.foreach(suffix_file) do |sf|
   sf_esc =CGI::escape(sf)
   system(START_PL, "http://www.google.com/search?hl=ja&meta=lr=lang_ja&num=10&q=#{kw_esc}+#{sf_esc}")
   sleep 1 # ←間隔は適宜変更
   print "現在#{googlized_count}つ目を検索中... #{kw.chop} #{sf}"
   print " #{googlized_count}つ目のDebug #{kw_esc.chop} #{sf_esc.chop}\n"
   googlized_count += 1
  end
kw_count += 1
end
0878デフォルトの名無しさんNGNG
>>872 >>876 できました 有難うございました。 CGI::escape した時に語尾に付加される%0 ってなんですか?
0879デフォルトの名無しさんNGNG
つーかie=euc-jp&oe=euc-jpつけてみれば?
0880デフォルトの名無しさんNGNG
>>874
ああ。
自分ならとっくにブチキレてるな。
0881putsとprintNGNG
require 'net/http'

host = 'www.ruby-lang.org'
path = '/en/'

http = Net::HTTP.new(host)
page=http.get(path)[1].delete("\n")
pages= page.scan(%r|<div [^<]+>Ruby Versions.*?</div>|i)[0].gsub(%r|<.*?>|,'')
#puts pages
print pages


において
printだと表示が直ぐに消えるけど
puts だと STDOUTにちゃんと表示される。
これって仕様ですか?
0882デフォルトの名無しさんNGNG
zsh だったりする?
0883881NGNG
>>882 はい。zsh です。
0884名無しさん@カラアゲうまうまNGNG
zshはプロンプトを行頭から表示するらしいので、それに消されてるんだろう。
0885デフォルトの名無しさんNGNG
~/.zshrc あたりで unsetopt promptcr しておけば消えないはず。
0886putsとprintNGNG
http://dengaku.org/~naoki/zsh/FAQ-J/zshfaq03-j.html#l39
読みました。
以前からの悩みも同時に解決しました。
有難うございました。
0887名無しさん@カラアゲうまうまNGNG
なんか全然rubyの話題じゃないよ。
0888デフォルトの名無しさんNGNG
exerbでApolloごとexeファイルにできますか?
0889848_NGNG
>>852
>>864
ありがとうございます。私の所はmswin32の方なのでvrubyはsigwinがないと駄目
みたいでした。
appoloは皮って居ますね。こちらはインストールして直ぐにGUIプログラミング
が出来るようになりました。中々良く出来ていますね。とても面白いです。
0890名無しさん@カラアゲうまうまNGNG
vrubyはcygwinだけじゃなくてmswin32でも動くはずだけど。
少なくとも以前試したときは。
0891名無しさん@カラアゲうまうまNGNG
>>888
exerb-dev MLで聞いてみたほうがいいと思うが、
ちょっと見た感じではコアの置き換え自体はそんなに問題ではないと思う。
どちらかというと問題は、Apolloがどの程度ruby本体を改造してるかかな。
あと、Apolloって本体はDLLになってるんだっけ?
0892デフォルトの名無しさんNGNG
>>891
今ちゃんと調べる時間が無いんでアレですが、
今のApolloはRuby側のDLLには手を付けない様になっているはず。
Apolloの本体はPhi.soというDLL(だよね?)のはず。
間違ってたらスマソ。
0893名無しさん@カラアゲうまうまNGNG
>>892
だったら、phi.soもくっつけてやればいいだけのような。
0894デフォルトの名無しさんNGNG
vrubyはmswin32でも動く(もちろんmingwでも)。
というか、両方のプラットフォームで、それぞれメンテナがバイナリも
公開している。
0895デフォルトの名無しさんNGNG
だれかこいつ[ruby-talk:46041]になんとかいってやってくだちい。
0896putsとprintNGNG
>>895
ウケタ
0897デフォルトの名無しさんNGNG
オブジェクト変数とはオブジェクトへのポインタですか?
クラス内でしか利用できないのですか?

クラス内にスコープを持つ変数が使いたいです。プロパティのように。
0898デフォルトの名無しさんNGNG
>>897
オブジェクト変数ってなに? インスタンス変数のこと?

Class Foo
 def initialize
  @bar = nil # クラス内でしか見えない
 end
end

ってできるけど、それとは違うのかな。

すべての変数はオブジェクトへの参照だよ。
ポインタと似てはいるけども。
0899デフォルトの名無しさんNGNG
あ、失礼、そうです。インスタンス変数でした。
@barはinitializeで初期化するのですか?例えば、

 Class Foo
  @bar="hello"
  def shigeSay
   print "shige!"
  end
 end

のように@barを書いて良いですか?
あと、Foo.deleteはしなくて良いのですか?
0900デフォルトの名無しさんNGNG
>>899
そこに@barを書くのはダメだったと思う。
それと、クラスの定義はClassじゃなくてclassね。

class Foo
  def initialize
    @bar = "hello"
  end
  def shigeSay
    puts "shige!"
    puts @bar
  end
end
Foo.new.shigeSay

こんな感じ。初期化はinitializeメソッドでやる。
Foo.newってやると、initializeが呼ばれるようになっている。

で、通常使い終わったインスタンスを明示的に開放してやる必要はない。
ガベージコレクトのおかげで、ある特定のタイミングで
参照されなくなったインスタンスは自動的に開放される。
0901デフォルトの名無しさんNGNG
>>900
あっと、補足。

別にインスタンス変数はinitializeメソッドの中だけでしか初期化できないわけじゃない。
う、二重否定だ。つまりinitializeで初期化しなかった変数だってつかえる。

class Foo
  def initialize
    @bar = "hello"
  end
  def setnum(n)
    @n = n
    self
  end
  def shigeSay
    puts "shige!"
    puts @bar
    puts @n
  end
end
Foo.new.shigeSay
Foo.new.setnum(10).shigeSay

ただ、インスタンス変数の初期化はinitializeでやるのが普通(だと思う)。

もし読んでないのなら、
ttp://www.ruby-lang.org/ja/uguide/uguide00.html
この辺読んどくといいよ。
0902デフォルトの名無しさんNGNG
>もし読んでないのなら、
>ttp://www.ruby-lang.org/ja/uguide/uguide00.html
それ読みました。で、いまリファレンスマニュアルとProgrammingRuby(english)
の方読んでたんです。

それから、これ多分nilになってると思います。私の所ではそうでした。
def initialize
@bar = "hello"
end
これは多分、
 def initialize(s)
  @bar=s
 end
として、Foo.new("hello")としないと駄目みたいです4。
0903デフォルトの名無しさんNGNG
んなこたぁない
0904デフォルトの名無しさんNGNG
で、これから、rubyを勉強したいんですが、
1からやさしく教えてくれているweb siteって、ありますか?
0905デフォルトの名無しさんNGNG
>>902
おー、原書のProgrammingRuby読んでるのか。おれ、日本語版しか持ってないヘタレ(w

>それから、これ多分nilになってると思います。私の所ではそうでした。
>def initialize
>@bar = "hello"
>end

いや、@barは"hello"で初期化されるよ。
ためしにそのクラスで@barをputsするメソッド作って呼んでみて見て。

def puts_bar
 puts @bar
end

みたいな。

サイトはしらんが、「Rubyプログラミング入門」はお勧め。
結構読み応えある(とおれは思った)。
ttp://www.bk1.co.jp/cgi-bin/srch/srch_detail.cgi/3d48d6aa9290b01024e6?aid=&bibid=01943123&volno=0000
0906デフォルトの名無しさんNGNG
あ、またまた失礼。上のinitializeメソッドで@bar初期化されました。
私のコードに打ち間違いがあったようです。
英語のProgrammingRuby読んでたらinitializeがinitializerになってる
んだもんなぁ・・・。
0907デフォルトの名無しさんNGNG
ま、あとは分かんないことがあったらここで聞いてみるとか。
ここしばらくネタもないし。
0908デフォルトの名無しさんNGNG
>904
探したけど、ないなぁ。本探す方が良いかもしれない。

メソッドの呼び出し形式は関数形式とレシーバ形式があるようですが、これは
Integer(3.14) --- 関数形式
Kernel.Integer(3.14) ---レシーバ形式
でよろしいの?
0909デフォルトの名無しさんNGNG
>>904
http://homepage1.nifty.com/~tetsu/ruby/intro/
0910putsとprintNGNG
=**=<<=
*=>>=
+=/=&=
-=%=|=
.=x=^=

rubyに上記の演算子を追加させる
モジュールってありますか?

.= がツカーイターイのよ。
0911デフォルトの名無しさんNGNG
Tabが消されてたので、再度。
=*    *=    <<=
    *=    >>=
+=    /=    &=
-=    %=    |=
.=    x=    ^=
0912るび厨NGNG
るび基地にモジュールとクラスの違いをきいたけれど答えてくれないよ
ウハーン!
0913デフォルトの名無しさんNGNG
>>911
色んなものが飛び交うAAですか?
0914911NGNG
>>913
代入演算子のことだけど、何か?
0915デフォルトの名無しさんNGNG
>>914
演算子は勝手に増やせないだろ。
0916通りすがりNGNG
>>915
http://www.google.com/search?hl=ja&ie=Shift_JIS&q=%89%89%8EZ%8Eq%82%CC%83I%81%5B%83o%81%5B%83%8D%81%5B%83h&lr=lang_ja
0917デフォルトの名無しさんNGNG
>>916
オーバーロードじゃ演算子は増えないだろ
0918デフォルトの名無しさんNGNG
なんかしんないけどLinuxをインストールしたらRuby処理系が付いてきた。
やる気無くした。
0919デフォルトの名無しさんNGNG
>>918
気にするな。使わなければないのとおなじ。

それはそれとして、できればそういうネタは撲滅スレでやってくれ、
と一応書いてみる。
0920デフォルトの名無しさんNGNG
>>918
わざわざこんなところに書くようなことか?
そういえばカッコいいと思っているだけじゃ?
と一応書いてみる。
0921sageNGNG
日本語のページからインラインスケートを検索しました。 約23,600件中1 - 50件目 ・検索にかかった時間7.74秒
ぐーぐるで7秒もかかったよ、
と一応書いてみる。
0922デフォルトの名無しさんNGNG
MacOS8.6でRubyは動きませんか…?
0923デフォルトの名無しさんNGNG
>>922
最新版でなくても良いなら、動くものがあります。

MacRuby
http://www.imasy.or.jp/~hisa/ruby/macruby.html
0924デフォルトの名無しさんNGNG
>>911
この中で *= <<= >>= += /= &=
-= %= |= ^= あたりは使えるんじゃないかな。
.= は無理。
0925sageNGNG
英辞郎サイトがUserAgentをcheckし始めたので、
「英辞郎 - コマンドラインから和英/英和単語翻訳
http://bulknews.net/lib/columns/02_eijiro/column.html」
にあるコマンドが使えなくなった。UserAgentをつけろという。

元ソースを苦手なperlで弄るより、
rubyで改変したいが、rubyでUserAgentをつけるにはどーすれば
いいのかおしえてくらはい。
0926名無しさん@xyzzyNGNG
俺も困ってるよ。てか、UA じゃなくてリファラのチェックしてるんじゃ
ないかなあ。HTTP ヘッダに流せば簡単に偽造できるよ。UA も リファラ
も。
0927デフォルトの名無しさんNGNG
とりあえず手っ取り早くw3mを使って移植してみたけど、
「ユーザ名/パスワードが無効です」っつわれるな。
あとは適当にやってくれ。

#! /usr/bin/ruby
# eijiro.pl - http://www.alc.co.jp/eijiro/

require 'kconv'
require 'net/http'
require 'uri'
require 'readline'
#use HTML::FormatText;
#use HTML::TreeBuilder;

HISTORYFILE = File.expand_path('~/.eijirohistory')
W3M = "w3m"
USER_AGENT = "UserAgent: eijiro.rb"
ACTION = 'http://www.alc.co.jp/eijiro351.php3'

def translate(line)
 # 'je' if non-ASCII char is contained or 'ej'
 type_in = line.index(/[^\x00-\x7f]/) ? 'je' : 'ej'
 word_in = URI.escape(line.tosjis, '\W');
 system("w3m", "-header", USER_AGENT, "#{ACTION}?word_in=#{word_in}&type_in=#{type_in}")
end

# Terminal mode / Argv mode
unless ARGV.empty?
 translate(ARGV.join(' '))
else
 # read history
 history = []
 if File.exist?(HISTORYFILE)
  Readline::HISTORY.push(*File.readlines(HISTORYFILE).uniq)
 end

 # readline & translate
 while line = Readline.readline('eijiro> ')
  break if /^!exit/ =~ line
  translate(line)
  open(HISTORYFILE, "a") {|f| f.puts(line)}
  Readline::HISTORY << line
 end
 line or puts
end
0928デフォルトの名無しさんNGNG
こんなんでどうよ?


ACTION = 'http://home.alc.co.jp/db/owa/eijiro_red2'

def translate(line)
 # 'je' if non-ASCII char is contained or 'ej'
 type_in = line.index(/[^\x00-\x7f]/) ? 'je' : 'ej'
 word_in = URI.escape(line.tosjis, '\W');
 system("w3m",
    "-header", USER_AGENT,
    "-header", "Referer: http://www.alc.co.jp/sa_menu.html",
    "#{ACTION}?word_in=#{word_in}&type_in=#{type_in}")
end
0929デフォルトの名無しさんNGNG
某スレより。
------------------
bindkey -s "^xi" '\C-a`\C-e`\C-aforeach i \(\C-e\)'
bindkey -s '^[l' '\eb~/\ef\C-x*'
とかはかなりイイ。
普段は、C-mな俺は、C-jを
bindkey '^j' accept-and-infer-next-history
に、また
bindkey '^[^I' reverse-menu-complete
も直感的でイイ。
また、キーマップ指定で、
bindkey -M menuselect 'キー' command
とできるのもイイ。
-------------------
みんなのbindkey -s を見せ合おう。


0930929NGNG
マチガイ。
無視してください。
0931デフォルトの名無しさんNGNG
てか、英辞郎のページって
頻繁にURL変更しない?
ブラウザのGetメッソドで直接
検索させている奴は
一々対応しなければならず、
メンドーイはず。
0932デフォルトの名無しさんNGNG
>>928
>  word_in = URI.escape(line.tosjis, '\W');

rubyのURI.escapeはperlのURI::Escapeとは違って、unsafeにStringを渡すと
Regexp.quoteするので、/\W/とすべし。
0933>>92NGNG
>>928

system("w3m","-dump",
"-header", USER_AGENT,
"-header", "Referer: http://www.alc.co.jp/sa_menu.html",
"#{ACTION}?word_in=#{word_in}&type_in=#{type_in}")
end

の方がイイ。
いちいちw3mが起動するのはウザイ。

0934デフォルトの名無しさんNGNG
つうかおまえら Nifty 使ってる友達のひとりもいないのか?
0935デフォルトの名無しさんNGNG
http://ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=4-274-06461-1
の索引って公開されていますか?
http://ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=4-274-06385-2
の方は公開されているので、もしかしたら公開されていると嬉しい。


http://www.oreilly.com
なんて、ほぼ全ての本について、索引を公開している。
本を紐解く前に、PCで本の内容が確認できるのは嬉しい。
9月にプログラミングPer l第三版 が出版されますが、
上下巻もあるのなら、英語版を買って、索引を検索できるように
したほうが圧倒的に便利だと言える。

独り言でした。
0936デフォルトの名無しさんNGNG
ruby-talk まで Unicode か。
0937デフォルトの名無しさんNGNG
>>895

[ruby-talk:45931]もひどいな。
0938デフォルトの名無しさんNGNG
>>927
これを改造して、Postメソッドを発行できるように
出来ますか?
0939デフォルトの名無しさんNGNG
できます。
0940デフォルトの名無しさんNGNG
携帯電話にメールを送る場合に整形してくれるスクリプト(ruby)があったと思うんだけど
名前かURLきぼん。
0941デフォルトの名無しさんNGNG
>>937
厨房は放置することにしますた。
0942デフォルトの名無しさんNGNG
>>940
http://www.ruby-lang.org/en/raa-list.rhtml?name=Scarlet
0943デフォルトの名無しさんNGNG
>>941
今でもいくつかレスが付いてる。

しかし、この厨房、[ruby-talk:46032]とは全く違うなあ。
0944デフォルトの名無しさんNGNG
>>943
禿同。
[ruby-talk:46376]にも呆れられてしまった模様。
0945デフォルトの名無しさんNGNG
ところでお前ら、devもlistもマターリしすぎです。
少しはpython-ml-jpの殺伐さを見習ってくだちい。
0946デフォルトの名無しさんNGNG
>>945
あのようには なりたくないものだ。
0947デフォルトの名無しさんNGNG
次のスレはどうする?
0948デフォルトの名無しさんNGNG
Ruby/Gtk でウィザード作りたいのですが、どうやると効率的でしょう?
5枚ウィザードあるなら、5個クラス用意してそれを順に出して……とか
やってるのですが、なんか激しくダメな方法な気が致します。
0949tiltwait(;´Д`)ハァハァNGNG
>>948
各viewに対してGtk::Dialogのサブクラスを作ってってことなら、問題はない
のでは。いちいちサブクラスを作るのはRuby的には回りくどい気はするけど。
中心にあるモデルをそれぞれ別のオブジェクトにしてってつもりなら、場合に
よるが、一度設計の見直しを奨める。

> 5枚ウィザードあるなら、
つーか、それぞれのダイアログをウィザード1枚と数えるとは知らなかった。
0950デフォルトの名無しさんNGNG
>>947
立てるの?
立てるとしたら、以前あったrubyスレとは別にする?
0951デフォルトの名無しさんNGNG
とりあえずRubyの本スレっぽくしてくれると嬉しい。
一本はまともなRubyスレ欲しいし。
0952デフォルトの名無しさんNGNG
次スレです。

Rubyについて Part 2
http://pc3.2ch.net/test/read.cgi/tech/1028906179/l50
0953デフォルトの名無しさんNGNG
速いね。thx
0954デフォルトの名無しさんNGNG
>>949
MALIKTO!
0955デフォルトの名無しさんNGNG
タイトルにRubyの付いたスレ。
ム板でないスレの方が良い感じ?

rubyを語るスレッド
http://pc.2ch.net/test/read.cgi/unix/1018967064/l50

【Ruby】RubyでCGI
http://pc.2ch.net/test/read.cgi/php/988948655/l50

goRua(Ruby/Gtkによる2chブラウザ)ってどうよ。
http://pc.2ch.net/test/read.cgi/unix/1008120213/l50


(駄スレ?)

ruby撲滅スレ その2
http://pc3.2ch.net/test/read.cgi/tech/1009193707/l50

Rubyの実装に疑問あり!
http://pc3.2ch.net/test/read.cgi/tech/1004873294/l50

【戦慄】最強対決!!COBOL対Ruby!!【恐怖】
http://pc3.2ch.net/test/read.cgi/tech/1013260213/l50

Ruby v.s. Python
http://pc3.2ch.net/test/read.cgi/tech/980786239/l50

Ruby >>>>>> C++ だろ(ぷ
http://pc3.2ch.net/test/read.cgi/tech/1017201348/l50

shige と作ろう Ruby で CGI
http://pc.2ch.net/test/read.cgi/php/1001292585/l50

他にもあるでしょう。
0956デフォルトの名無しさんNGNG
>>955
上3つを、新スレに貼りますた。
0957デフォルトの名無しさんNGNG
>>955
> rubyを語るスレッド
> http://pc.2ch.net/test/read.cgi/unix/1018967064/l50
このスレは非常に閑散としてる。

> 【Ruby】RubyでCGI
> http://pc.2ch.net/test/read.cgi/php/988948655/l50
>
> goRua(Ruby/Gtkによる2chブラウザ)ってどうよ。
> http://pc.2ch.net/test/read.cgi/unix/1008120213/l50
ちょっと目的が違うからなぁ。

> ruby撲滅スレ その2
> http://pc3.2ch.net/test/read.cgi/tech/1009193707/l50
その1の途中あたりは結構いい感じになってたんだが、今のはただの個人叩きだけ。

> Rubyの実装に疑問あり!
> http://pc3.2ch.net/test/read.cgi/tech/1004873294/l50
これもネタ切れっぽい。

あとはカス。
0958デフォルトの名無しさんNGNG
Arrayクラスのfilterメソッドって今はないのですか?
実行すると何か
warning: Array#filter is deprecated; use Array#collect!
と叱られるんですけど.....
0959デフォルトの名無しさんNGNG
>>958
1.7 では存在しなくなった。
http://www.ruby-lang.org/ja/man-1.6/?cmd=view;name=obsolete
0960スレ誘導NGNG
次スレ
Rubyについて Part 2
http://pc3.2ch.net/test/read.cgi/tech/1028906179/l50
0961デフォルトの名無しさんNGNG
こっそりうめたて
0962デフォルトの名無しさんNGNG
忘れた頃に埋め立て
0963デフォルトの名無しさんNGNG
梅殺陣
0964デフォルトの名無しさんNGNG
1000!
0965デフォルトの名無しさんNGNG
あと34レスでこのスレは自爆します
0966rubyist@カラアゲうまうまNGNG
いおえじょい
0967デフォルトの名無しさんNGNG
てすてす
http://www.hyuki.com/dp/cat_index.html#GoF
http://kitaj.no-ip.com/tDiary-FAQ/rw-cgi.rb?cmd=view;name=tDiary-FAQ#foottext:1
0968デフォルトの名無しさんNGNG
Rubyがクソだと思う理由。
1)遅い。Perlにはもちろん、Pythonと比べても遅い。
2)Windows向けバイナリ配布にデファクトスタンダードがない。
3)ソースからモジュールをコンパイルするとの方法が統一されていない。
4)CPANを後から追っているのに、RAAは全然使い勝手が悪い。
5)ドキュメンテーションが不十分(RDによるドキュメンテーションはPerlに
おけるPODよりも全然なってないし、RDが完全に普及しているわけでもない...
RDがRubyの言語仕様に含まれていないためと思われる)。
0969rubyist@カラアゲうまうまNGNG
>>968
わざわざRubyスレを探して、他スレのコピペを張るとはお前も必死だなw
後半「Rubyの良い点」を削除するなよ。
0970デフォルトの名無しさんNGNG
釣られんな
0971デフォルトの名無しさんNGNG
メジャーな処理系が3つ以上ない言語は、言語と呼ぶに値しない。
PerlもPythonもRubyもクソってこと。
0972デフォルトの名無しさんNGNG
Delphiもクソでつか
0973デフォルトの名無しさんNGNG
当然。DelphiもVBもC#もクソ。
0974デフォルトの名無しさんNGNG
コワイ
http://us.news2.yimg.com/us.yimg.com/p/nm/20021113/mdf148570.jpg
0975デフォルトの名無しさんNGNG
>>971
その理論だと LISP が一番素晴らしい言語ってことになるな。
0976デフォルトの名無しさんNGNG
(´-`).。oO(すばらしいかどうかはまた別問題だろ
0977デフォルトの名無しさんNGNG
>>975
今はCの方が処理系多いんじゃ?
0978デフォルトの名無しさんNGNG
>>977
「今は」の根拠がわからんが、
Cはそんなに多くないよ。
0979デフォルトの名無しさんNGNG
>>978
だって、Lispの処理系なんて今はほとんど皆無ジャン。
0980名無しさん@xyzzyNGNG
>>979
emacsenだってlisp処理系だぞ。少なくともjavaよりは多いはず。
0981デフォルトの名無しさんNGNG
>>980
それで1つ。あとは?
0982デフォルトの名無しさんNGNG
http://www.google.co.jp/
0983デフォルトの名無しさんNGNG
ちょっと検索してみた
->LISP
Allegro CL
Auto-Lisp
CAL
CLiCC
CLISP
CMU Common Lisp (CMUCL)
Corman Lisp
Digitool's Macintosh Common Lisp
ECo Lisp
Emacs-Lisp
GNU Common Lisp (GCL)
Goodies for VisualWorks Lisp Interpreter
Harlequin FreeLisp
LispWorks
OpenLisp
OpenMCL
Opus
PowerLisp
PureLISP at T3X Project
S-Lisp
Wade's Common Lisp (WCL)
XLISP-PLUS
XLisp-Stat
0984デフォルトの名無しさんNGNG
AM scheme
3DScheme & 3DScheme Pro
Bigloo
Chez Scheme
CHICKEN
DrScheme
EdScheme
Elk
Esh
Galapagos
Gambit
Guile
Inlab Scheme
Kali Scheme
Kawa Scheme
KSM-Scheme
Larceny
LispMe
MIT Scheme
mini scheme
Open Scheme
PC Scheme
Petite Chez Scheme
Pocket Scheme
Pseudoscheme
QScheme
RScheme
Scheme 48

0985デフォルトの名無しさんNGNG
Scheme->C
SCM
Scsh
SECDR scheme
SIOD: Scheme in One {Defun, Day}
Sizzle
Stalin
STk
SXM
T 3.1
The Ksi Scheme Interpreter
TinyScheme
VSCM
WinScheme
0986デフォルトの名無しさんNGNG
HotScheme
PS3I
Silk
SISC
Skij
Scheme Applet
0987デフォルトの名無しさんNGNG
禿しくどうでもいい上にスレ違いの話題にマジレス・・・

>>971 (元レス)より
「メジャーな処理系が3つ以上ない言語は、言語と呼ぶに値しない」

メジャーな・・・
0988デフォルトの名無しさんNGNG
CLOE (Symbolics)
Eclipse (Elwood)
LispWorks (Xanalys)
Golden CL (Gold Hill)
LinkLisp (Conscious Computing)
muLISP-90 (Soft Warehouse)
NanoLISP (Microcomputer Systems Consultants)
Star Sapphire CL (Sapiens Software)
Commercial Macintosh Lisp Implementations
MCL (Digitool)
PowerLisp (Roger Corman)
Commercial UNIX Lisp Implementations
AKCL (Austin Code Works)
Ibuki CL aka IBCL (Ibuki)
Liquid (formerly Lucid) (Xanalys)
Medley formerly Xerox Interlisp (Venue)
Poplog (Poplog)
Butterfly (BBN)
Genera Lisp machines (Symbolics)
Explorer Lisp machines (Texas Instruments)
L embedded systems (IS Robotics)
ECoLisp (Giuseppe Attardi)
LILY (Roger Sheldon)
RefLisp (Bill Birch)
SBCL (W. Newman)
jlisp (Jeff Weisberg)
ALSP Embedded in ADA (Software Architecture and Engineering)
AWK Lisp Embedded in AWK (Roger Corman)
StarSim Embedded in CL (Thinking Machines)
0989デフォルトの名無しさんNGNG
1000取り合戦開始
0990デフォルトの名無しさんNGNG
990
0991デフォルトの名無しさんNGNG
991
0992デフォルトの名無しさんNGNG
992
0993デフォルトの名無しさんNGNG
993
0994デフォルトの名無しさんNGNG
994
0995デフォルトの名無しさんNGNG
995
0996デフォルトの名無しさんNGNG
996
0997デフォルトの名無しさんNGNG
997
0998デフォルトの名無しさんNGNG
3
0999デフォルトの名無しさんNGNG
999
1000デフォルトの名無しさんNGNG
the end
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。