simple dependent type inference (add),eg:a = 1 b = 2 c = a+b, c is infered as int
err msg thrown out if a var is not initialized