prepare to write some tutirual about type inference