[GHC5] Creating Socket.PortNumber from Int?
Simon Marlow
simonmar@microsoft.com
Wed, 6 Jun 2001 10:17:34 +0100
> Until 5.00 I could use mkPortNumber to get what I want, i.e.
> PortNumber (mkPortNumber port)
> Now in 5.01, this function now longer exists.
> (PortNumber 5) works, but (PortNumber (5::Int)) does not, so I
> have to use "fromIntegral" to get it to work again:
> PortNumber (fromIntegral (5::Int))
>=20
> I suppose I'm missing something essential here, as there must be a=20
> better way of doing it when passing a variable of type Int.
Think of it this way: mkPortNumber has been renamed to fromIntegral, and
now supports making port numbers from any integral type, not just Int.
I didin't see the need for a special purpose convesion from Int, when
fromIntegral does the job in a much more general way. =20
Besides, using fromIntegral as a general-purpose integral converter is
becoming standard practice now that we can optimise it well.
Cheers,
Simon