Недавно натолкнулся на интересную проблему в абсолютно стандартном и простом методе. Нужно осторожно реализовывать метод
toString, потому что можно случайно вызвать бесконечную рекурсию. Например, такой код вызовет исключение в встроенном методе флеш плеера.

Код AS3:
var arr:Array = new Array();
arr.push(arr);
trace(arr);
Метод
trace вызывает
toString у массива, во внутренней его реализации для каждого элемента, включая сам массив вызывается метод toString и так ...