From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on ip-172-31-65-14.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-1.9 required=3.0 tests=BAYES_00,FREEMAIL_FROM, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 Path: eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Blady Newsgroups: comp.lang.ada Subject: [ANN] Release of UXStrings 0.5.0 Date: Fri, 5 May 2023 05:36:42 +0200 Organization: A noiseless patient Spider Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Fri, 5 May 2023 03:36:42 -0000 (UTC) Injection-Info: dont-email.me; posting-host="ad364dd2239aa4d2eb3bc512e0257a2d"; logging-data="2314014"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18hVOV7VfvhtkPIIlxJ3iM1" User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Cancel-Lock: sha1:jAfdMgcq/7kH3MhDIeUPys6HdxA= Content-Language: fr, en-US Xref: news.eternal-september.org comp.lang.ada:65170 List-Id: This Ada library, providing Unicode character strings of dynamic length, is enriched by a third implementation: UXStrings3 [1] also available on Alire [2]. With this latter implementation, the characters are stored in Unicode form and the management of dynamic size uses the standard Wide_Wide_Unbounded strings library. Performance with Gnoga [3] is better. UXStrings2 already brought better performance in the case of strings only made up of ASCII characters (improvement by a factor 2 to 3 compared to UXStrings1). With UXStrings3 performance in the latter case is still improved (factor 6 to 7 compared to UXStrings1) moreover in the case of strings accentuated in French and strings containing emojis the process times are also improved (factor 7 to 8 by compared to UXStrings1 or even more in the case of emojis). For all cases, the global memory occupation of the Gnoga application is generally similar (9 to 10 Mb). The memory occupation due to UXStrings3 is negligible compared to the memory occupation of the server engine implemented in Gnoga. Study case: AdaEdit application using the Gnoga graphics library with UTF-8 files: English 315 kb French: 447 kb Emojis: 439 kb Process: read all lines of the given file and display the full text Regardless of the implementation chosen, the appealing of a library is mainly based on the capabilities it offers (API). So far in UXStrings, these are similar to those of the strings Ada standard libraries. If you find some missing, make your proposals on Github [4]. Pascal. [1] https://github.com/Blady-Com/UXStrings/blob/master/src/uxstrings3.ads [2] https://alire.ada.dev/crates/uxstrings.html [3] https://sourceforge.net/projects/gnoga [4] https://github.com/Blady-Com/UXStrings/issues