Re: "ICU - International Components for Unicode"
Rakudo does not use ICU It used to though. Rakudo used to run on Parrot. Parrot used ICU for its Unicode features. (Well maybe the JVM backend does currently, I don't actually know.) MoarVM just has Unicode as one of its features. Basically it has something similar to ICU already. --- The purpose of ICU is to be able to add Unicode abilities to systems that don't already have them. As such, it does not really make sense to add support for the ICU library in Raku as I don't think it adds anything that isn't already present. If there is some feature that ICU has that Raku doesn't then it would make more sense to add that feature directly to Raku itself. On Thu, Sep 24, 2020 at 2:15 PM William Michels via perl6-users < perl6-us...@perl.org> wrote: > Thanks everyone for the replies. I guess the two questions I have > pertain mainly to 1) lineage and 2) versioning: > > Regarding lineage, I'm interested in knowing if > Pugs/Parrot/Niecza/STD/Perlito/viv/JVM/Rakudo ever used the ICU > Libraries--even if now that data has been extracted into a Raku-native > data structure. I'm fairly certain one principal Rakudo developer is a > C++ expert, so this idea isn't too far fetched. > > Regarding versioning, it would be great to tell people that Raku > conforms to the latest-and-greatest ICU Library version, currently > sitting at version# ICU_67. That way when people are weighing Raku vs > Ruby or Python or Haskell or Go, we can tell them "Raku v6.d extracts > ICU_67 thus it conforms to the most current (and most widely accepted) > Unicode Library release (ICU 67 / CLDR 37 locale data / Unicode 13)." > I've read over Daniel's blog post but I don't recall explicit mention > of Unicode version 12, or 13, etc., although it does seem that > following his links takes you to references for Unicode 13.0.0 (see > https://www.unicode.org/reports/tr44/). Does Rakudo roll it's own UCD? > Is there no reliance on ICU? > > Anyway, If Daniel or Samantha or Joseph or Liz can confirm/refute > Raku's use of the (widely-adopted) ICU C-Library and/or Java-Library, > I will have learned something. > > Thanks, Bill. > > http://site.icu-project.org/download/67 > > "ICU 67 updates to CLDR 37 locale data with many additions and > corrections. This release also includes the updates to Unicode 13, > subsuming the special CLDR 36.1 and ICU 66 releases. ICU 67 includes > many bug fixes for date and number formatting, including enhanced > support for user preferences in the locale identifier. The > LocaleMatcher code and data are improved, and number skeletons have a > new “concise” form that can be used in MessageFormat strings. This is > the first regular release after ICU 65. ICU 66 was a low-impact > release with just Unicode 13 and a few bug fixes." > > > Library/Language support for ICU: > > Objective C CocoaICU A set of Objective-C classes that encapsulate parts > of ICU. > C# GenICUWrapper A tool that generates a rudimentary C# wrapper around > the C API of ICU4C. This could be used to generate headers for other > ICU wrappers. > C# ICU Dotnet - .NET bindings for ICU > D Mango.icu is a set of wrappers for the D programming language > Erlang icu4e is a set of bindings for Erlang to ICU4C > Cobol COBOL A page on how ICU could be used from a COBOL application. > Go icu4go provides a Go binding for the icu4c library > Haskell Data.Text.ICU Haskell bindings for ICU4C. > Lua ICU-Lua ICU for the Lua language > Pascal ICU4PAS An Object Pascal wrapper around ICU4C. > Perl PICU Perl wrapper for ICU > PHP PHP intl A PHP wrapper around core ICU4C APIs. > Python PyICU A Python extension wrapper around ICU4C. > R stringi An R language wrapper of for ICU4C. > Ruby icu4r ICU4C binding for MRI ruby. > Smalltalk VA Smalltalk Wrappers > Parrot Virtual Machine This is a virtual machine for Perl 6 and other > various programming languages. ICU4C is used to improve the Unicode > support. > PHP The upcoming PHP 6 language is expected to support Unicode through > ICU4C. > > Companies and Organizations using ICU: > > ABAS Software, Adobe, Amazon (Kindle), Amdocs, Apache, Appian, Apple, > Argonne National Laboratory, Avaya, BAE Systems Geospatial > eXploitation Products, BEA, BluePhoenix Solutions, BMC Software, > Boost, BroadJump, Business Objects, caris, CERN, CouchDB, Debian > Linux, Dell, Eclipse, eBay, EMC Corporation, ESRI, Facebook (HHVM), > Firebird RDBMS, FreeBSD, Gentoo Linux, Google, GroundWork Open Source, > GTK+, Harman/Becker Automotive Systems GmbH, HP, Hyperion, IBM, > Inktomi, Innodata Isogen, Informatica, Intel, Interlogics, IONA, IXOS, > Jikes, Library of Congress, LibreOffice, Mathworks, Microsoft, > Mozilla, Netezza, Node.js, Oracle (Solaris, Java), Lawson Software, > Leica Geosystems GIS & Mapping LLC, Mandrake Linux, OCLC, Progress > Software, Python, QNX, Rogue Wave, SAP, SIL, SPSS, Software AG, SuSE, > Sybase, Symantec, Teradata (NCR), ToolAware, Trend Micro, Virage, > webMethods, Wine, WMS Gaming, XyEnterprise, Yahoo!, Vuo, and
Re: "ICU - International Components for Unicode"
I think more to the point is which version of Unicode is supported, rather than the ICU libraries. It might be worth writing some tests that check that Raku's unicode handling matches the ICU libraries. On 9/24/20, William Michels wrote: > Thanks everyone for the replies. I guess the two questions I have > pertain mainly to 1) lineage and 2) versioning: > > Regarding lineage, I'm interested in knowing if > Pugs/Parrot/Niecza/STD/Perlito/viv/JVM/Rakudo ever used the ICU > Libraries--even if now that data has been extracted into a Raku-native > data structure. I'm fairly certain one principal Rakudo developer is a > C++ expert, so this idea isn't too far fetched. > > Regarding versioning, it would be great to tell people that Raku > conforms to the latest-and-greatest ICU Library version, currently > sitting at version# ICU_67. That way when people are weighing Raku vs > Ruby or Python or Haskell or Go, we can tell them "Raku v6.d extracts > ICU_67 thus it conforms to the most current (and most widely accepted) > Unicode Library release (ICU 67 / CLDR 37 locale data / Unicode 13)." > I've read over Daniel's blog post but I don't recall explicit mention > of Unicode version 12, or 13, etc., although it does seem that > following his links takes you to references for Unicode 13.0.0 (see > https://www.unicode.org/reports/tr44/). Does Rakudo roll it's own UCD? > Is there no reliance on ICU? > > Anyway, If Daniel or Samantha or Joseph or Liz can confirm/refute > Raku's use of the (widely-adopted) ICU C-Library and/or Java-Library, > I will have learned something. > > Thanks, Bill. > > http://site.icu-project.org/download/67 > > "ICU 67 updates to CLDR 37 locale data with many additions and > corrections. This release also includes the updates to Unicode 13, > subsuming the special CLDR 36.1 and ICU 66 releases. ICU 67 includes > many bug fixes for date and number formatting, including enhanced > support for user preferences in the locale identifier. The > LocaleMatcher code and data are improved, and number skeletons have a > new “concise” form that can be used in MessageFormat strings. This is > the first regular release after ICU 65. ICU 66 was a low-impact > release with just Unicode 13 and a few bug fixes." > > > Library/Language support for ICU: > > Objective C CocoaICU A set of Objective-C classes that encapsulate parts of > ICU. > C# GenICUWrapper A tool that generates a rudimentary C# wrapper around > the C API of ICU4C. This could be used to generate headers for other > ICU wrappers. > C# ICU Dotnet - .NET bindings for ICU > D Mango.icu is a set of wrappers for the D programming language > Erlang icu4e is a set of bindings for Erlang to ICU4C > Cobol COBOL A page on how ICU could be used from a COBOL application. > Go icu4go provides a Go binding for the icu4c library > Haskell Data.Text.ICU Haskell bindings for ICU4C. > Lua ICU-Lua ICU for the Lua language > Pascal ICU4PAS An Object Pascal wrapper around ICU4C. > Perl PICU Perl wrapper for ICU > PHP PHP intl A PHP wrapper around core ICU4C APIs. > Python PyICU A Python extension wrapper around ICU4C. > R stringi An R language wrapper of for ICU4C. > Ruby icu4r ICU4C binding for MRI ruby. > Smalltalk VA Smalltalk Wrappers > Parrot Virtual Machine This is a virtual machine for Perl 6 and other > various programming languages. ICU4C is used to improve the Unicode > support. > PHP The upcoming PHP 6 language is expected to support Unicode through > ICU4C. > > Companies and Organizations using ICU: > > ABAS Software, Adobe, Amazon (Kindle), Amdocs, Apache, Appian, Apple, > Argonne National Laboratory, Avaya, BAE Systems Geospatial > eXploitation Products, BEA, BluePhoenix Solutions, BMC Software, > Boost, BroadJump, Business Objects, caris, CERN, CouchDB, Debian > Linux, Dell, Eclipse, eBay, EMC Corporation, ESRI, Facebook (HHVM), > Firebird RDBMS, FreeBSD, Gentoo Linux, Google, GroundWork Open Source, > GTK+, Harman/Becker Automotive Systems GmbH, HP, Hyperion, IBM, > Inktomi, Innodata Isogen, Informatica, Intel, Interlogics, IONA, IXOS, > Jikes, Library of Congress, LibreOffice, Mathworks, Microsoft, > Mozilla, Netezza, Node.js, Oracle (Solaris, Java), Lawson Software, > Leica Geosystems GIS & Mapping LLC, Mandrake Linux, OCLC, Progress > Software, Python, QNX, Rogue Wave, SAP, SIL, SPSS, Software AG, SuSE, > Sybase, Symantec, Teradata (NCR), ToolAware, Trend Micro, Virage, > webMethods, Wine, WMS Gaming, XyEnterprise, Yahoo!, Vuo, and many > others. > > > On Thu, Sep 24, 2020 at 11:14 AM Joseph Brenner wrote: >> >> Elizabeth Mattijsen wrote: >> > https://www.codesections.com/blog/raku-unicode/ >> >> Thanks, yes I was just reading through that. It makes it clear that >> the "Unicode Character Database" is built-in to the MoarVM, but I'm >> not that clear what the ICU libraries do for you, and I thought there >> might be some point in using them for something or other. >> >> >> On 9/24/20, Elizabeth Mattijsen wrote: >> >
Re: "ICU - International Components for Unicode"
Thanks everyone for the replies. I guess the two questions I have pertain mainly to 1) lineage and 2) versioning: Regarding lineage, I'm interested in knowing if Pugs/Parrot/Niecza/STD/Perlito/viv/JVM/Rakudo ever used the ICU Libraries--even if now that data has been extracted into a Raku-native data structure. I'm fairly certain one principal Rakudo developer is a C++ expert, so this idea isn't too far fetched. Regarding versioning, it would be great to tell people that Raku conforms to the latest-and-greatest ICU Library version, currently sitting at version# ICU_67. That way when people are weighing Raku vs Ruby or Python or Haskell or Go, we can tell them "Raku v6.d extracts ICU_67 thus it conforms to the most current (and most widely accepted) Unicode Library release (ICU 67 / CLDR 37 locale data / Unicode 13)." I've read over Daniel's blog post but I don't recall explicit mention of Unicode version 12, or 13, etc., although it does seem that following his links takes you to references for Unicode 13.0.0 (see https://www.unicode.org/reports/tr44/). Does Rakudo roll it's own UCD? Is there no reliance on ICU? Anyway, If Daniel or Samantha or Joseph or Liz can confirm/refute Raku's use of the (widely-adopted) ICU C-Library and/or Java-Library, I will have learned something. Thanks, Bill. http://site.icu-project.org/download/67 "ICU 67 updates to CLDR 37 locale data with many additions and corrections. This release also includes the updates to Unicode 13, subsuming the special CLDR 36.1 and ICU 66 releases. ICU 67 includes many bug fixes for date and number formatting, including enhanced support for user preferences in the locale identifier. The LocaleMatcher code and data are improved, and number skeletons have a new “concise” form that can be used in MessageFormat strings. This is the first regular release after ICU 65. ICU 66 was a low-impact release with just Unicode 13 and a few bug fixes." Library/Language support for ICU: Objective C CocoaICU A set of Objective-C classes that encapsulate parts of ICU. C# GenICUWrapper A tool that generates a rudimentary C# wrapper around the C API of ICU4C. This could be used to generate headers for other ICU wrappers. C# ICU Dotnet - .NET bindings for ICU D Mango.icu is a set of wrappers for the D programming language Erlang icu4e is a set of bindings for Erlang to ICU4C Cobol COBOL A page on how ICU could be used from a COBOL application. Go icu4go provides a Go binding for the icu4c library Haskell Data.Text.ICU Haskell bindings for ICU4C. Lua ICU-Lua ICU for the Lua language Pascal ICU4PAS An Object Pascal wrapper around ICU4C. Perl PICU Perl wrapper for ICU PHP PHP intl A PHP wrapper around core ICU4C APIs. Python PyICU A Python extension wrapper around ICU4C. R stringi An R language wrapper of for ICU4C. Ruby icu4r ICU4C binding for MRI ruby. Smalltalk VA Smalltalk Wrappers Parrot Virtual Machine This is a virtual machine for Perl 6 and other various programming languages. ICU4C is used to improve the Unicode support. PHP The upcoming PHP 6 language is expected to support Unicode through ICU4C. Companies and Organizations using ICU: ABAS Software, Adobe, Amazon (Kindle), Amdocs, Apache, Appian, Apple, Argonne National Laboratory, Avaya, BAE Systems Geospatial eXploitation Products, BEA, BluePhoenix Solutions, BMC Software, Boost, BroadJump, Business Objects, caris, CERN, CouchDB, Debian Linux, Dell, Eclipse, eBay, EMC Corporation, ESRI, Facebook (HHVM), Firebird RDBMS, FreeBSD, Gentoo Linux, Google, GroundWork Open Source, GTK+, Harman/Becker Automotive Systems GmbH, HP, Hyperion, IBM, Inktomi, Innodata Isogen, Informatica, Intel, Interlogics, IONA, IXOS, Jikes, Library of Congress, LibreOffice, Mathworks, Microsoft, Mozilla, Netezza, Node.js, Oracle (Solaris, Java), Lawson Software, Leica Geosystems GIS & Mapping LLC, Mandrake Linux, OCLC, Progress Software, Python, QNX, Rogue Wave, SAP, SIL, SPSS, Software AG, SuSE, Sybase, Symantec, Teradata (NCR), ToolAware, Trend Micro, Virage, webMethods, Wine, WMS Gaming, XyEnterprise, Yahoo!, Vuo, and many others. On Thu, Sep 24, 2020 at 11:14 AM Joseph Brenner wrote: > > Elizabeth Mattijsen wrote: > > https://www.codesections.com/blog/raku-unicode/ > > Thanks, yes I was just reading through that. It makes it clear that > the "Unicode Character Database" is built-in to the MoarVM, but I'm > not that clear what the ICU libraries do for you, and I thought there > might be some point in using them for something or other. > > > On 9/24/20, Elizabeth Mattijsen wrote: > > https://www.codesections.com/blog/raku-unicode/ > > > >> On 24 Sep 2020, at 20:00, Joseph Brenner wrote: > >> > >> I'm not sure myself, but my first guess would be probably not...I > >> *think* Raku is doing it's own Unicode thing, and isn't using any > >> system ICU libraries (but I'm willing to stand corrected on that). > >> > >> As far as perl (the-language-formerly-known-as-perl5) is concerned: > >> > >> That page
Re: New type Stash for Block is not a mixin type
Feels like a regression worthy of a Rakudo issue > On 24 Sep 2020, at 20:26, Fernando Santagata > wrote: > > Hello, > > Since I upgraded to the last Rakudo I'am having a weird problem. I have a > module like this: > > unit class Class1; > etc. > > Then a second module: > > unit class Class2; > use Class1; > etc. > > In a program I need both modules, so it begins with two lines: > > use Class1; > use Class2; > etc. > > At this point if I run the program I get this error: > > New type Stash for Block is not a mixin type > > pointing to the line of code that uses Class2. If I remove the "use Class1" > line, that program works fine. > But it bugs me, because I don't understand that behavior. > > Any hint? > The whole thing worked fine using version 2020.07. > > -- > Fernando Santagata
New type Stash for Block is not a mixin type
Hello, Since I upgraded to the last Rakudo I'am having a weird problem. I have a module like this: unit class Class1; etc. Then a second module: unit class Class2; use Class1; etc. In a program I need both modules, so it begins with two lines: use Class1; use Class2; etc. At this point if I run the program I get this error: New type Stash for Block is not a mixin type pointing to the line of code that uses Class2. If I remove the "use Class1" line, that program works fine. But it bugs me, because I don't understand that behavior. Any hint? The whole thing worked fine using version 2020.07. -- Fernando Santagata
Re: "ICU - International Components for Unicode"
Elizabeth Mattijsen wrote: > https://www.codesections.com/blog/raku-unicode/ Thanks, yes I was just reading through that. It makes it clear that the "Unicode Character Database" is built-in to the MoarVM, but I'm not that clear what the ICU libraries do for you, and I thought there might be some point in using them for something or other. On 9/24/20, Elizabeth Mattijsen wrote: > https://www.codesections.com/blog/raku-unicode/ > >> On 24 Sep 2020, at 20:00, Joseph Brenner wrote: >> >> I'm not sure myself, but my first guess would be probably not...I >> *think* Raku is doing it's own Unicode thing, and isn't using any >> system ICU libraries (but I'm willing to stand corrected on that). >> >> As far as perl (the-language-formerly-known-as-perl5) is concerned: >> >> That page http://site.icu-project.org/related is a little strange in >> any case. If you follow the links for "perl" it goes to J. Briggs >> personal web page, and if you comb through that there's a link to his >> PICU just in tarball form. He has a CPAN account, but doesn't seem to >> have put this code there. >> >> (On the other hand there's this cpan module that uses the system icu >> libraries: https://metacpan.org/pod/Unicode::Transliterate) >> >> Anyway, I don't think perl has an ICU dependency either, it does it's >> own unicode thing as well (i.e. the Unicode "database" ships with it). >> >> >> On 9/24/20, William Michels wrote: >>> Hi, >>> >>> I stumbled across the "ICU - International Components for Unicode" >>> website: >>> >>> http://site.icu-project.org/ >>> https://github.com/unicode-org/icu >>> >>> There's a list of programming languages using the ICU libraries here: >>> >>> http://site.icu-project.org/related >>> >>> Should Raku be added to the list above? >>> I see Perl and Parrot listed, but not Raku. >>> >>> Best, Bill. >>> >
Re: "ICU - International Components for Unicode"
https://www.codesections.com/blog/raku-unicode/ > On 24 Sep 2020, at 20:00, Joseph Brenner wrote: > > I'm not sure myself, but my first guess would be probably not...I > *think* Raku is doing it's own Unicode thing, and isn't using any > system ICU libraries (but I'm willing to stand corrected on that). > > As far as perl (the-language-formerly-known-as-perl5) is concerned: > > That page http://site.icu-project.org/related is a little strange in > any case. If you follow the links for "perl" it goes to J. Briggs > personal web page, and if you comb through that there's a link to his > PICU just in tarball form. He has a CPAN account, but doesn't seem to > have put this code there. > > (On the other hand there's this cpan module that uses the system icu > libraries: https://metacpan.org/pod/Unicode::Transliterate) > > Anyway, I don't think perl has an ICU dependency either, it does it's > own unicode thing as well (i.e. the Unicode "database" ships with it). > > > On 9/24/20, William Michels wrote: >> Hi, >> >> I stumbled across the "ICU - International Components for Unicode" website: >> >> http://site.icu-project.org/ >> https://github.com/unicode-org/icu >> >> There's a list of programming languages using the ICU libraries here: >> >> http://site.icu-project.org/related >> >> Should Raku be added to the list above? >> I see Perl and Parrot listed, but not Raku. >> >> Best, Bill. >>
Re: "ICU - International Components for Unicode"
I'm not sure myself, but my first guess would be probably not...I *think* Raku is doing it's own Unicode thing, and isn't using any system ICU libraries (but I'm willing to stand corrected on that). As far as perl (the-language-formerly-known-as-perl5) is concerned: That page http://site.icu-project.org/related is a little strange in any case. If you follow the links for "perl" it goes to J. Briggs personal web page, and if you comb through that there's a link to his PICU just in tarball form. He has a CPAN account, but doesn't seem to have put this code there. (On the other hand there's this cpan module that uses the system icu libraries: https://metacpan.org/pod/Unicode::Transliterate) Anyway, I don't think perl has an ICU dependency either, it does it's own unicode thing as well (i.e. the Unicode "database" ships with it). On 9/24/20, William Michels wrote: > Hi, > > I stumbled across the "ICU - International Components for Unicode" website: > > http://site.icu-project.org/ > https://github.com/unicode-org/icu > > There's a list of programming languages using the ICU libraries here: > > http://site.icu-project.org/related > > Should Raku be added to the list above? > I see Perl and Parrot listed, but not Raku. > > Best, Bill. >
"ICU - International Components for Unicode"
Hi, I stumbled across the "ICU - International Components for Unicode" website: http://site.icu-project.org/ https://github.com/unicode-org/icu There's a list of programming languages using the ICU libraries here: http://site.icu-project.org/related Should Raku be added to the list above? I see Perl and Parrot listed, but not Raku. Best, Bill.
Get help for your projects during hacktoberfest
Hi, Hacktoberfest is coming, https://hacktoberfest.digitalocean.com/, and lots of people will be running around looking for PRs to get their tees. Let's try and help them by creating a page with specific issues that we have created specifically to be easy to PR for newcomers to Raku. Here's what you need to do 1. Look up or create newcomer-friendly issue(s) in the repos. By newcomer-friendly I don't only mean they need to be easy, also that they need to include all the context needed to solve them: links to the CONTRIBUTING.md file, pointers to module and language documentation, even pointers to tutorials or articles that might be useful. These can very well be *special* issues, that is, issues created only with that specific purpose. Possibly, also, issues that can be "solved" several times so that you don't need to close it when the first PR arrives. 2. Label it "hacktoberfest" 3. Send a PR here https://github.com/Raku/hacktoberfest to get it included into the webpage that we have created. 4. If you get a PR, react immediately and helpfully to it. Let's try to show, with this, how friendly and welcoming the Raku community is, and also attract interest and new coders to the language. Cheers -- JJ