Dual citizenship and object identity

After finishing The World Is Flat, I picked up Winning The Future: A 21st Century Contract with America by Newt Gingrich, which I received for Father’s Day. (More on The World Is Flat in a separate post–excellent book on timely subject matter!)

I haven’t yet finished Mr. Gingrich’s book about a 21st century contract with America, but Winning The Future: A 21st Century Contract with America is a thought-provoking read. It’s not as substantial as some of the other books I’ve read recently (e.g. The World Is Flat, Men in Black), but it does offer new connections for the more detailed coverage these other books present (e.g. (threat #4) “America’s economic supremacy will yield to China and India because of failing schools and weakening scientific and technological leadership”, the historic balance of our three branches of government–that two branches combined (e.g. legislative and executive) can reign in the third branch (judicial), etc.).

In “Patriotic Immigration” Mr. Gingrich raises the subject of dual citizenship as “one of the most insidious assaults on American exceptionalism.”

Before I continue, I should state up front that I have a brother-in-law who is a dual citizen. He’s just as patriotic as I am. After passing all requirements and becoming a citizen, when he “interviewed” mutual family members, it was clear that in some cases, he knew more facts about America than some of those born in this country. So, up to reading this chapter, I really haven’t viewed dual citizenship in a bad light–I’m not certain that I do now either.

However, when taken to a logical end, dual citizenship can create a detrimental tension between two national, geographical, culture, ideal–identity–concerns. This reminds me of my own brief, prior post about absolutes versus relativism. On the surface, dual citizenship appears harmless, but when pressed all the way to the wall, it may yield an undesirable, if not unacceptable, result.

For whatever reason–probably because of my profession as a software architect–this got me to thinking about object identity. Java, C# and other languages have done away with the potential nightmare of multiple implementation inheritance supported by C++. However these languages prominently support multiple interface inheritance, which still has the potential for creating tenuous object identity. That is, if FooBar implements IFoo and IBar, is a FooBar object’s existence truly independent of its value? Of course, this depends on the function of IFoo and IBar, but my observation is that there are no formal checks in Java or C# to prevent a condition of “dual citizenship” in FooBar. And in the end, FooBar is conflicted, which will force the software above to accommodate, defend against, isolate, coax, placate, attack or ignore (at its peril) the inherent conflict.

Clearly, I’m “in process” on this connection. Thoughts?

Update 12/1/2008: For more of my book reviews and to see what else is in my book library (i.e. just the business-related or software-related non-fiction therein), please visit my Books page.