[m-users.] Yet another piece for the posix library: strerror(3)

Volker Wysk post at volker-wysk.de
Mon Oct 28 17:18:25 AEDT 2019


Am Montag, den 28.10.2019, 16:06 +1100 schrieb Julien Fischer:
> On Sun, 27 Oct 2019, Volker Wysk wrote:
> 
> > I've extended the posix library again, this time with the
> > strerror(3)
> > call. I had to modify posix.m in order to do it.
> 
> That's not referentially transparent as the error message returned
> will
> be affected by the current locale setting.  This can be fixed by
> making
> the interface into:
> 
>     :- pred strerror(posix.error::in, string::out, io::di, io::uo) is
> det.

I thought that it might depend on the locale, but the locale doesn't
change, and therefore it is referentially transparent. But there might
be the slight possibility that the LC_MESSAGES environment variable is
changed during runtime...

So let's make it an IO action.

Cheers
Volker



More information about the users mailing list