i suspect explicit widening will come to be seen as a mistake. it crops up so frequently in real code that people get used to just automatically sticking the toLong or whatever on the end, such that in the few cases where it could actually catch a mistake, it's unlikely the programmer will consider it long enough to notice that