I do find it difficult though to consider the computer program alive without a 'housing' for it.
try looking at it in a slightly different way.
The computer is the "Universe", the environment if you like, in which the programs live. It contains the food source and everything that is necessary for the programs to interact with each other.
Did you check out the link I gave you?
DarwinBots each consist of a chunk of "DNA" code that is capable of making decisions based on inputs from the environment in which it lives. There can be thousands of them all interacting, fighting, forming comunities, even joining togather to make larger multi-cellular animals (albut very simple ones).
But you see, the computer is not a large item made of many smaller ones.
Not really the right analogy as the computer is the environment and not the life form.
What about computer worms and viruses? they exist on the internet and infect computers then reproduce (often with mutations), sending their progeny back into the world wide web.
This seems to meet many of the criteria for life but I'm not sure if i would go quite so far as to say they are alive.
Where do we draw the line?