Separating code and declarations