【創作】UNIX文庫 文豪ハッカー【パクリ】

このエントリーをはてなブックマークに追加
209Ruby厨
1:1 全ての始まりの前に、原始のバイナリーの海があった。そこは機械語が支配
する世界である。
1:2 始めにRubyの神は天地を創造された。それはコマンドラインでruby,irb
である。
1:3 地は混沌であって、闇が深淵の面にあり、Rubyの精神はunixに動いていた。
1:4 神は言われた。「Rubyに光りあれ、目覚めよプロセスよ」こうして
原始Rubyプロセスはあった。
1:5 神はRubyを見てよしとされた。
210Ruby厨:02/08/18 03:06
1:6 そして終わりに、神は御自分にかたどってクラスとオブジェクトを
創造された。
1:7 そして神の姿として作られたオブジェクトを次のように祝福された。
「クラス達よバイナリー空間に満ちてトークンをObjectのサブクラスとせよ、
自らのタイプを認識し、全てのコンピュータ空間に満ちよ。全ての物をオブジェクト
として支配せよ」
1:8 故に、トークン(1)はオブジェクトであり、(1.type)とすると自ら整数であり
、("a".type)とすると文字列であり、(1.23.type)とするとFloatである
ことを知っているのである。

1:9 そして最後に、神は御造りになった全てのものをご覧になった。見よ、
それは極めて良かった。
211Ruby厨:02/08/18 03:06
1:10 Rubyの神が地と天を創られた時、木も草もはえていなかった。神が
クラスを御造りにならなかったからである。
1:11 神はクラスで人を創り、そのクラスに命を吹き込んだ。それは

class Adam

 def aruku
  print "あるきます"
 end

 def neru
  print "ねます"
 end

 def okiru
  print "おきます"
 end

end

Human_Adam=Adam.new

Human_Adam.okiru

である。こうして人は生きるものとなった。
212Ruby厨:02/08/18 03:07
1:12 神は言われた。「人が独りでいるのは良くない。彼に合う助ける者を造ろう」
1:13 そこで神は野のあらゆる獣、空のあらゆる鳥をクラスで形作り、人の所へ
もってきた。人がそれぞれどう呼ぶか見ておられた。
だが自分に合う助ける者は見つける事が出来なかった。神はそこで人を深い
眠りに落とされた。人が眠ると人の肋骨の一部を抜き、クラスを継承しその
後を肉でふさがれた。そして、人から継承したクラスで女を作り上げられた。
その名をEveと呼んだ。Human_Eveである。

class Eve

 def aruku
  print "あるきます"
 end

 def neru
  print "ねます"
 end

 def okiru
  print "おきます"
 end

 def aisatu
  print "こんにちは"
 end

end

Human_Eve=Eve.new

Human_Eve.okiru

1:14 イブクラスにはメソッドaisatuが加わった。人がそれぞれどう呼ぶか見てお
られた。人が「Human_Eve.aisatu」と呼ぶのを神は目撃された。ゆえに(.)を介し
たオブジェクトのアクセスを"レシーバ形式"や"メッセージを呼ぶ"というのであ
る。
213Ruby厨:02/08/18 03:08
1:15 次にRubyの神は人に従うクラスを創造された。 神は言われた。
「クラスたちよ、演算子をもクラスのメソッドにせよ。すべてのクラスに満ちて
オブジェクトに対する(+)(-)(*)はメソッドとせよ」神は数値に対する加算演算子
たち、減算演算子たちをそれぞれにメソッドとして祝福された。
1:16 故にオブジェクト(1)は、演算子としての(+)(-)(*)(/)はメソッドとして
理解し、自らが整数である事を知っているのと同時に自らがどの様な演算をする
べきなのかをも知っているのである。
214Ruby厨:02/08/18 03:09
1:17 神は言われた。「Stringクラスよ、スーパークラスObjectを継承し、
文字列を数値に変換するメソッドを備えよ、Stringに対する演算は文字列
の連結とし、文字列の操作メソッドを備えよ。」そのようになった。
1:18 故に、文字列("3.14")は、("3.14".to_i)という整数への変換
メソッドを理解し、("3.14".to_f)というFloat型への変換を理解し、
("pi"+"3.14")という演算子(+)はメソッドとして文字列を連結し、
("abcdef".length)というメソッドで文字列の長さを理解し、
("abcdef".reverse)で文字列を逆さまにし、("abcdef".empty?)で
文字列が空かを知り、("abcdef".swapcase)で小文字を大文字に変換し、
("abcdef".sub("abc","xyz"))で検索した文字列を置換し、
("abcdef".rindex(/cd*/))で正規表現により一致した文字列の位置を返す
事を知っており、さらに、文字列の暗号化までをも知っているのである。
神はこれを見てよしとされた。
215Ruby厨:02/08/18 03:10
1:19 主なる神はまた、オブジェクト指向的ではない記述も可能なように
配慮なされた。それはPerlの様に記述可能にされるためである。
それはコマンドラインで(Integer(123.456))に現れた。(Integer)があり
(Float)があった。
これは真のオブジェクト指向の神秘の姿をそれとなく現した。
1:20 見よ、真の表記は(Kernel.Integer(123.456))である事を。
216Ruby厨:02/08/18 03:12
出でよRubyの神よ。唱えよ。聖なる呪文"Hello Ruby"。