$><<'hoge'

GoSTでRubyっぽく↑を実現しようとして詰まった。

!Character methodsFor: 'test'!
doesNotUnderstand: m
  ^super doesNotUnderstand: m!
!
$$ hoge!

これがループしてスタックオーバーフロー(?)する。何故だ。


…と思ったら上記コードだけだとちゃんと動く(エラーになる)。
追加したコードを一つずつ消して調べたら,以下の部分*1が原因だった。

!CharacterArray methodsFor: 'golf'!
% a
  ^self bindWithArguments: a!
!

ますます意味が分からない。

*1:2.3.6には既にあるが,あなごるで動かすことを想定して再定義していた