libCat
EA Standard Template Library
Our great sponsors
libCat | EA Standard Template Library | |
---|---|---|
21 | 38 | |
51 | 7,179 | |
- | 1.2% | |
8.8 | 4.6 | |
about 1 month ago | 1 day ago | |
C++ | C++ | |
GNU Affero General Public License v3.0 | BSD 3-clause "New" or "Revised" License |
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.
libCat
-
I hate almost all software
That's awesome! I'm working on something that sounds similar. https://github.com/cons-cat/libcat
I'd love to see your work if you're willing to share it here!
- Manticore 6.0.0 â a faster alternative to Elasticsearch in C++
-
Chromium accepting Rust in a clear move to copy what Mozilla have done, replace C++ source code
It's worse in the standard library than it has to be. When I refactored my traits to minimize template instantiations and lean on concepts as much as possible, I measured over 30% improvement to clean build compile times. It's not possible for the standard to do this, because it would subtly change the API. For instance, you can't instantiate or take the address of a concept, but you can for a type-trait class. No reason you'd want to do that, but you can, so they can't "break" the standard library by optimizing this.
-
C++'s smaller cleaner language
This doesn't have to be true. Over the past year I've made progress towards demonstrating how even non-freestanding C++ can be written without any C or C++ standard library headers or DLLs (with large benefits). There are a few names which the compilers require to be in the std:: namespace, though, but they're very special features like source_location and construct_at with semantics that can't be expressed otherwise.
-
Is bloat in std::unexpected expected?
It isn't that hard to put a predicate into a type. We have lambdas in an unevaluated context, CTAD, and templated type aliases. https://github.com/Cons-Cat/libCat/blob/main/src/libraries/scaredy/cat/scaredy https://github.com/Cons-Cat/libCat/blob/main/src/global_includes.hpp#L70 https://github.com/Cons-Cat/libCat/blob/main/src/libraries/linux/cat/linux#L289 You do it like this.
- Software disenchantment - why does modern programming seem to lack of care for efficiency, simplicity, and excellence
- tiny::optional â a C++ optional that does not waste memory
-
Rust analyzer/clippy alternative for C++?
I use clang-tidy. These are my current linting rules.
-
John "God" Carmack: C++ with a C flavor is still the best (also: Python performance "keeps hitting me in the face")
I'm working on this! https://github.com/Cons-Cat/LibCat
- âHello worldâ is slower in C++ than in C (Linux)
EA Standard Template Library
-
The joys of writing my own standard library
Can I introduce you to EASTL
-
I want to start computer graphics programming
C++, but generally treat it as C. STL is pretty slow while debugging so we avoid it and write our own replacements. If you don't want to drive that deep use something like EASTL: https://github.com/electronicarts/EASTL
-
A container with set interface based on std::vector
In my opinion, you should also benchmark it against something like boost::container::flat_set or eastl::vector_set and you should expect the same performance as with your ordered functionality. Another interesting idea for organization of such flat and sorted container can be found here.
-
What are the hallmarks of well written and high quality C++ code?
check it out: https://github.com/electronicarts/EASTL
-
Where to read about std library implementation?
EASTL might also be worth a look, the code is relatively readable and well-documented.
I just took a look at their atomic.h and wow, "well-documented" is an understatement !
-
should I just use C++ STL alternatives?
I recently read this benchmark series about hashing and hashmaps, which includes EA STL. It performs fairly decently overall in that regard. EA STL also has benchmarks in its source repo. But I would also expect that some of its perfomance improvements are almost self evident, such as containers like tuple_vector, intrusive containers, and fixed-size containers that don't have an analogous feature in the STL, all of which are integrated into its own polymorphic allocators and arenas (different from and more flexible than std::pmr) along with its other algorithms. It would be interesting to see them benchmarked against Boost, which has similar features but written in the STL style.
-
EASTL atomic macro not implemented
I'm currently trying to add EASTL to my project, but when I try to build it using CMake (either as a subdirectory, or directly in the EASTL subdirectory), I get the error message EASTL\include\EASTL\internal\atomic\atomic_integral.h(330,2): error C2338: static_assert failed: 'eastl::atomic atomic macro not implemented!'. Does anyone have any clue why this could be happening?
-
Ouroboros - A Neovim plugin for quickly switching between header and implementation files in C/C++
I haven't, but that's a great idea! I did test it against the EASTL and that worked well and is still fast enough it appears instant.
-
Are you using Coding Interviews for Senior Software Developers?
EA did it. Problem with "reliable containers" that go with your runtime is that you can't control if they cater to your specific use cases.
What are some alternatives?
STL - MSVC's implementation of the C++ Standard Library.
etl - Embedded Template Library
xtensor - C++ tensors with broadcasting and lazy computing
uSTL - A size-optimized STL implementation.
Magic Enum C++ - Static reflection for enums (to string, from string, iteration) for modern C++, work with any enum type without any macro or boilerplate code
linkedin-skill-assessments-quizzes - Full reference of LinkedIn answers 2023 for skill assessments (aws-lambda, rest-api, javascript, react, git, html, jquery, mongodb, java, Go, python, machine-learning, power-point) linkedin excel test lösungen, linkedin machine learning test LinkedIn test questions and answers
BDE - Basic Development Environment - a set of foundational C++ libraries used at Bloomberg.
dyno - Runtime polymorphism done right
opentrack - Head tracking software for MS Windows, Linux, and Apple OSX
simdjson - Parsing gigabytes of JSON per second
libcodr7 - fundamental tools in the spirit of C
winapi - Windows API declarations without <windows.h>, for internal Boost use.