now (+) in the abstract syntax works, i.e. it knows how to deal with partial sums