• "Internationalis(z)ing Code - Computerphile"

    From Lynn McGuire@3:633/10 to All on Friday, January 23, 2026 21:35:54
    "Internationalis(z)ing Code - Computerphile"
    https://www.youtube.com/watch?v=0j74jcxSunY

    "Catering for a global audience is difficult, Tom takes us through a 'timezones' style explanation of the things you need to keep in mind
    when internationalising your code."

    I knew it was bad, but not that bad.

    Yup, I just write and sell my software in American English. I've got
    enough problems without having to deal with localization.

    One of my programmers has been working on converting our Windows user interface, written in 450,000 lines of C++, from Ascii to Unicode for
    two years now. It was a one year project to start and his latest
    estimate is another year to complete.

    Lynn


    --- PyGate Linux v1.5.2
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lawrence D?Oliveiro@3:633/10 to All on Saturday, January 24, 2026 04:46:22
    On Fri, 23 Jan 2026 21:35:54 -0600, Lynn McGuire wrote:

    I knew it was bad, but not that bad.

    Back in earlier Web 1.0 days, I developed an online shop system for
    a client, that had to be localizable for different target markets --
    different currencies, different languages.

    I developed a templating system, which allowed the code to substitute
    strings into other strings, making choices according to numbers of
    items (for singular-versus-plural cases), gender etc. Since the
    placeholders were substituted by name, not position, this allowed for differences in grammar (e.g. verb-noun ordering).

    As new languages came along with more grammatical peculiarities, I
    added new templating cases, that could substitute to exactly the same
    strings for existing languages. For example, a list of items in
    English might expand to one of

    1 item -- ?A?
    2 items -- ?A or B?
    3 or more items -- ?A, B, ... C or D?

    whereas in Japanese, the case with 3 items has to be distinguished
    from the ones with 4 or more items.

    The hard part was explaining the templating system to translators. I
    tried giving copious examples of how the substitutions would work in
    specific cases. As I recall, I still had to do some massaging of the
    strings they sent back, in some cases having to guess what they meant,
    and then get them to test the results, to confirm with them that the
    site was producing the correct messages in all cases.

    --- PyGate Linux v1.5.2
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Gary Scott@3:633/10 to All on Saturday, January 24, 2026 10:11:08
    On 1/23/2026 10:46 PM, Lawrence D?Oliveiro wrote:
    On Fri, 23 Jan 2026 21:35:54 -0600, Lynn McGuire wrote:

    I knew it was bad, but not that bad.

    Back in earlier Web 1.0 days, I developed an online shop system for
    a client, that had to be localizable for different target markets -- different currencies, different languages.

    I developed a templating system, which allowed the code to substitute
    strings into other strings, making choices according to numbers of
    items (for singular-versus-plural cases), gender etc. Since the
    placeholders were substituted by name, not position, this allowed for differences in grammar (e.g. verb-noun ordering).

    As new languages came along with more grammatical peculiarities, I
    added new templating cases, that could substitute to exactly the same
    strings for existing languages. For example, a list of items in
    English might expand to one of

    1 item -- ?A?
    2 items -- ?A or B?
    3 or more items -- ?A, B, ... C or D?

    whereas in Japanese, the case with 3 items has to be distinguished
    from the ones with 4 or more items.

    The hard part was explaining the templating system to translators. I
    tried giving copious examples of how the substitutions would work in
    specific cases. As I recall, I still had to do some massaging of the
    strings they sent back, in some cases having to guess what they meant,
    and then get them to test the results, to confirm with them that the
    site was producing the correct messages in all cases.

    I would think that in some cases, you could simply substitute a
    different bubble help message for hovering over a provided icon,
    nowadays. Might be sufficient for some cases.

    --- PyGate Linux v1.5.5
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Thomas Koenig@3:633/10 to All on Sunday, January 25, 2026 17:13:19
    Lynn McGuire <lynnmcguire5@gmail.com> schrieb:
    "Internationalis(z)ing Code - Computerphile"
    https://www.youtube.com/watch?v=0j74jcxSunY

    "Catering for a global audience is difficult, Tom takes us through a 'timezones' style explanation of the things you need to keep in mind
    when internationalising your code."

    I knew it was bad, but not that bad.

    Yup, I just write and sell my software in American English. I've got
    enough problems without having to deal with localization.

    You can probably get by with engineering software.

    One of my programmers has been working on converting our Windows user interface, written in 450,000 lines of C++, from Ascii to Unicode for
    two years now. It was a one year project to start and his latest
    estimate is another year to complete.

    Like the early history of Fortran - when people ask when the project
    was going to be finisehd, the answer was always "in six months".

    --
    This USENET posting was made without artificial intelligence,
    artificial impertinence, artificial arrogance, artificial stupidity,
    artificial flavorings or artificial colorants.

    --- PyGate Linux v1.5.5
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lynn McGuire@3:633/10 to All on Sunday, January 25, 2026 15:21:27
    On 1/25/2026 11:13 AM, Thomas Koenig wrote:
    Lynn McGuire <lynnmcguire5@gmail.com> schrieb:
    "Internationalis(z)ing Code - Computerphile"
    https://www.youtube.com/watch?v=0j74jcxSunY

    "Catering for a global audience is difficult, Tom takes us through a
    'timezones' style explanation of the things you need to keep in mind
    when internationalising your code."

    I knew it was bad, but not that bad.

    Yup, I just write and sell my software in American English. I've got
    enough problems without having to deal with localization.

    You can probably get by with engineering software.

    One of my programmers has been working on converting our Windows user
    interface, written in 450,000 lines of C++, from Ascii to Unicode for
    two years now. It was a one year project to start and his latest
    estimate is another year to complete.

    Like the early history of Fortran - when people ask when the project
    was going to be finisehd, the answer was always "in six months".

    I started writing Fortran code in 1975 for one of my dad's programmers
    when I was 14. Dad was always selling the future capabilities of the software, more than the software did or was even designed to do. Here I
    am in 2026, still trying to add more capabilities to the same software
    for my customers demands.

    BTW, I don't put commas in my 12 digit printed numbers because I sell
    40% of my software outside the USA, just periods. Shoot, people can't
    even agree on periods or commas for the fractional part.

    Lynn


    --- PyGate Linux v1.5.5
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Janis Papanagnou@3:633/10 to All on Monday, January 26, 2026 01:00:15
    On 2026-01-25 22:21, Lynn McGuire wrote:
    Lynn McGuire <lynnmcguire5@gmail.com> schrieb:

    [...]˙I've got enough problems without having to deal with localization.

    Getting all right if implementing things from scratch is demanding.
    (Luckily software and systems nowadays handle that for us.)

    $ LC_NUMERIC=de_DE.UTF-8 printf "%9.3f\n" 1.234,567
    1234,567
    $ LC_NUMERIC=en_US.UTF-8 printf "%9.3f\n" 1,234.567
    1234.567

    BTW, I don't put commas in my 12 digit printed numbers because I sell
    40% of my software outside the USA, just periods.

    That, OTOH, is just the trivial part. Even some old languages (like
    Simula) allowed to change the decimal mark character for read/write
    of real numbers. Since you just need that function on the interface
    level it can be done in one place (presuming you use the respective
    function, or redefine your own); the internal representation may be
    all the same. So just define the numeric separators in the program's environment.

    Shoot, people can't
    even agree on periods or commas for the fractional part.

    Are you really complaining about characteristics of people's (or
    nation's) historic conventions?

    They typically use what's defined in their nation. (What's actually
    supported by the respective locale for that language/nation.) It's
    hard to change long used common habits. (See introduction of the SI
    units in the USA, for example.) I think they usually also don't need
    to change their habits. Only in case of international cooperation we
    need to distinguish the [external] representation. (Our IT, software
    systems, and programmers certainly can handle that.)

    Personally I'm using the "C" locale for numeric representations in
    my private computing. But I'm used to write numbers like "1234.567",
    where non-IT people might not be used to it.

    Though even long existing software doesn't get localization sensibly implemented (despite they're technically using locales). But that's
    another story.

    Janis


    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lawrence D?Oliveiro@3:633/10 to All on Monday, January 26, 2026 01:42:48
    On Sun, 25 Jan 2026 15:21:27 -0600, Lynn McGuire wrote:

    BTW, I don't put commas in my 12 digit printed numbers because I sell
    40% of my software outside the USA, just periods. Shoot, people can't
    even agree on periods or commas for the fractional part.

    This is where you should automatically query the locale settings.

    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lynn McGuire@3:633/10 to All on Monday, January 26, 2026 00:45:41
    On 1/25/2026 7:42 PM, Lawrence D?Oliveiro wrote:
    On Sun, 25 Jan 2026 15:21:27 -0600, Lynn McGuire wrote:

    BTW, I don't put commas in my 12 digit printed numbers because I sell
    40% of my software outside the USA, just periods. Shoot, people can't
    even agree on periods or commas for the fractional part.

    This is where you should automatically query the locale settings.

    Yup, only if I had the time. I am at 15% of converting my Fortran code
    to C++. 800,000 lines of Fortran code with 700,000 lines to go. I got
    my input parser on my data reduction software to working in C++ just
    last Thursday.

    Lynn


    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From David Brown@3:633/10 to All on Monday, January 26, 2026 09:07:35
    On 26/01/2026 02:42, Lawrence D?Oliveiro wrote:
    On Sun, 25 Jan 2026 15:21:27 -0600, Lynn McGuire wrote:

    BTW, I don't put commas in my 12 digit printed numbers because I sell
    40% of my software outside the USA, just periods. Shoot, people can't
    even agree on periods or commas for the fractional part.

    This is where you should automatically query the locale settings.

    In my experience, that's often of no help at all. It is very dependent
    on the type of programs you are writing, and the type of users.

    There are some PCs that are /personal/ computers. But there are many situations where PCs are not personal, or where the same program is used
    on the same system by different people (different humans, not different Linux/Windows logins) who have different preferences. The obvious
    example is web-based software, though that's not a common model for the languages in these Usenet groups.

    I don't write a lot of user-facing software, but when I do, it is not
    uncommon for it to be bilingual - Norwegian and English. And the
    language is changed while the program is running, perhaps in connection
    to a login if the program has one.

    IME, locale settings can be a bigger hinder than help, especially on
    Windows and with MS Office. If your program exports data in tab or
    semicolon separated formats to be opened in a spreadsheet, or has some
    other connection to MS Office programs, you have to use the formats that
    the locale wants, not the formats the current user wants. (LibreOffice
    is vastly more flexible.) Displaying a decimal point, decimal colon, or decimal apostrophe is not difficult - it is handling the imports and
    exports that is the challenge.

    And if you are writing wider-range internationalised software (not my
    field), locales cover only a very small part. Your screen layout should likely be very different for a country with a right-to-left writing
    system, for example. And whatever name you pick for your program, if
    you have enough languages then you are pretty much guaranteed that in
    some countries your program name will be an insult, a swear word, or at
    least sound ridiculous.


    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Michael S@3:633/10 to All on Monday, January 26, 2026 14:17:46
    On Mon, 26 Jan 2026 00:45:41 -0600
    Lynn McGuire <lynnmcguire5@gmail.com> wrote:

    On 1/25/2026 7:42 PM, Lawrence D?Oliveiro wrote:
    On Sun, 25 Jan 2026 15:21:27 -0600, Lynn McGuire wrote:

    BTW, I don't put commas in my 12 digit printed numbers because I
    sell 40% of my software outside the USA, just periods. Shoot,
    people can't even agree on periods or commas for the fractional
    part.

    This is where you should automatically query the locale settings.

    Yup, only if I had the time. I am at 15% of converting my Fortran
    code to C++. 800,000 lines of Fortran code with 700,000 lines to go.
    I got my input parser on my data reduction software to working in
    C++ just last Thursday.

    Lynn


    How many of your grandchildren are working on this software?



    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Scott Lurndal@3:633/10 to All on Monday, January 26, 2026 15:04:43
    Janis Papanagnou <janis_papanagnou+ng@hotmail.com> writes:
    On 2026-01-25 22:21, Lynn McGuire wrote:
    Lynn McGuire <lynnmcguire5@gmail.com> schrieb:

    [...]˙I've got enough problems without having to deal with localization.

    Getting all right if implementing things from scratch is demanding.
    (Luckily software and systems nowadays handle that for us.)

    $ LC_NUMERIC=de_DE.UTF-8 printf "%9.3f\n" 1.234,567
    1234,567
    $ LC_NUMERIC=en_US.UTF-8 printf "%9.3f\n" 1,234.567
    1234.567

    BTW, I don't put commas in my 12 digit printed numbers because I sell
    40% of my software outside the USA, just periods.

    That, OTOH, is just the trivial part. Even some old languages (like
    Simula) allowed to change the decimal mark character for read/write
    of real numbers. Since you just need that function on the interface
    level it can be done in one place (presuming you use the respective
    function, or redefine your own); the internal representation may be
    all the same. So just define the numeric separators in the program's >environment.

    COBOL:

    ENVIRONMENT DIVISION.
    SPECIAL-NAMES.
    DECIMAL POINT IS COMMA.



    Shoot, people can't
    even agree on periods or commas for the fractional part.

    Are you really complaining about characteristics of people's (or
    nation's) historic conventions?

    It's Lynn. He's a rather hidebound trump supporter. Logic and
    history are not components of his thought processes.


    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Thomas Koenig@3:633/10 to All on Monday, January 26, 2026 22:47:33
    Lynn McGuire <lynnmcguire5@gmail.com> schrieb:

    I started writing Fortran code in 1975 for one of my dad's programmers
    when I was 14. Dad was always selling the future capabilities of the software, more than the software did or was even designed to do.

    Sounds an awful lot like Bill Gates, but he even sold software
    that had not even been written. There is a story where he wrote a
    Fortran compiler, which failed tests and was therefore not accepted,
    and he refused to fix the bugs.

    --
    This USENET posting was made without artificial intelligence,
    artificial impertinence, artificial arrogance, artificial stupidity,
    artificial flavorings or artificial colorants.

    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lynn McGuire@3:633/10 to All on Monday, January 26, 2026 16:50:11
    On 1/26/2026 6:17 AM, Michael S wrote:
    On Mon, 26 Jan 2026 00:45:41 -0600
    Lynn McGuire <lynnmcguire5@gmail.com> wrote:

    On 1/25/2026 7:42 PM, Lawrence D?Oliveiro wrote:
    On Sun, 25 Jan 2026 15:21:27 -0600, Lynn McGuire wrote:

    BTW, I don't put commas in my 12 digit printed numbers because I
    sell 40% of my software outside the USA, just periods. Shoot,
    people can't even agree on periods or commas for the fractional
    part.

    This is where you should automatically query the locale settings.

    Yup, only if I had the time. I am at 15% of converting my Fortran
    code to C++. 800,000 lines of Fortran code with 700,000 lines to go.
    I got my input parser on my data reduction software to working in
    C++ just last Thursday.

    Lynn


    How many of your grandchildren are working on this software?

    None as I have no grandchildren.

    Lynn


    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lynn McGuire@3:633/10 to All on Monday, January 26, 2026 16:51:43
    On 1/26/2026 4:47 PM, Thomas Koenig wrote:
    Lynn McGuire <lynnmcguire5@gmail.com> schrieb:

    I started writing Fortran code in 1975 for one of my dad's programmers
    when I was 14. Dad was always selling the future capabilities of the
    software, more than the software did or was even designed to do.

    Sounds an awful lot like Bill Gates, but he even sold software
    that had not even been written. There is a story where he wrote a
    Fortran compiler, which failed tests and was therefore not accepted,
    and he refused to fix the bugs.

    Powerstation. Very buggy. Several service packs. I could never get it
    to work properly.

    Lynn


    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lawrence D?Oliveiro@3:633/10 to All on Tuesday, January 27, 2026 05:17:12
    On Mon, 26 Jan 2026 22:47:33 -0000 (UTC), Thomas Koenig wrote:

    There is a story where he wrote a Fortran compiler, which failed
    tests and was therefore not accepted, and he refused to fix the
    bugs.

    Who was dumb enough to buy that?

    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Thomas Koenig@3:633/10 to All on Tuesday, January 27, 2026 06:45:38
    Lawrence D?Oliveiro <ldo@nz.invalid> schrieb:
    On Mon, 26 Jan 2026 22:47:33 -0000 (UTC), Thomas Koenig wrote:

    There is a story where he wrote a Fortran compiler, which failed
    tests and was therefore not accepted, and he refused to fix the
    bugs.

    Who was dumb enough to buy that?

    They didn't, it was not accepted.

    Unfortunately, the story itself seems to have vanished from the
    Internet, or at least I cannot find it with Google any more.

    --
    This USENET posting was made without artificial intelligence,
    artificial impertinence, artificial arrogance, artificial stupidity,
    artificial flavorings or artificial colorants.

    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lynn McGuire@3:633/10 to All on Tuesday, January 27, 2026 01:46:43
    On 1/27/2026 12:45 AM, Thomas Koenig wrote:
    Lawrence D?Oliveiro <ldo@nz.invalid> schrieb:
    On Mon, 26 Jan 2026 22:47:33 -0000 (UTC), Thomas Koenig wrote:

    There is a story where he wrote a Fortran compiler, which failed
    tests and was therefore not accepted, and he refused to fix the
    bugs.

    Who was dumb enough to buy that?

    They didn't, it was not accepted.

    Unfortunately, the story itself seems to have vanished from the
    Internet, or at least I cannot find it with Google any more.

    If I remember correctly, Microsoft licensed somebody else's Fortran 90 compiler and relabeled it.

    Lynn


    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Chris M. Thomasson@3:633/10 to All on Tuesday, January 27, 2026 00:14:45
    On 1/26/2026 11:46 PM, Lynn McGuire wrote:
    On 1/27/2026 12:45 AM, Thomas Koenig wrote:
    Lawrence D?Oliveiro <ldo@nz.invalid> schrieb:
    On Mon, 26 Jan 2026 22:47:33 -0000 (UTC), Thomas Koenig wrote:

    There is a story where he wrote a Fortran compiler, which failed
    tests and was therefore not accepted, and he refused to fix the
    bugs.

    Who was dumb enough to buy that?

    They didn't, it was not accepted.

    Unfortunately, the story itself seems to have vanished from the
    Internet, or at least I cannot find it with Google any more.

    If I remember correctly, Microsoft licensed somebody else's Fortran 90 compiler and relabeled it.

    Kind of reminded me of, god what was that C++ std lib they licensed for
    msvc 6.0. Damn I cannot remember the name right now... search...
    Dinkumware! Ahhh.

    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Michael S@3:633/10 to All on Tuesday, January 27, 2026 11:04:36
    On Tue, 27 Jan 2026 01:46:43 -0600
    Lynn McGuire <lynnmcguire5@gmail.com> wrote:

    On 1/27/2026 12:45 AM, Thomas Koenig wrote:
    Lawrence D?Oliveiro <ldo@nz.invalid> schrieb:
    On Mon, 26 Jan 2026 22:47:33 -0000 (UTC), Thomas Koenig wrote:

    There is a story where he wrote a Fortran compiler, which failed
    tests and was therefore not accepted, and he refused to fix the
    bugs.

    Who was dumb enough to buy that?

    They didn't, it was not accepted.

    Unfortunately, the story itself seems to have vanished from the
    Internet, or at least I cannot find it with Google any more.

    If I remember correctly, Microsoft licensed somebody else's Fortran
    90 compiler and relabeled it.

    Lynn


    There is a big chance that you don't remember correctly.
    At least it is different, not to say opposite, from the story that I
    read in other places.
    They say that when Microsoft found out that support for F90 is
    necessary for continuation of their Fortran business then they
    decided that their compilers stuff has more important things to
    do. So they sold their compiler sources and Powerstation brand to
    Digital that later became Compaq and later yet before merger with HP
    sold it to Intel where it either replaced Intel's own Fortran compiler
    or was merged with it. The last part of the story is not conclusive.


    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Gary Scott@3:633/10 to All on Tuesday, January 27, 2026 08:35:35
    On 1/27/2026 3:04 AM, Michael S wrote:
    On Tue, 27 Jan 2026 01:46:43 -0600
    Lynn McGuire <lynnmcguire5@gmail.com> wrote:

    On 1/27/2026 12:45 AM, Thomas Koenig wrote:
    Lawrence D?Oliveiro <ldo@nz.invalid> schrieb:
    On Mon, 26 Jan 2026 22:47:33 -0000 (UTC), Thomas Koenig wrote:

    There is a story where he wrote a Fortran compiler, which failed
    tests and was therefore not accepted, and he refused to fix the
    bugs.

    Who was dumb enough to buy that?

    They didn't, it was not accepted.

    Unfortunately, the story itself seems to have vanished from the
    Internet, or at least I cannot find it with Google any more.

    If I remember correctly, Microsoft licensed somebody else's Fortran
    90 compiler and relabeled it.

    Lynn


    There is a big chance that you don't remember correctly.
    At least it is different, not to say opposite, from the story that I
    read in other places.
    They say that when Microsoft found out that support for F90 is
    necessary for continuation of their Fortran business then they
    decided that their compilers stuff has more important things to
    do. So they sold their compiler sources and Powerstation brand to
    Digital that later became Compaq and later yet before merger with HP
    sold it to Intel where it either replaced Intel's own Fortran compiler
    or was merged with it. The last part of the story is not conclusive.

    re: Intel: Merged is more accurate. Mostly the "front end" was
    retained and adjusted to produce the intel "back end" format.

    I used Powerstation 1.0 and 4.0 with some success. Yes, they were both
    buggy, but I was able to work around any issues I found.

    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Scott Lurndal@3:633/10 to All on Tuesday, January 27, 2026 15:21:03
    Lawrence =?iso-8859-13?q?D=FFOliveiro?= <ldo@nz.invalid> writes:
    On Mon, 26 Jan 2026 22:47:33 -0000 (UTC), Thomas Koenig wrote:

    There is a story where he wrote a Fortran compiler, which failed
    tests and was therefore not accepted, and he refused to fix the
    bugs.

    Who was dumb enough to buy that?

    Probably someone like you who is dumb enough to snip relevent
    context when replying to a post.

    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Scott Lurndal@3:633/10 to All on Tuesday, January 27, 2026 15:22:49
    "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> writes:
    On 1/26/2026 11:46 PM, Lynn McGuire wrote:
    On 1/27/2026 12:45 AM, Thomas Koenig wrote:
    Lawrence D?Oliveiro <ldo@nz.invalid> schrieb:
    On Mon, 26 Jan 2026 22:47:33 -0000 (UTC), Thomas Koenig wrote:

    There is a story where he wrote a Fortran compiler, which failed
    tests and was therefore not accepted, and he refused to fix the
    bugs.

    Who was dumb enough to buy that?

    They didn't, it was not accepted.

    Unfortunately, the story itself seems to have vanished from the
    Internet, or at least I cannot find it with Google any more.

    If I remember correctly, Microsoft licensed somebody else's Fortran 90
    compiler and relabeled it.

    Kind of reminded me of, god what was that C++ std lib they licensed for
    msvc 6.0. Damn I cannot remember the name right now... search...
    Dinkumware! Ahhh.


    To be fair dinkum about it, the company name was not derogatory.

    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Chris M. Thomasson@3:633/10 to All on Tuesday, January 27, 2026 12:33:06
    On 1/27/2026 7:22 AM, Scott Lurndal wrote:
    "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> writes:
    On 1/26/2026 11:46 PM, Lynn McGuire wrote:
    On 1/27/2026 12:45 AM, Thomas Koenig wrote:
    Lawrence D?Oliveiro <ldo@nz.invalid> schrieb:
    On Mon, 26 Jan 2026 22:47:33 -0000 (UTC), Thomas Koenig wrote:

    There is a story where he wrote a Fortran compiler, which failed
    tests and was therefore not accepted, and he refused to fix the
    bugs.

    Who was dumb enough to buy that?

    They didn't, it was not accepted.

    Unfortunately, the story itself seems to have vanished from the
    Internet, or at least I cannot find it with Google any more.

    If I remember correctly, Microsoft licensed somebody else's Fortran 90
    compiler and relabeled it.

    Kind of reminded me of, god what was that C++ std lib they licensed for
    msvc 6.0. Damn I cannot remember the name right now... search...
    Dinkumware! Ahhh.


    To be fair dinkum about it, the company name was not derogatory.

    :^)

    Iirc, MSVC 6 seemed to have better C support than C++? God that was way
    back in late 1990's early 2000's. That was back when I was using NT 4.0
    and Solaris a lot.

    --- PyGate Linux v1.5.6
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Paavo Helde@3:633/10 to All on Friday, January 30, 2026 14:56:35
    On 1/26/2026 10:07 AM, David Brown wrote:


    IME, locale settings can be a bigger hinder than help, especially on
    Windows and with MS Office.
    Right. When using locales, the result of the program run is not
    deterministic as you never know what locale might be installed by the
    user. On top of that, the code using locales is often several times
    slower, especially in multithreaded programs where threads are sharing
    the common global locale. Seems like a lose-lose situation to me.

    Locales are only useful when displaying info directly for the user to
    view. Alas, most C++ projects are not GUI, but much lower level
    libraries where there is no connection between the current machine
    locale and the locale of the human viewer who might eventually view the produced data. Moreover, most produced text data is consumed by other
    software nowadays, not humans, and having to deal with varying locales
    just breaks or at least complicates the things here. So locale-dependent behavior should not be the default, but rather something to be ordered explicitly and used rarely.

    Of course, i18n is a broader topic than locales, and will fail in more braindead ways as well. Just today MS Teams kindly informed me that the
    tab "Files" has been renamed to "Shared". However, it did in Estonian,
    so the help balloon box talked about renaming the tab to "šhiskasutuses"
    and at the same time pointing to the real tab which was named totally differently - "Jagatud". Both of these are legitimate translations of "Shared", but the translators of the tab and of the help balloon
    apparently did not cooperate. So the help balloon was really more
    confusing than helpful.



    --- PyGate Linux v1.5.8
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Janis Papanagnou@3:633/10 to All on Friday, January 30, 2026 14:37:37
    On 2026-01-30 13:56, Paavo Helde wrote:

    Locales are only useful when displaying info directly for the user to
    view.

    Right. And also for entering data through the UI.

    Alas, most C++ projects are not GUI, but much lower level libraries

    Probably.

    where there is no connection between the current machine
    locale and the locale of the human viewer

    Sensibly so.

    The system wide setting can be a default (but need not be). Similar
    with user specific locale settings.

    who might eventually view the produced data.

    As you say initially, it's a feature for the UI. You should separate
    the internal data model from the UI data representation level.

    Moreover, most produced text data is consumed by other
    software nowadays,

    This may or may not be true. (But as argument it's anyway irrelevant.)

    not humans, and having to deal with varying locales
    just breaks or at least complicates the things here.

    No. Nothing is broken if designed sensibly. If the software supports
    internal communication interfaces these should be specified and used
    on both communication sides as defined. If you use (or misuse) the
    standard UI for tools' access the tools may and (if necessary) should
    control the locale setting on that level to conform to the definition.

    So locale-dependent
    behavior should not be the default, but rather something to be ordered explicitly and used rarely.

    Wrong conclusion based on wrong assumptions or wrong use (or design).

    If your software doesn't support locales it's anyway pointless. And
    if your software sensibly supports it you typically have control over
    it. (Can't tell about Windows, the initially discussed platform, but
    I'd doubt that it's broken by design; or is it?)

    Janis

    [...]


    --- PyGate Linux v1.5.8
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Thomas Koenig@3:633/10 to All on Friday, January 30, 2026 20:28:01
    David Brown <david.brown@hesbynett.no> schrieb:
    [...]


    IME, locale settings can be a bigger hinder than help, especially on
    Windows and with MS Office. If your program exports data in tab or semicolon separated formats to be opened in a spreadsheet, or has some
    other connection to MS Office programs, you have to use the formats that
    the locale wants, not the formats the current user wants.

    That is so true. Localization in MS Office is a pain, and the different
    CSV formats are horrible.

    On my personal PC, I have set the decimal separator, with German
    settings otherwise, to a dot. This makes data interoperable
    with all sorts of scripts and other programs that I tend to use
    togetether with data from Excel files. Using tab as a separator works
    pretty well then, it is at least unique.

    I do have another computer, used as a workstation, which I keep
    on US English settings. This allows easier communication with,
    for example, international support for programs which originate
    outside of Germany. It also allows me to have the original Excel
    function names, which are also localized. Luckily, I can save
    an Excel file in English and than open it on my German-language
    computer in German.


    (LibreOffice
    is vastly more flexible.) Displaying a decimal point, decimal colon, or decimal apostrophe is not difficult - it is handling the imports and
    exports that is the challenge.

    I have not yet succeeded in getting LibreOffice to display a decimal
    point with German settings, and when I use US English I get inches
    for paper sizes :-(

    [...]

    --
    This USENET posting was made without artificial intelligence,
    artificial impertinence, artificial arrogance, artificial stupidity,
    artificial flavorings or artificial colorants.

    --- PyGate Linux v1.5.8
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From David Brown@3:633/10 to All on Saturday, January 31, 2026 12:50:42
    On 30/01/2026 21:28, Thomas Koenig wrote:
    David Brown <david.brown@hesbynett.no> schrieb:
    [...]


    IME, locale settings can be a bigger hinder than help, especially on
    Windows and with MS Office. If your program exports data in tab or
    semicolon separated formats to be opened in a spreadsheet, or has some
    other connection to MS Office programs, you have to use the formats that
    the locale wants, not the formats the current user wants.

    That is so true. Localization in MS Office is a pain, and the different
    CSV formats are horrible.

    On my personal PC, I have set the decimal separator, with German
    settings otherwise, to a dot. This makes data interoperable
    with all sorts of scripts and other programs that I tend to use
    togetether with data from Excel files. Using tab as a separator works
    pretty well then, it is at least unique.

    I do have another computer, used as a workstation, which I keep
    on US English settings. This allows easier communication with,
    for example, international support for programs which originate
    outside of Germany. It also allows me to have the original Excel
    function names, which are also localized. Luckily, I can save
    an Excel file in English and than open it on my German-language
    computer in German.


    (LibreOffice
    is vastly more flexible.) Displaying a decimal point, decimal colon, or
    decimal apostrophe is not difficult - it is handling the imports and
    exports that is the challenge.

    I have not yet succeeded in getting LibreOffice to display a decimal
    point with German settings, and when I use US English I get inches
    for paper sizes :-(


    Use UK settings, not US settings. Then at least you get sane paper
    sizes and measurement units.

    LibreOffice has its faults and weaknesses, but it is still far ahead of
    MS Office in many aspects. (Or perhaps "less terrible" is more accurate?)



    --- PyGate Linux v1.5.8
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From G@3:633/10 to All on Saturday, January 31, 2026 18:50:33
    In comp.lang.c David Brown <david.brown@hesbynett.no> wrote:
    On 30/01/2026 21:28, Thomas Koenig wrote:
    David Brown <david.brown@hesbynett.no> schrieb:
    [...]


    IME, locale settings can be a bigger hinder than help, especially on
    Windows and with MS Office. If your program exports data in tab or
    semicolon separated formats to be opened in a spreadsheet, or has some
    other connection to MS Office programs, you have to use the formats that >>> the locale wants, not the formats the current user wants.

    That is so true. Localization in MS Office is a pain, and the different
    CSV formats are horrible.

    On my personal PC, I have set the decimal separator, with German
    settings otherwise, to a dot. This makes data interoperable
    with all sorts of scripts and other programs that I tend to use
    togetether with data from Excel files. Using tab as a separator works
    pretty well then, it is at least unique.

    I do have another computer, used as a workstation, which I keep
    on US English settings. This allows easier communication with,
    for example, international support for programs which originate
    outside of Germany. It also allows me to have the original Excel
    function names, which are also localized. Luckily, I can save
    an Excel file in English and than open it on my German-language
    computer in German.


    (LibreOffice
    is vastly more flexible.) Displaying a decimal point, decimal colon, or >>> decimal apostrophe is not difficult - it is handling the imports and
    exports that is the challenge.

    I have not yet succeeded in getting LibreOffice to display a decimal
    point with German settings, and when I use US English I get inches
    for paper sizes :-(


    Use UK settings, not US settings. Then at least you get sane paper
    sizes and measurement units.

    and sane dates...

    LibreOffice has its faults and weaknesses, but it is still far ahead of
    MS Office in many aspects. (Or perhaps "less terrible" is more accurate?)

    --- PyGate Linux v1.5.8
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Gary Scott@3:633/10 to All on Saturday, January 31, 2026 16:10:38
    On 1/31/2026 12:50 PM, G wrote:
    In comp.lang.c David Brown <david.brown@hesbynett.no> wrote:
    On 30/01/2026 21:28, Thomas Koenig wrote:
    David Brown <david.brown@hesbynett.no> schrieb:
    [...]


    IME, locale settings can be a bigger hinder than help, especially on
    Windows and with MS Office. If your program exports data in tab or
    semicolon separated formats to be opened in a spreadsheet, or has some >>>> other connection to MS Office programs, you have to use the formats that >>>> the locale wants, not the formats the current user wants.

    That is so true. Localization in MS Office is a pain, and the different >>> CSV formats are horrible.

    On my personal PC, I have set the decimal separator, with German
    settings otherwise, to a dot. This makes data interoperable
    with all sorts of scripts and other programs that I tend to use
    togetether with data from Excel files. Using tab as a separator works
    pretty well then, it is at least unique.

    I do have another computer, used as a workstation, which I keep
    on US English settings. This allows easier communication with,
    for example, international support for programs which originate
    outside of Germany. It also allows me to have the original Excel
    function names, which are also localized. Luckily, I can save
    an Excel file in English and than open it on my German-language
    computer in German.


    (LibreOffice
    is vastly more flexible.) Displaying a decimal point, decimal colon, or >>>> decimal apostrophe is not difficult - it is handling the imports and
    exports that is the challenge.

    I have not yet succeeded in getting LibreOffice to display a decimal
    point with German settings, and when I use US English I get inches
    for paper sizes :-(


    Use UK settings, not US settings. Then at least you get sane paper
    sizes and measurement units.

    and sane dates...

    Date format is adjustable in many applications. Choose the one you
    want. Flexibility is taken to a bit extreme in GINO graphics libraries
    (a UK product), with a calendar that goes all the way back to 1066...:)


    LibreOffice has its faults and weaknesses, but it is still far ahead of
    MS Office in many aspects. (Or perhaps "less terrible" is more accurate?)


    --- PyGate Linux v1.5.8
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From ImperiusDamian@3:633/10 to All on Saturday, January 31, 2026 21:08:47
    On 1/31/2026 5:10 PM, Gary Scott wrote:

    Date format is adjustable in many applications.˙ Choose the one you
    want.˙ Flexibility is taken to a bit extreme in GINO graphics libraries
    (a UK product), with a calendar that goes all the way back to 1066...:)


    Is that all? Should be 927 at the very latest.


    --
    Maintainer of the Gemstone Mod (Official AGD2 Diablo 2 mod)

    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lawrence D?Oliveiro@3:633/10 to All on Sunday, February 01, 2026 09:06:02
    On Sat, 31 Jan 2026 16:10:38 -0600, Gary Scott wrote:

    Flexibility is taken to a bit extreme in GINO graphics libraries (a
    UK product), with a calendar that goes all the way back to 1066...:)

    ldo@theon:~> date -d "1-Jan-1066"
    Mon 01 Jan 1066 00:00:00 LMT
    ldo@theon:~> date -d "1-Jan-966"
    Wed 01 Jan 0966 00:00:00 LMT
    ldo@theon:~> date -d "1-Jan-866"
    Fri 01 Jan 0866 00:00:00 LMT

    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Thomas Koenig@3:633/10 to All on Sunday, February 01, 2026 09:42:34
    David Brown <david.brown@hesbynett.no> schrieb:
    On 30/01/2026 21:28, Thomas Koenig wrote:

    I have not yet succeeded in getting LibreOffice to display a decimal
    point with German settings, and when I use US English I get inches
    for paper sizes :-(


    Use UK settings, not US settings. Then at least you get sane paper
    sizes and measurement units.

    That is better, thanks!


    LibreOffice has its faults and weaknesses, but it is still far ahead of
    MS Office in many aspects. (Or perhaps "less terrible" is more accurate?)

    I find Impress to be very difficult to work with, compared to
    PowerPoint. But the most recent thing that drove me up the wall
    was Excel's inability to display a bar graph with non-overlapping
    bars for a primary and secondary axis, so I can display data like

    a 2 0.1
    b 3 0.3
    c 5 0.2

    in a sane way. Libreoffice Calc can actually do this.
    --
    This USENET posting was made without artificial intelligence,
    artificial impertinence, artificial arrogance, artificial stupidity,
    artificial flavorings or artificial colorants.

    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From David Brown@3:633/10 to All on Sunday, February 01, 2026 11:18:08
    On 31/01/2026 23:10, Gary Scott wrote:
    On 1/31/2026 12:50 PM, G wrote:
    In comp.lang.c David Brown <david.brown@hesbynett.no> wrote:
    On 30/01/2026 21:28, Thomas Koenig wrote:

    I have not yet succeeded in getting LibreOffice to display a decimal
    point with German settings, and when I use US English I get inches
    for paper sizes :-(


    Use UK settings, not US settings.˙ Then at least you get sane paper
    sizes and measurement units.

    and sane dates...

    Indeed. Some countries use little-endian dates, some use big-endian
    dates, and one country likes muddled-endian dates :-)


    Date format is adjustable in many applications.˙ Choose the one you
    want.˙ Flexibility is taken to a bit extreme in GINO graphics libraries
    (a UK product), with a calendar that goes all the way back to 1066...:)


    Dates from long ago can be very important, and challenging to get right.
    But I doubt that there is a lot of overlap between people interested
    in programming with graphics libraries and people trying to match up
    exact dates a millennium ago!

    (In the MS Office vs. LibreOffice comparison, Excel famously thinks 1900
    was a leap year. And rather than fix the problem, MS bullied it in as
    an ISO standard.)


    LibreOffice has its faults and weaknesses, but it is still far ahead of
    MS Office in many aspects.˙ (Or perhaps "less terrible" is more
    accurate?)



    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From David Brown@3:633/10 to All on Sunday, February 01, 2026 11:35:46
    On 01/02/2026 10:42, Thomas Koenig wrote:
    David Brown <david.brown@hesbynett.no> schrieb:
    On 30/01/2026 21:28, Thomas Koenig wrote:

    I have not yet succeeded in getting LibreOffice to display a decimal
    point with German settings, and when I use US English I get inches
    for paper sizes :-(


    Use UK settings, not US settings. Then at least you get sane paper
    sizes and measurement units.

    That is better, thanks!

    I fully understand why many people from non-English-speaking countries sometimes find it best to have an English locale or language settings on
    their systems. But I have never understood why they pick US English for
    the purpose. Despite the Brexit madness, UK standards are far closer to European norms than the US standards are. And for many purposes, those
    norms are nearly global - the US is the only one that is different.
    (Although for dates, China and Japan and a few other countries use YMD ordering daily, while most of the world only uses it for more technical documents.)


    LibreOffice has its faults and weaknesses, but it is still far ahead of
    MS Office in many aspects. (Or perhaps "less terrible" is more accurate?)

    I find Impress to be very difficult to work with, compared to
    PowerPoint.

    From my limited experience in that area, I agree - PowerPoint is the
    one part of MS Office that is a lot better than LibreOffice.

    But the most recent thing that drove me up the wall
    was Excel's inability to display a bar graph with non-overlapping
    bars for a primary and secondary axis, so I can display data like

    a 2 0.1
    b 3 0.3
    c 5 0.2

    in a sane way. Libreoffice Calc can actually do this.

    Another difference I have seen is in graphs with some missing data.
    Excel fills in the gaps with 0, while LibreOffice draws the graphs with appropriate gaps.


    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Gary Scott@3:633/10 to All on Sunday, February 01, 2026 08:28:19
    On 2/1/2026 4:18 AM, David Brown wrote:
    On 31/01/2026 23:10, Gary Scott wrote:
    On 1/31/2026 12:50 PM, G wrote:
    In comp.lang.c David Brown <david.brown@hesbynett.no> wrote:
    On 30/01/2026 21:28, Thomas Koenig wrote:

    I have not yet succeeded in getting LibreOffice to display a decimal >>>>> point with German settings, and when I use US English I get inches
    for paper sizes :-(


    Use UK settings, not US settings.˙ Then at least you get sane paper
    sizes and measurement units.

    and sane dates...

    Indeed.˙ Some countries use little-endian dates, some use big-endian
    dates, and one country likes muddled-endian dates :-)


    Date format is adjustable in many applications.˙ Choose the one you
    want.˙ Flexibility is taken to a bit extreme in GINO graphics
    libraries (a UK product), with a calendar that goes all the way back
    to 1066...:)


    Dates from long ago can be very important, and challenging to get right.
    ˙But I doubt that there is a lot of overlap between people interested
    in programming with graphics libraries and people trying to match up
    exact dates a millennium ago!

    It's part of the graphing/charting library. It's targeted at engineers/scientists/academics.


    (In the MS Office vs. LibreOffice comparison, Excel famously thinks 1900
    was a leap year.˙ And rather than fix the problem, MS bullied it in as
    an ISO standard.)


    LibreOffice has its faults and weaknesses, but it is still far ahead of >>>> MS Office in many aspects.˙ (Or perhaps "less terrible" is more
    accurate?)




    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From James Kuyper@3:633/10 to All on Sunday, February 01, 2026 12:21:38
    On 2026-02-01 05:35, David Brown wrote:
    ...
    I fully understand why many people from non-English-speaking countries sometimes find it best to have an English locale or language settings on their systems. But I have never understood why they pick US English for
    the purpose. Despite the Brexit madness, UK standards are far closer to European norms than the US standards are. And for many purposes, those norms are nearly global - the US is the only one that is different.
    Because the US is fairly big, and has economic power disproportionate to
    it's size, so it's peculiarities get catered to more often than might
    otherwise seem justified. I am a US citizen, but I'm not endorsing this,
    merely describing it.

    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From David Brown@3:633/10 to All on Sunday, February 01, 2026 23:01:32
    On 01/02/2026 18:21, James Kuyper wrote:
    On 2026-02-01 05:35, David Brown wrote:
    ...
    I fully understand why many people from non-English-speaking countries
    sometimes find it best to have an English locale or language settings on
    their systems. But I have never understood why they pick US English for
    the purpose. Despite the Brexit madness, UK standards are far closer to
    European norms than the US standards are. And for many purposes, those
    norms are nearly global - the US is the only one that is different.
    Because the US is fairly big, and has economic power disproportionate to
    it's size, so it's peculiarities get catered to more often than might otherwise seem justified. I am a US citizen, but I'm not endorsing this, merely describing it.

    Sure - the US has a lot of influence on the rest of the world for a
    great many reasons (some good, some bad, with that judgement being
    highly subjective). We are using a protocol written in the USA,
    transported over a network system developed (at least initially) in the
    USA, to discuss a programming language from the USA. I've no problem
    with that.

    But when people in other countries want to choose an English language environment (because English has a lot of influence on the world - for
    good reasons and bad reasons), why pick an environment that has more incompatibilities and baggage than necessary? I expect it is mostly a
    matter of sticking to default choices unless you know you need something different, and simply not thinking about the alternatives.


    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From James Kuyper@3:633/10 to All on Sunday, February 01, 2026 19:11:35
    On 2026-02-01 17:01, David Brown wrote:
    ...
    But when people in other countries want to choose an English language environment (because English has a lot of influence on the world - for
    good reasons and bad reasons), why pick an environment that has more incompatibilities and baggage than necessary? I expect it is mostly a
    matter of sticking to default choices unless you know you need
    something different, and simply not thinking about the alternatives.

    The US has three times as many native speakers of English than the
    entire rest of the world combined, including the entire British
    Commonwealth. When someone from a non-English speaking country sets up
    an English compatible environment, there's a pretty good chance he's
    doing so to communicate with people in the US, rather than other parts
    of English-speaking world.



    --- PyGate Linux v1.5.10
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lawrence D?Oliveiro@3:633/10 to All on Monday, February 02, 2026 04:31:40
    On Sun, 1 Feb 2026 19:11:35 -0500, James Kuyper wrote:

    The US has three times as many native speakers of English than the
    entire rest of the world combined, including the entire British
    Commonwealth.

    But they?re almost all concentrated in one place.

    This is like the issue with Mandarin, which has more speakers than
    English, but they are largely confined to one country.

    British English (and its offshoots) remain the most widely spoken
    language, not purely by numbers, but by sheer distribution.

    --- PyGate Linux v1.5.11
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)