cppa2z
Document modern C++ using unit tests (by orabaev)
hana
Your standard library for metaprogramming (by boostorg)
cppa2z | hana | |
---|---|---|
2 | 4 | |
55 | 1,637 | |
- | 0.7% | |
4.7 | 5.1 | |
almost 3 years ago | 20 days ago | |
C++ | C++ | |
Boost Software License 1.0 | Boost Software License 1.0 |
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.
cppa2z
Posts with mentions or reviews of cppa2z.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-01-31.
-
Cppa2z Document Modern C Using Unit Tests
https://github.com/orabaev/cppa2z/issues/9 added github issue
-
cppa2z - Document modern C++ using unit tests
Hi, thanks for the comments. Getting entire C++ standard library covered was the original intent :). But as I said, if people find it useful, I will be more than happy to revive it and hopefully achieve the original goal. As far as documentation concerned, README was suppose to serve that purpose. I tag each test and the README.md is auto generated every time the project is compiled and run. But I understand it may need work. I may rethink the tagging and may generate separate "Table of contents" views. For example there may be a view that is strictly alphabetical, another one that has C++ standard table of contents etc. I have to think about it.
hana
Posts with mentions or reviews of hana.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-01-16.
-
What are some C++ projects with high quality code that I can read through?
I like boost::hana. Wish I had more chances to use it at work.
-
Simple `struct` static reflection system I use that tracks names, attributes (in my own code I also keep `constexpr` hashes of names) -- example gets fully inlined into `main()`
And then there's also the longstanding issue with default member initializers -- https://github.com/boostorg/hana/issues/409 -- which was a deal-breaker.The PROP system avoids this issue precisely by having the macro be as local as possible: the default member initializer is outside the macro. It does this while still letting you attach additional PropAttribs metadata (I'm not sure what additional metadata attachment looks like in Hana? haven't really tried). Default values and additional attributes are by and large quite more important to me in my use cases for reflection (component types in game ECS) than range syntax (everything I've needed and can think of needing is covered by for-each loop).
-
cppa2z - Document modern C++ using unit tests
oh yes definitely, but I meant more the particular way I've done it so far - which has been to implement something similar to boost::hana::is_valid(), to make it take the least amount of boilerplate code per-use-case as possible: zero additional lines of code.
-
C Implementation Challenge Replacing Stdmove And
Boost.Hana developers measured a very noticeable 15% decrease in compile time switching from a function call (admittedly -- with an additional layer of wrapper) to a raw static_cast. foonathan himself saw a little over a 5% decrease in his actual code. miki151 saw about a 3% improvement from replacing move with MOV only, ignoring forward. In a completely synthetic benchmark where I just generate a ton of move calls in a row, I get a little over 40% decrease in compile time.
What are some alternatives?
When comparing cppa2z and hana you can also consider the following projects:
mio - Cross-platform C++11 header-only library for memory mapped file IO
sml - C++14 State Machine library
dyno - Runtime polymorphism done right
filesystem - An implementation of C++17 std::filesystem for C++11 /C++14/C++17/C++20 on Windows, macOS, Linux and FreeBSD.
doctest - The fastest feature-rich C++11/14/17/20/23 single-header testing framework
robin-hood-hashing - Fast & memory efficient hashtable based on robin hood hashing for C++11/14/17/20
xbow - range-v3 views and actions for Arrow C++
spirit - Boost.org spirit module
zxorm - Zach's ORM - A C++20 ORM for SQLite
cpp-cheatsheet - Modern C++ Cheatsheet
operators - A highly efficient, move-aware operators library