Describir: Unifying theories of programming