C Localization Functions - Criticism

Criticism

C standard localization functions are criticized because the localization state is stored globally. This means that in a given program all operations involving a locale can use only one locale at a time. As a result, it is very difficult to implement programs that use more than one locale.

The functions alter the behavior of printf/scanf/strtod which are often used to write saved data to a file or to other programs. The result is that a saved file in one locale will not be readable in another locale, or not be readable at all due to assumptions such as "numbers end at comma characters". Most large-scale software forces the locale to "C" (or another fixed value) to work around these problems.

Another criticism is that these functions do not address at all the far more important problem of translating text to a different language.

Read more about this topic:  C Localization Functions

Famous quotes containing the word criticism:

    ... criticism ... makes very little dent upon me, unless I think there is some real justification and something should be done.
    Eleanor Roosevelt (1884–1962)

    The critic lives at second hand. He writes about. The poem, the novel, or the play must be given to him; criticism exists by the grace of other men’s genius. By virtue of style, criticism can itself become literature. But usually this occurs only when the writer is acting as critic of his own work or as outrider to his own poetics, when the criticism of Coleridge is work in progress or that of T.S. Eliot propaganda.
    George Steiner (b. 1929)

    Good criticism is very rare and always precious.
    Ralph Waldo Emerson (1803–1882)