Printable is protocol and There are two functions f and g
func f(p: Printable) { println(p) } func g(t: T) { println(t) }