A language for contextual logic programming