Metabolism
Metabolism in Darwinbots is still in the planning stages. The exact implementation would rely heavily on technical constraints, specifically the number of different chemicals the program can support with reasonable speed and memory issues.
Chemicals
Each chemical in the program is considered to be a simple organic molecule derived from a relatively small collection of groups (analogous to the hydroxyl etc. groups in biochemistry).
Ideally there are perhaps 8 groups, with each molecule being represented by the same number of bits. A bit of 0 would represent the absense of that group, whereas a bit of 1 would represent the presence of that group.
For example:
10001000 would indicate a molecule made up of group 1 and 5.
00000000 would indicate a molecule made up of none of the groups (but presumably still possessing the "back bone" of all the other organic molecules, and so still having chemical properties, mass, volume, etc.) This molecule would be a acceptor for all groups.
Each chemical is assigned arbitrary attributes determining free nrg, shell, slime, poison, etc.
Metabolic Paths
All metabolic paths follow this form:
A + B (+/- nrg) -> C + D (+/- nrg)
Where the products of the reaction are limited by the groups the original reactants possessed.
Final Thoughts
The ideas expressed here are not set in stone by any means. If you feel you know a better way, feel free to discuss it here or in the forums.