Philosophers have long discussed the relationship between mind and brain, or, more generally, the relation between mental phenomena and physical phenomena. Theories about this include various types of dualism (there are two kinds of stuff), various types of monism (there's only one kind of stuff), pluralism/polyism (there are many kinds of stuff), each of which has its own variants.
Dualism in particular has many variants which differ, for instance, on whether there are causal connections between the kinds of stuff and if so what sort of causal connections. For instance according to epiphenomenalism it's one-way causal traffic: physical events and processes can cause mental events and processes but not vice versa, because the physical realm is causally closed (via the causal antecedent relation): everything that happens in it that has causes has only physical causes. This view may or may not allow that mental events can cause other mental events.
(There are also physicists trying to bring the mental into the basic dynamics of quantum physics, which can imply either that physics is not causally closed, or that the physical includes the mental, according to taste.)
Philosophers who don't like mumbo jumbo or mysterious independently existing spirits influencing matter, because they believe that physics is causally closed, often believe some variant of epiphenomenalism (for which they may invent new euphemisms). Others allow that mental phenomena can act as causes because they are really physical phenomena (e.g. brain processes) described from a special viewpoint, and when your desires cause you to act that just means that certain things in your brain cause you to act. This is a variant of monism which *reduces* mind to matter. (It has many sub-variants.)
The trouble with epiphenomenalism and reductive physicalism is that it appears to leave us either with a view in which the only ``true reality'' is the physical world and everything else is either just an interpretation of it, or a collection of powerless shadows. Both views are hard to square with common sense. We do have mental events (noticing a movement in the bushes) and they do have mental and physical effects (feeling frightened, shivering with fear or being startled) and there are many other non-physical phenomena that have effects, including physical effects: economic inflation can cause pensioner poverty, which can cause bad health, the spread of information (e.g. news of Diana's death) can cause broadcasting organisations to change their schedules and huge crowds displaying sorrow, etc.
There is also the nasty niggling doubt that what we now think of as physical reality will turn out to be yet another epiphenomenon when a deeper physical theory emerges in the 23rd century. And will that be the final one?
There is a new way forward. The time is ripe for computer scientists and software engineers to get together with philosophers in an attempt to sort out this mess. Most of the naturally occurring non-physical phenomena discussed hitherto (mental, social, economic, biological phenomena) are very complex, ill-understood and very difficult to discuss with deep understanding of the issues: e.g. nobody knows much about how minds and brains are related, despite all the advances in psychology and neuroscience, and despite the illusions of self-understanding produced by introspection.
Consequently it is to be expected that much of what philosophers say about such phenomena (e.g. when they characterise a "supervenience" relation that is supposed to hold between mind and matter), is distorted by ignorance, or incorrect theories of how things actually work.
We can now make progress because there is a new type of non-physical realm for which we have a much deeper understanding, because we have created it and we know a great deal about how to modify or extend it, debug it, analyse it and explain it. However much of this know-how is still at the stage of a "craft", i.e. it's mostly intuitions and practical know-how of engineers and designers, though theory is in hot pursuit.
This is the realm of virtual machines in computers. There are many different sorts of virtual machines, e.g. chess-playing machines, spreadsheet machines, email systems, process schedulers in operating systems, distributed virtual file stores, theorem provers, word processors, proliferating software agents, decision support systems, and many virtual machines running on the internet. Virtual machines are *machines* insofar as they have components (which themselves may be virtual machines) which interact causally and change over time. When a spelling checker detects a spelling mistake in your document it may cause the contents of the document to change, or invoke an interactive dialogue virtual machine to negotiate with you. But detecting a spelling mistake involves examining sequences of characters, and they are not physical objects. "Mistake" is not a physical property. The correction can lengthen a word, causing a line to be too long, leading to reformatting of a page and moving of some text onto the next page. But if you open up the machine and examine its physical contents you will not find words, and lines of text, and pages. The process of unification in a prolog virtual machine is not a physical process. The process of code optimisation in a compiler is not a physical process (though it has physical effects because it makes programs run faster).
When computational virtual machines run they produce many sorts of physical effects, e.g. changes on the screen and in the computer's memory and on file-systems, or movements of a robot's limbs. How is that possible if the underlying physical circuitry is causally closed? Surely that means that only the previous states of the physical machine could have caused those changes?
So nothing that happens in a virtual machine is of any significance whatsoever, and computer scientists and software engineers are wasting their time designing such machines?
Or maybe our notions of causation become deeply confused when we address questions about causal closure, and whether certain entities are real. My conjecture is that by understanding more clearly what we mean by "X caused Y" in the context of these "simple" computational virtual machines we may begin to get a deeper understanding of all sorts of older, vastly more complex and subtle, biological, social, mental, virtual machines and how their reality, and their causal powers, do not contradict anything in physics. They are not an illusion, not just an arbitrary interpretation of the physical world, not ghostly powerless shadows. We need them in our ontology as much as we need atoms or sub-atomic particles. Because that's how the world is. Philosophy needs help from software engineers in order to understand all this.
(There is more on this in papers in the Cognition and Affect directory: http://www.cs.bham.ac.uk/research/cogaff/ )