A language for computing under uncertainty