mlib
ctl
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.
mlib
-
preprocessor stuff - compile time pasting into other files
This uses the preprocessing library
-
Popular Data Structure Libraries in C ?
M*LIB
-
So what's the best data structures and algorithms library for C?
Thanks to your feedback, I have added a new chapter in the documentation explaining how to do what you want. In this case, you need to inherit from the integer oplist (M_BASIC_OPLIST) and only adds the operator you need using the macro M_OPEXTEND. I have also added examples for integer and for c-string that may help you since there weren't any example with OA hashmap.
-
C Template Library
A quick bench on array(unsigned) between RXI vec and M*LIB array, which uses type generation, shows 1476 ms for RXI vec and 1116 ms for M*LIB (O2 / native / No LTO).
- M*LIB: Generic type-safe Container Library for C language
-
[2022] [C] Flipper Zero (STM32, ~100KB RAM available) - ALL 25 days
That was definitely part of the pain: I'm not fluent in C (professionally mainly write golang), so everything was taking me more time, and I was cursing the lack of all the niceties I'm used to. Having access to mlib that came with the firmware did help a lot, but still... Then also having to run everything through the flipper, 'screening' to it to get logs, etc. was just that extra little bit of pain.
-
STC VS mlib - a user suggested alternative
2 projects | 1 Oct 2022
ctl
-
A header-only C implementation of C++ <algorithm>
Well, I do like mine better, which is closer to the STL, and for all containers. https://github.com/rurban/ctl/
-
A simple hash table in C
search for htable or hashtable in thousands of open source projects. only a minority has worse hashtables than this one (clisp, perl5 e.g.).
For better ones I would point to my linked list implementation: https://github.com/rurban/ctl/blob/master/ctl/unordered_set.... (because it has various security policies, nobody else has)
-
Popular Data Structure Libraries in C ?
C Container Template Library, Rurban Variant (CTL) - The page for unordered_map reads "Implementation in work still".
-
C Template Library
There is also the rurban variant variant of CTL which is more complete.
-
Better C Generics: The Extendible _Generic
The prototype of CC used this mechanism to provide a generic API for types instantiated via templates (so basically like other container libraries, but with an extendible-_Generic-based API laid over the top of the generated types). This approach has some significant advantages over the approach CC now uses, but I got a bit obsessed with eliminating the need to manually instantiate templates.
- C_dictionary: A simple dynamically typed and sized hashmap in C - feedback welcome
-
How different is C++ from C? Contrasting simple Unix SORT programs
But the most common that I know of is this one: https://github.com/tylov/STC. There's also this one mentioned above https://rurban.github.io/ctl/
- C++ containers but in C
- STL in C
-
On HASH-TABLEs performance
I'm also working on a proper one, but got sidetracked. https://github.com/rurban/ctl/blob/hmap/ctl/swisstable.h
What are some alternatives?
stc - Speedy TypeScript type checker
rnnoise - Recurrent neural network for audio noise reduction
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.
Klib - A standalone and lightweight C library
advent-of-code-2022 - Advent of Code 2022 on the Flipper Zero
CC - A small, usability-oriented generic container library.
roost - Proof of Concept for Eventsourced backend
map - A type-safe hash map implementation for C
LIPS - Scheme based powerful lisp interpreter in JavaScript
flipperzero-firmware - Flipper Zero firmware source code
covid_status