MLib — Useful Standard Library Extensions MLib is a collection of various headers and libraries that I find useful in a large enough number of my personal C projects. This includes for example: common datastructures, useful non-POSIX APIs, and 21st-century strings. This does not aim to be a LibC replacement, but rather a supplimentary library. It is a C23 library with no plans to support older standards. The headers as of now are: • alloc.h — memory allocation functions • bitset.h — bitset implementation • dynarr.h — dynamic array implementation • errors.h — err.h-inspired diagnostics functions • macros.h — miscellaneous utility macros (MIN/MAX/lengthof/etc.) • mbio.h — multibyte file I/O • mbstring.h — multibyte-strings • optparse.h — option parsing functions • rune.h — inttypes.h but for runes • unicode/gbrk.h — grapheme breaking The headers planned for inclusion are: • unicode/norm.h — text normalization • unicode/props.h — unicode character properties • unicode/sbrk.h — sentence breaking • unicode/wbrk.h — word breaking DISCLAIMER: This library is developed for use by me (the author). You are free to use this code for whatever you’d like, but do be warned that breaking changes may (and will) occur at any moment with no prior warning. Additionally, be warned that I do not care about whether or not you think the API is well-designed or human-friendly. If you have an issue with the code here, fix it — you are a programmer are you not?