in4core:
В Лиспе это функция сложения, там нет оператора сложения, есть только функция которая его реализует.
Kenaz:

Код AS1/AS2:
var stringHash:Object = {};
stringHash["foo"] = [];
stringHash["foo"][0] = [];
. . .
Только, а зачем вам такие страшные конструкции строить?
А не проще ли было бы использовать классы и методы классов для добавления, например?

Код AS1/AS2:
class Foo {
private var _children:Object/*Bar*/;
public function Foo()
{
super();
this._children = { };
}
public function addChild(child:Bar, alias:String):Void
{
this._children[alias] = child;
}
. . .
class Bar {
private var _children:Object/*String*/;
public function Bar()
{
super();
this._children = { };
}
public function addChild(child:String, alias:String):Void
{
this._children[alias] = child;
}
}
Удобно, понятно, и еще и проверка типов на этапе компиляции будет.