utf8
UTF-8 support for Nix (by figsoda)
uni-algo
Unicode Algorithms Implementation for C/C++ (by uni-algo)
utf8 | uni-algo | |
---|---|---|
3 | 4 | |
50 | 248 | |
- | 3.2% | |
5.2 | 8.9 | |
6 days ago | 5 months ago | |
Nix | C++ | |
Mozilla Public License 2.0 | GNU General Public License v3.0 or later |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
utf8
Posts with mentions or reviews of utf8.
We have used some of these posts to build our list of alternatives
and similar projects.
uni-algo
Posts with mentions or reviews of uni-algo.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-07-07.
- uni-algo: Unicode Algorithms Implementation for C/C++
-
uni-algo v0.7.0: constexpr Unicode library and some talk about C++ safety
Safe layer is just bounds checks that work in all cases that I need, before that I was coping with -D_GLIBCXX_DEBUG (doesn't have safe iterators for std::string and std::string_view and that I need the most) and MSVC debug iterators (better but slow as hell in debug). You can read more about the implementation here: https://github.com/uni-algo/uni-algo/blob/main/doc/SAFE_LAYER.md Nothing interesting it's possible to implement all of this even in C++98 but no one cared back then and it's a shame that it's not in C++ standard so we cannot choose to use safe or unsafe std::string for example and must rely on implementations in compilers that are simply incomplete in many cases or implement it from scratch.
-
New Unicode library
Why call your files modules? "Modular programming" or "Modular architecture" is pretty standard term in programming I don't think there are a good synonym for "module" word so I plan to use "Modules" and "C++20 Modules" to avoid ambiguity. You have one cpp file in the project. Any reason for that? Including Unicode data files that may be pretty big into header files hurts compilation speed. C++20 Modules will help with that and I plan to support it. I'd also recommend supporting CMake I will support CMake it just I didn't need it in my development stage. Overall, looks very nice. Thank you. I made a post on GitHub with some of my plans: https://github.com/uni-algo/uni-algo/issues/3
What are some alternatives?
When comparing utf8 and uni-algo you can also consider the following projects:
path-text-utf8 - Trivial integration of the "path" and "text" packages, providing convenient functions to read and write UTF-8 text files
hikogui - Modern accelerated GUI
unicode-lookup - The web's best unicode lookup tool!
quick-lint-js - quick-lint-js finds bugs in JavaScript programs
simdutf - Unicode routines (UTF8, UTF16, UTF32) and Base64: billions of characters per second using SSE2, AVX2, NEON, AVX-512, RISC-V Vector Extension. Part of Node.js and Bun.
tiny-utf8 - Unicode (UTF-8) capable std::string