Haskell, 2021 bytes
main=mapMmain=mapM_ print[1..]
Arbitrary-precision integers and infinite lists make this easy :-)
Luckily mapMmapM_
is in the Prelude. If Data.Traversable
was as well, we even could shrink it to 1819 bytes:
main=for[1main=for_[1..]print