Extending the family metaphor

27 02 2013

The metaphor of family is everywhere in programming. We have parent and child processes, HTML has parent nodes whose child nodes are all siblings. The fact that in all these cases there is only one parent who apparently produced its offspring by some sort of asexual[1] reproduction fits nicely with the common conception of programmers’ social skills.

The metaphor of family is often extended, if a process’s parent process terminates before its child you get an orphan process (not to be confused with zombie processes), a process can inherit handles from its parent and so on.

I recently run across a family relationship which was new to me. When traversing the windows of IE10 I found a window whose parent had no children. Here is the window hierarchy of an alert dialog in IE10:

Window hierarchy of IE10 alert window

We can see that the alert dialog is a top level window with a parent which is also its sibling (said parent has no children).
I don’t usually muck around with HWNDs so I don’t know how rare this kind of thing is and I’m not sure how it fits into the family metaphor. On the one hand this window is a sibling of its parent so perhaps it’s an incestuous window (I’m not sure exactly how this would work in the context of asexual reproduction), on the other hand its parent disowns it so I think perhaps the best name for this window is a bastard window.

[1] I hadn’t realized there were so many different kinds of asexual reproduction.




Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: