On conceptual modelling: Perspectives from artificial intelligence, databases, and programming languages