a little type inference oon expression
refactor on type inference
type inference: chaining calls