Hi St��phane,
I dug around a little bit regarding this subject and found that people are working to create software that is aware of its energy consumption. There is a Dutch university research group actively involved with this and related topics here:
http://s2group.cs.vu.nl/mission/.
This article might be a good read on the subject:
https://research.vu.nl/en/publications/a-manifesto-for-energy-aware-software
Is this something that could be of interest to Inria or the Pharo project?
What do you mean exactly with your last comment? I think that when distinctions in a domain are successfully made explicit at design time, this will improve performance at runtime and thus should also improve energy efficiency. How does that relate to your comment about message passing/branching/polymorphism?