function Mammal(){
var t={}
t.name="mammal";
t.repro="birth";
t.getSelf=function(){ return this; }
return t;
}
function Cat(){
t=new Mammal()
t.name="cat";
t.dob=now();
t.meow=function(){alert("meow!"); }
return t;
}
function Dog(){
t=new Mammal()
t.name="dog";
t.dob=now();
t.bark=function(){alert("bark!"); }
return t;
}
function Freak(){
t={}.merge(new Cat )
t=t.merge( Dog() )
t.name="dot";
t.dob=now();
t.bark;
t.yell=function(){alert("yoooo!"); }
return t;
}
c=Freak()
// Result:
({
name:"dot",
repro:"birth",
getSelf:(function () {return this;}),
dob:(new Date(1218939290256)),
meow:(function () {alert("meow!");}),
bark:(function () {alert("bark!");}),
yell:(function () {alert("yoooo!");})
})