休日なのでカジュアルに Sex の話しでもB!

こんにちわ Wii のマリオが面白くてこの記事かくの忘れててべにぢょ忘年会遅刻確定の Yappo です。お元気ですか?

一昔前の日本人はクリスマスはセックスをする口実として悪用していました、そんな日本人の悪しきクリスマスの風習として馴染み深い Sex モジュールのご紹介です。

http://search.cpan.org/~mschwern/Sex-0.69/Sex.pm

何が出来るモジュールと、その名前の通りモジュールとモジュールとで Sex させるためのモジュールです。

愛しあったら、このモジュールは二人の特徴を受け継いだ子供を作ってくれます。

技術的な言葉で説明すると、多重継承をすることができます。

例えば kan さんとプリキュアのキャラクターに愛しあってもらうとすると、下記のように Kan.pm と Nagisa.pm を用意します。

package Kan;
sub mikipad { warn "editor" }
sub wema { warn "web" }
sub sex { warn "male"}
1;
package Nagisa;
sub black { warn "black" }
sub precure { warn "cure!" }
sub sex { warn "female"}
1;

準備できたら、二人に愛しあってもらい Makoto という子供を作りましょう。

# sex.pl
package Makoto;
use Sex qw(Kan Nagisa);

package main;
Makoto->mikipad;
Makoto->wema;
Makoto->black;
Makoto->precure;
Makoto->sex;

このように、多重継承してるので双方のメソッドが呼ばれます。

両親とも同じメソッドを持っていたら、どちらかの親の要素を継承します。

あれ?これだけ?と思った人は実行例を見てください。

[master)~/websites/jperl-advent-calendar-2009]$ perl ./sex.pl 
Wrong hole, dear. I thought eight inches was longer than that. MORE! MORE! Does it get bigger? 
editor at Kan.pm line 2.
web at Kan.pm line 3.
black at Nagisa.pm line 2.
cure! at Nagisa.pm line 3.
female at Nagisa.pm line 4.

一行目がなんか変ですね?

そうです、子供を作る時のあの声です。

他には

じゃぁ use Sex の時に、ひとつだけモジュール名を与えたらどうなるか? 3人以上はどうなるか?

そして

package Kan;
use Sex 'Kan';
1;

をしたらをしたら。。。?

それはあなたの目で確認してください。

まとめ

そんなことで Acme 空間ができるよりも前に作られたジョークモジュールを紹介しました。

ちなみに、このモジュールのバージョン番号の秘密に気がつきました?

そしてこのモジュールのバグ情報として

There are many bugs you can get from having Sex used too often on your computer. Please be sure your programs are Safe before they have Sex.

    package Trojan;
    use Sex qw(Safe Sex);

なんてことが書いてあります。愛する相手のためにも安全にしましょうね。という事ですねー。

ちなみに和製セクシャルモジュールとしては Acme::Oppai とかがあります。

相方がいる人も、一人の人も、3人以上とする人も、皆さん無事に年を越せますように。。。!

という事で明日は bayashi さんです。お楽しみ!