Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
[Caml-list] string_of_float -> float_of_string locale dependency bug
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2004-06-14 (15:58)
From: Xavier Leroy <xavier.leroy@i...>
Subject: Re: [Caml-list] string_of_float -> float_of_string locale dependency bug
> Camomile needs to set LC_ALL to acquire LC_NUMERIC value.  Camomile
> does not use LC_NUMERIC value currently, but it provides API to
> getting all LC_* values for the user.

Fine.  So what about restoring LC_NUMERIC after getting its value, like you
helpfully suggest that the Caml run-time system does?

> > The C library API for internationalization is largely broken, and as
> > you can see there is nothing we can do to work around the fact that
> > the current locale is a global variable for the whole program.
> You can temporally save the current LC_NUMERIC value, change its value
> to C, and restore the value after the conversion.  What is a problem?

Speed.  setlocale() is quite expensive, and string <-> float
conversions can be extremely frequent.

- Xavier Leroy

To unsubscribe, mail Archives:
Bug reports: FAQ:
Beginner's list: