[#6214] RE^2: HTML class — 青山 和光 <PXN11625@...>
In-Reply-To: [ruby-list:6118] Re: HTML class
[#6219] Ruby連載 第4話 — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
原です。
まつもと ゆきひろです
原です。
ももちゃん@あるもにこすです.
まつもと ゆきひろです
In message <199802040557.OAA18458@picachu.netlab.co.jp>
まつもと ゆきひろです
In message <199802040739.QAA20750@picachu.netlab.co.jp>
まつもと ゆきひろです
In message <199802040803.RAA24375@picachu.netlab.co.jp>
[#6249] Re: i++ — 助田 雅紀 <masaki.suketa@...>
助田です。
ことけんです
まつもと ゆきひろです
しげひろです.
まつもと ゆきひろです
ももちゃん@あるもにこすです.
まつもと ゆきひろです
ももちゃん@あるもにこすです.
まつもと ゆきひろです
[#6256] pop & smtp-lib.rb — tateishi@... (Takaaki TATEISHI)
立石@理科大です。
[#6272] I'd like to subscribe this ML — INOUE Katsuyuki <inoue@...>
井上勝行 と申します。
[#6279] Re: i++ — 助田 雅紀 <masaki.suketa@...>
助田です。
[#6314] RE: ruby's design policy (Re: I'd like to subscr ibe this ML) — 助田 雅紀 <masaki.suketa@...>
オブジェクト指向周辺をぶらぶらしている助田です。
まつもと ゆきひろです
井上勝行です。
まつもと ゆきひろです
[#6315] install some versions — gotoken@... (GOTO Kentaro)
ごとけんです
[#6333] ruby 流に添削して下さい — nkon@...2.3web.ne.jp
さくです.
さくです.自己フォロー.
まつもと ゆきひろです
わたなべです.
まつもと ゆきひろです
わたなべです.
[#6342] Re: ruby's design policy (Re: I'd like to su bscr ibe this ML) — 助田 雅紀 <masaki.suketa@...>
助田です。
[#6372] ruby 1.1b7 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
前田です。
わたなべです.
ふなばです。
まつもと ゆきひろです
ふなばです。
[#6373] call for scripts — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
金城です.
まつもと ゆきひろです
金城です.
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
原です。
From: Shin-ichiro HARA <sinara@blade.nagaokaut.ac.jp>
きくたに@ぷ〜たろ〜です。
さくです.
わたなべです.
まつもと ゆきひろです
前田です。
前田です。
まつもと ゆきひろです
前田です。
前田です。
前田です。
前田です。
わたなべです.
けいじゅ@日本ラショナルソフトウェアです.
Regard to "[ruby-list:7447] Re: call for scripts"
> もっと良いものがあるかもしれないと考え,実例集に載せられるよ
sort-schedule.rbで、ちょっと疑問に思っていることがあるのです
ふなばです。
In message <19980222011624S.tadf@kt.rim.or.jp>
前田です。
ふなばです。
[#6422] simple_chat_server — 青山 和光 <PXN11625@...>
In-Reply-To: [ruby-list:6395] Re: call for scripts
[#6447] gsub — Tadayoshi Funaba <tadf@...>
ふなばです。
[#6514] ROT13/47 — OZAWA Sakuro <crouton@...>
小澤さくです.
[#6516] RE^2: simple_chat_server — 青山 和光 <PXN11625@...>
In-Reply-To: [ruby-list:6437] Re: simple_chat_server
まつもと ゆきひろです
class String; def - x; end; end; %-
[#6538] IE favorites to HTML — OZAWA Sakuro <ozawa@...>
小澤さくです。会社からもMLに入っちゃいます。
[#6565] Re: Counter class [Re: i++ ] — toyofuku@...
豊福@パパイヤです。
[#6582] File::Separator on cygwin — OZAWA Sakuro <ozawa@...>
小澤さくです。
わたなべです.
小澤さくです。
けいじゅ@日本ラショナルソフトウェアです.
[#6591] ruby 1.1b8 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
前田です。
けいじゅ@日本ラショナルソフトウェアです.
前田です。
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
さくです.
前田です。
小澤さくです。
うさぎの名前ででています:-)
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
[#6601] 8-queen — TAKAHASHI Masayoshi <maki@...>
高橋です。今度ちゃんと1.1b7にします……と書こうとしたら、b8になって
[#6605] true/TRUE false/FALSE nil/NIL — OZAWA Sakuro <crouton@...>
小澤さくです.
前田です。
まつもと ゆきひろです
[#6610] tcltklib dosen't compile — TEI meiki <tei@...>
鄭です。
[#6621] here document — Tadayoshi Funaba <tadf@...>
ふなばです。
[#6635] hello — WATANABE Tetsuya <tetsu@...>
渡辺哲也と申します。
まつもと ゆきひろです
>>>>> "matz" == Yukihiro Matsumoto <matz@netlab.co.jp> writes:
[#6706] Re: Counter class — toyofuku@...
豊福@パパイヤです。
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
[#6735] Mutex/ConditionVariable/Queue — shugo@... (Shugo Maeda)
前田です。
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
前田です。
From: shugo@po.aianet.ne.jp (Shugo Maeda)
前田です。
From: shugo@po.aianet.ne.jp (Shugo Maeda)
前田です。
まつもと ゆきひろです
[#6786] Re: Mutex/ConditionVariable/Queue — senda@...
From: shugo@po.aianet.ne.jp (Shugo Maeda)
前田です。
前田です。
前田です。
けいじゅ@日本ラショナルソフトウェアです.
前田です。
In message <199802261520.AAA18702.keiju@cupmail0.rational.com>
前田です。
In message <199802270237.CAA00362@soleil.localnet.or.jp>
前田です。
In message <199802270635.GAA00354@soleil.localnet.or.jp>
[#6819] ruby 1.1b9 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#6829] monitor.rb — shugo@... (Shugo Maeda)
前田です。
[#6830] what is 'octet decimal' — OZAWA Sakuro <crouton@...>
さくです.
[#6852] Counting Semaphore — Kazuhisa YANAGAWA <katze@...>
Counting semaphore をちょっと作ってみました. 見ての通り, コードは
[ruby-list:6493] Re: call for scripts
From: keiju@rational.com (石塚圭樹 )
Subject: [ruby-list:6479] Re: call for scripts
Date: Tue, 17 Feb 1998 23:02:54 +0900
Message-ID: <199802171318.WAA02938.keiju@bc.mbn.or.jp>
keiju> あと,
keiju>
keiju> 3. パズル関係のプログラム
keiju> 4. パズル的なプログラム
keiju> 5. メソッドの連鎖がナガーク続くプログラム
keiju>
keiju> なども, 採用される確立が高いと思います(ただし, 本文というかコラム扱い
keiju> になると思いますが(^^;;;). この分野にお強い方も多いみたいですので, 興
keiju> 味ある方は挑戦してみて下さいませ(__;;;
千田@リコーと申します。
サイン本ほしさにちょっと作ってみました。
いわゆる自己再生プログラムというやつです。
プログラムの実行結果が自分のソースコードとなるようなプログラムのことで
% ruby xxx.rb | diff -c - xxx.rb
が何も出力を返さないようなプログラムxxx.rbのことをいいます。
C言語では
main(a){printf(a,34,a="main(a){printf(a,34,a=%c%s%c,34);}",34);}
がよく知られています。
これをまねしてrubyで書くと
(1)---------
#!/usr/local/bin/ruby
a='#!/usr/local/bin/ruby
a=%c%s%c;printf(a,39,a,39);
';printf(a,39,a,39);
------------
というぐあいになります。
# 最初Cと同じ構造にしようとしたらrubyでは引数の評価 -> 関数引数のbindの
# 関係がCと違うことに気づいてしまった。printf(a,...)のaのところで
# undefined local variable or method `a'
# となってしまう。
これじゃああんまりおもしろくないので
(1) printfを使わないで
(2) ruby特有の機能を使って
(3) 文字コードを仮定しないで(上の39は"を意味している)
出きるようなものを書いてみました。
(2)---------
#!/usr/local/bin/ruby
def once;yield"end;once{|x,y|print y;print x.inspect,',';p y;print x+'\n';}","#!/usr/local/bin/ruby\ndef once;yield"
end;once{|x,y|print y;print x.inspect,',';p y;print x+'
';}
------------ (注:2行目は長いのでmailでは折り返されてしまうかも知れない)
これでは何のことかわからないので解説しましょう。:-)
うえの(2)の中の自己言及している文字列を短く置き換えると
(2')---------
#!/usr/local/bin/ruby
def once;yield"xxx","yyy"
end;once{|x,y|print y;print x.inspect,',';p y;print x+'
';}
------------
となり(これならよめるでしょう)、実行結果は
yyy"xxx","yyy"
xxx
となります。iteratorの定義で文字列を定義し、実行部分でもとのソースコードと
相似な形に出力するように出力部を調整しているだけです。文字列に対する
inspectが""をつけて返してくれるおかげでこの部分はきれいに書けます。
上の2つは"まじめ"な方法で実現したものですが、実は"ふざけた"方法で自己再生
プログラムを作ることができます。
それは、、、
(3)---------
#!/usr/local/bin/ruby
a=open($0,"r")
while a.gets
print $_
end
------------
# 飛び道具攻撃 !!
説明は不要でしょう。 :-)
では。
---
+--------------------------------------------------------------------+
| (株)リコー SS事業本部 周辺機器開発部 開発2グループ |
| 千田滋也 (senda@ic.rdc.ricoh.co.jp) |
+--------------------------------------------------------------------+