Klib
Better Enums
Our great sponsors
Klib | Better Enums | |
---|---|---|
14 | 0 | |
3,553 | 1,267 | |
- | - | |
0.6 | 1.0 | |
3 months ago | 8 months ago | |
C | C++ | |
MIT License | BSD 2-clause "Simplified" 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.
Klib
- C++ containers but in C
-
Im looking for a good hashtable fonction to use
If you want a generic, extremely high performance implementation. I really recommend khash: https://github.com/attractivechaos/klib/blob/master/khashl.h
- What if Linus Torvalds used C++ instead of C
-
sqzlib - kseq compatible DNA fastA/Q encoding and compression library
Most importantly, sqzlib is fully compatible with klib/kseq.h one of the highest performance fastA/Q parsers. This means that any application that uses kseq.h for fastA/Q parsing, can be easily modified to use sqzlib instead. You can find patched versions of seqstats, minimap2, and bwa-mem2 in my github, or you can patch them yourself with the included patches.
-
"Implementing Hash Tables in C" (an article I've drafter a few years ago, but never published it until... now)
I don;t know if you are aware of khash? It's a very nifty hash table implementation. It is one of the fastest hash table implementations out there. Heavily used in bioinformatics. You said in your post that you are a macro guy, well, you are in for a treat with this library.
- Metaprogramming custom control structures in C
- I still like C and strongly dislike C++
-
Type-safe generic data structures in C
This is in fact a pretty common pattern in production code.
Here's an entire suit of type safe generic data structures in C: https://github.com/attractivechaos/klib
-
How to structure C code? It appears to reward shallow functions and doing everything in the global scope, whereas other languages let you go as deep as you want at no cost.
You will probably want to invest some time into either finding a good data structures library (preferable) or writing your own data structures (fine to do but not a good use of your time if you're starting out). You can try SGLIB or klib.
- Performance comparison: counting words in Python, Go, C++, C, AWK, Forth, and Rust
Better Enums
We haven't tracked posts mentioning Better Enums yet.
Tracking mentions began in Dec 2020.
What are some alternatives?
C++ Format - A modern formatting library
ZLib - A massively spiffy yet delicately unobtrusive compression library.
stb - stb single-file public domain libraries for C/C++
ZXing - ZXing ("Zebra Crossing") barcode scanning library for Java, Android
Boost.Signals - Boost.org signals2 module
constexpr-8cc - Compile-time C Compiler implemented as C++14 constant expressions
Geany - A fast and lightweight IDE
Cppcheck - static analysis of C/C++ code
libevent - Event notification library
American Fuzzy Lop - american fuzzy lop - a security-oriented fuzzer
ctl - My variant of the C Template Library
STC - A modern, user friendly, generic, type-safe and fast C99 container library: String, Vector, Sorted and Unordered Map and Set, Deque, Forward List, Smart Pointers, Bitset and Random numbers.