Inheritance, variation and evolution