« Three Monitors - I can't go back | Main | Installing iTunes 7 on 64-bit Windows Vi... »

The Weekly Source Code 1

Posted 2007-08-15 11:09 PM in Programming | Source Code.

In my new ongoing quest to read source code to be a better developer, I now present the first in an infinite number of a weekly series called "The Weekly Source Code." Here's some source I'm reading this week that I enjoyed.

Feel free to send me links to cool source that you find hasn't been given a good read.



Thursday, August 16, 2007 9:24:19 PM (Pacific Standard Time, UTC-08:00)
It would be cool if someone created an RSS feed containing byte-sized snippets of beautiful code.

Anyway, here's my contribution:

RSS feed of the Firebug source code:
http://feedchopper.ning.com/index.php/main/feed/showUrl?id=3299679

RSS feed of the Haskell Prelude:
http://feedchopper.ning.com/index.php/main/feed/showUrl?id=6633928
Tuesday, August 21, 2007 2:35:04 PM (Pacific Standard Time, UTC-08:00)
The Duck Typing project is pretty interesting, but doesn't have much to do with the Var type of situation. What he's doing is a very clever bit of reflection.

He's dynamically creating a type at runtime that wraps the original type using reflection. It basically dynamically creates a proxy to the target type. So, for example, you could DuckType a control of type DropDownList as a control of type RadioButtonList as long as you access properties that are of the same type. So, you could do something like the following:

RadioButtonList rblDuck = DuckTyping.Cast<RadioButtonList>(myDropDownList);
rbl.SelectedValue = "Example";

Both RadioButtonLists and DropDownLists have "SelectedValue" in common, so the RadioButtonList "ducktype" acts as a proxy to the actual underlying DropDownList, forwarding the values on to myDropDownList. Neat stuff.

This is all at runtime, though. Var is different because it is a type that is determined at compile time. It's possible that Microsoft's DLR strategy is similar, but I'm not sure about that yet.
Wednesday, September 19, 2007 4:34:04 AM (Pacific Standard Time, UTC-08:00)
test bugaga
Wednesday, September 19, 2007 5:35:17 AM (Pacific Standard Time, UTC-08:00)
test bugaga
Comments are closed.

Contact

Sponsors

Hosting By

Hot Topics

Tags

Calendar

<November 2009>
SunMonTueWedThuFriSat
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

Archives

November, 2009 (5)
October, 2009 (19)
September, 2009 (11)
August, 2009 (12)
July, 2009 (21)
June, 2009 (26)
May, 2009 (16)
April, 2009 (13)
March, 2009 (17)
February, 2009 (17)
January, 2009 (18)
December, 2008 (32)
November, 2008 (17)
October, 2008 (22)
September, 2008 (16)
August, 2008 (14)
July, 2008 (25)
June, 2008 (19)
May, 2008 (17)
April, 2008 (17)
March, 2008 (26)
February, 2008 (21)
January, 2008 (28)
December, 2007 (19)
November, 2007 (17)
October, 2007 (31)
September, 2007 (39)
August, 2007 (37)
July, 2007 (43)
June, 2007 (37)
May, 2007 (32)
April, 2007 (38)
March, 2007 (29)
February, 2007 (46)
January, 2007 (31)
December, 2006 (27)
November, 2006 (31)
October, 2006 (32)
September, 2006 (39)
August, 2006 (34)
July, 2006 (40)
June, 2006 (18)
May, 2006 (31)
April, 2006 (34)
March, 2006 (30)
February, 2006 (38)
January, 2006 (44)
December, 2005 (19)
November, 2005 (34)
October, 2005 (24)
September, 2005 (37)
August, 2005 (20)
July, 2005 (24)
June, 2005 (33)
May, 2005 (16)
April, 2005 (22)
March, 2005 (34)
February, 2005 (15)
January, 2005 (37)
December, 2004 (28)
November, 2004 (30)
October, 2004 (34)
September, 2004 (22)
August, 2004 (34)
July, 2004 (18)
June, 2004 (64)
May, 2004 (49)
April, 2004 (21)
March, 2004 (29)
February, 2004 (29)
January, 2004 (36)
December, 2003 (25)
November, 2003 (24)
October, 2003 (59)
September, 2003 (42)
August, 2003 (24)
July, 2003 (44)
June, 2003 (29)
May, 2003 (21)
April, 2003 (30)
March, 2003 (27)
February, 2003 (47)
January, 2003 (50)
December, 2002 (31)
November, 2002 (38)
October, 2002 (44)
September, 2002 (15)
May, 2002 (2)
April, 2002 (4)

Google Ads