How to create a node programmatically in Drupal 7? I know you can create nodes programmatically by creating a node object and then firing node_save() but I don't actually want to store the node in the database. 

Is there a way to create nodes of a specific content type in code that show up in the Find Content screens and work with views etc, but are not physically stored in the database.

The reason I ask is that I have a view that lists a series of nodes of a specific content type, but I want to create a custom node in that list that uses PHP to set the content dynamically but if I fire node_save() will it node get stored in the database every time the module is executed.

I'm also using node reference to link to these nodes so my programatic node will need to work with node reference too.
You're trying to do a lot there.

You can do most of what you want without having a node in the database. I think node reference is a sticking point. 

Views can be used with a number of back ends, you can get it to point to a different database or index your data with solr and use solr views to search and access your content, there is an issue with using completely external content but you can get round that. Sparql views can allow you to get data from a triple store. 

You can populate a node object with fields and use theme node to display it without using node save. 

A common pattern is to create stub nodes, which contain only a reference to an external resource and use nodeapi hooks to load the data when the node is viewed. This is often less work and would allow you to use the standard search and node reference functionality.  

Without knowing quite why you don't want to save the nodes, it is difficult to make a concrete suggestion.