2011年 08月 30日

Test::Mock::Guard::Instance

Test::Mock::Guard にとりこまれたので、そちらで使えます。xaicron さん++

Test::Mock::Guard みたいなやつで、インスタンスごとにメソッド差し替えをしたいので書いてみました。rebless せずに (特異クラスみたいなのを作らずに) なんとかしているので、ref() の結果が変わらなくて便利な気がします。

  use Test::Mock::Guard::Instance qw(mock_guard_instance);

  { package Some::Class;
      sub new { bless {} => shift }
      sub foo { "foo" }
      sub bar { 1 }
  };

  my $obj1 = Some::Class->new;

  {
      my $guard1 = mock_guard_instance($obj1, +{ foo => sub { "bar" }, bar => 10 } );
      is $obj1->foo, "bar";
      is $obj1->bar, 10;

      my $another = Some::Class->new;
      is $another->foo, "foo";
      is $another->bar, 1;
  };

  is $obj1->foo, "foo";
  is $obj1->bar, 1;
2011年 08月 29日

金の計算をざっくりとしていて、ほんと親は無条件に尊敬できるなーとしみじみ感じた。

死ぬ前にやることスタックという考えかたが通用しなくなったときのことを考えていた。最悪ケースの逃げ道が確保できなくなった場合、自分がどうなるかと考えると恐しい気分になる。実際自分はこの考え方がないときに非常に困ったことになっていたので、またそうなるのは避けたい。

大学のときは、親に不義理を働いてまで (学費を全く無駄にしたり、大学を出て欲しいという期待を裏切ってまで) 休学やら退学して、別の方法をスタックに積み直して行動した結果、今は自分個人としてはそれなりに幸福に生活できているけれど、それはあくまで「最悪ケースの逃げ道」を選ぶよりはマシだからという精神的な窮地における逆ギレ的発想からきた行動をした結果運が良かっただけである。「死ぬ前にやることスタック」はそもそもポジティブな発想ではないし、窮地に追いこまれるまで判断ができず、しかも最悪のケースの逃げ道を走れないことがわかると、途端にリスクをとれなくなって行動が貧弱になってしまう……

今まで使っていた最悪ケースの逃げ道が使えなくなるとしたら、最悪ケースの逃げ道をもう少し別のものに設定するか、あるいは別の行動指針をとらなければならない。前者はあまり思いつかない…… 一生を通じて人に頼ることなく常に通用するものでないとだめだから、最悪ケースでも生きていけるだけの個人資産を形成するぐらいしかない (経済的独立を達成する)。そうすれば「最悪生きていくだけのことはできる」から何の問題もなくなる。後者はもっと思いつかない。新たな行動指針はきっとポジティブな方法論だろうけど、そういうのは全く思いつかない。「やりたいことをただやるだけ」という行動指針はありえるかもしれないけど、それをすると他人に搾取されるだけだし、それほど自分は盲目的になれない。

経済的独立をするにはそれをするまでの期間の行動指針が必要だし、リスクをとらないと実現できないので、実際のところこれはデッドロックしてる (またさらには最短で独立しようとすることを良く思わない人もいるので妨害をうけるだろう)。積極的にリスクをとれる人の精神構造が理解できればいいと思うけど、残念ながら自分には全く理解ができない。生まれたときから承認されていて何をやるにしても自信が沸いてくれば何か違うなのかもしれないけれど、実際はそうじゃないので、今自分にはいろいろなことを解決する「新たなアイデア」が必要になっているのだと思う。

金を稼ぐこと以外のことに頭を使いたいと思って、純粋にそのように生きてしまうと、他人に金で支配されて自由でなくなるのだから、すごく残念な世の中だと思う…… BI が実現されていればみんな自由になるのに……

2011年 08月 28日

gerry++