 The language looks a bit like Prolog (this is not surprising since both languages arose at about the same time out of work on affix grammars).As opposed to Prolog however, control flow in CDL is deterministically based on success/failure i.e., no other alternatives are tried when the current one succeeds.This idea is also used in parsing expression grammars.