Re: [R] Weird and changed as.roman() behavior

2025-01-17 Thread Richard O'Keefe
"Roman numerals" is actually a tricky subject, since there were different versions at different times. It is worth noting that the Unicode character set (and R does support Unicode, does it not?) includes the Roman numeral characters for 5,000 10,000 50,000 and 100,000 so the idea that 3999 is an a

Re: [R] Weird and changed as.roman() behavior

2025-01-16 Thread Jani Välimaa
On Wed, 15 Jan 2025 11:41:34 +0100 Martin Maechler wrote: > > Jani V?limaa > > on Tue, 14 Jan 2025 20:39:19 +0200 writes: > > > Hello, > > I don't know what's changed or how to figure out why as.roman() started > > to work different way lately on Mageia Cauldron. Cauldr

Re: [R] Weird and changed as.roman() behavior

2025-01-16 Thread Martin Maechler
> Martin Maechler > on Thu, 16 Jan 2025 12:04:44 +0100 writes: [..] > But there's more: our current help page > https://search.r-project.org/R/refmans/utils/html/roman.html > says >> Only numbers between 1 and 3999 have a unique representation >> as

Re: [R] Weird and changed as.roman() behavior

2025-01-16 Thread Martin Maechler
> Stephanie Evert > on Wed, 15 Jan 2025 13:18:03 +0100 writes: > Well, the real issue then seems to be that .roman2numeric uses an invalid regular expression: >>> grepl("^M{,3}D?C{,4}L?X{,4}V?I{,4}$", cc) >> [1] TRUE TRUE TRUE TRUE TRUE > or >>> grepl("^I{,2}$"

Re: [R] Weird and changed as.roman() behavior

2025-01-15 Thread Stephanie Evert
Well, the real issue then seems to be that .roman2numeric uses an invalid regular expression: >> grepl("^M{,3}D?C{,4}L?X{,4}V?I{,4}$", cc) > [1] TRUE TRUE TRUE TRUE TRUE or >> grepl("^I{,2}$", c("II", "III", "")) > [1] TRUE TRUE FALSE Both the TRE and the PCRE specification only allow

Re: [R] Weird and changed as.roman() behavior

2025-01-15 Thread Martin Maechler
> Jani Välimaa > on Tue, 14 Jan 2025 20:39:19 +0200 writes: > Hello, > I don't know what's changed or how to figure out why as.roman() started > to work different way lately on Mageia Cauldron. Cauldron is the > latest development version of Mageia Linux. > Expect

[R] Weird and changed as.roman() behavior

2025-01-15 Thread Jani Välimaa
Hello, I don't know what's changed or how to figure out why as.roman() started to work different way lately on Mageia Cauldron. Cauldron is the latest development version of Mageia Linux. Expected bahavior: > as.roman(strrep("I", 1:5)) [1] I II III IV V Current behavior: > as.roman(strrep(