CUBL: a language for the development of DAI systems