Everybody have blogged this; it is still too tempting not to re-blog it.
William Shakespeare’s Sonnet – Shall I Compare Thee to a Summer’s Day? told in ActionScript 2.0.
Via: Digg, Justin Everett, Mike Potter
Reproduced here for the archives;
// Sonnet 18: Shall I compare thee to a summer's day?
// by William Shakespeare
// ported to ActionScript 2.0 by Satori Canton
//
// Original poem can be viewed at:
// http://plagiarist.com/poetry/915/
//
var summer:Object = {};
var thee:Object = {};
summer.name = "Summer Day";
thee.name = "Thee";
summer.lovelyness = 9;
thee.lovelyness = 10;
summer.temperature = 98;
thee.temperature = 98.6;
summer.lease = new Date(2006, 7, 31).getTime() - new Date(2006, 5, 1).getTime();
thee.lease = new Date(2042, 6, 12).getTime() - new Date(1970, 8, 25).getTime();
summer.complexion = 0xFFCC33;
thee.complexion = 0xFFCCCC;
summer.fair = 10;
thee.fair = 10;
//
summer.getValue = function():Number {
return --this.fair;
};
thee.getValue = function():Number {
return this.fair;
};
summer.incrementTime = function():Number {
return --this.lease;
};
thee.incrementTime = function():Number {
return this.lease;
};
//
var man:Object = {};
man.hasEyes = true;
man.canBreath = true;
man.lease = 10000;
man.liveLong = function():Void {
this.lease *= 10;
};
man.giveLife = function(o:Object):Void {
o.lease++;
trace(o.name + " is given life");
};
man.compare = function(o1:Object, o2:Object):Void {
if (this.canBreath && this.hasEyes) {
this.liveLong();
var n1:Number = 0;
var n2:Number = 0;
var o1isBetter:Boolean;
for (var i in o1) {
if (typeof (o1[i]) == "function") {
o1isBetter = o1[i]() > o2[i]() ? true : false;
} else {
o1isBetter = o1[i] > o2[i] ? true : false;
}
n1 += Number(o1isBetter);
n2 += Number(!o1isBetter);
}
this.giveLife(n1 > n2 ? o1 : o2);
}
};
man.compare(summer, thee);
Brajeshwar posted this article
on Tue, Mar 21st, 2006 at 6:39 am
Categorized under Technology





Comments Post Yours
There are no response so far. You can follow any responses to this entry through the RSS feed. You can skip to the end and leave a response. Pinging is currently not allowed.
Post yours