different syntax for function type