mastodon.zunda.ninja is one of the many independent Mastodon servers you can use to participate in the fediverse.
Zundon is a single user instance as home of @zundan as well as a test bed for changes of the code.

Administered by:

Server stats:

1
active users

irbでだけ発動する副作用ならできた

$ irb
> class Array; def inspect; puts "Hello, World!"; return self; end; end
> hoge = :hoge
> piyo = :piyo
> piyo, hoge = piyo, hoge
Hello, World!
=> [:piyo, :hoge]

zunda

待って。Array#inspect を再定義してたら、[:piyo, :hoge] は誰が書いてるんだ…

@zundan あれ、最後のlhsの結果が自動でinspectされてるやつ(IRBの機能)じゃないでしょうか?

@tadd はい。それで再定義したArray#inspectが呼ばれてHello, World!してると思ってます。でも、return selfすると=> の右に再定義前のArray#inspectの書いたっぽいものが現れてて、どこに再定義前の動作が残ってるのか理解できてません。irbが名前空間(じゃなくて何だっけ)を分けてたりするのかな?

@zundan あーーそっかそっか、そうですよね、自分が(スタックが)浅かった……失礼しました。
なんか区切ってますよね、irb。irb()とかもあるし。まさにima1zumiさんの出番ではありますw

@zundan => の右側、やはり(素直には)inspect呼んでいなさそう……だけはわかって力尽きました、ばたり。