cmacro
ltools
cmacro | ltools | |
---|---|---|
4 | 2 | |
876 | 3 | |
- | - | |
4.9 | 1.8 | |
3 months ago | over 2 years ago | |
Common Lisp | Rust | |
- | GNU General Public License v3.0 or later |
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.
cmacro
- Advanced Metaprogramming in C: A select statement
- Cmacro: Lisp Macros for C
-
Syntatic Sugar that compiles to C
even more interesting are the handful of projects layering lisp style macros on top of C. i've seen several go by over the years; a quick google search brought up c-mera and cmacro.
-
Show HN: C programming language extension: Cedro pre-processor
To implement something like linear types[1] in C, such that each instance of type_t must be used once and only once. But I imagine this would require too much integration with the type system and code analysis.
I wish binary inclusion was provided by more languages or build systems. For small files it's a very suitable alternative to the difficulties of packaging resources when distributing an application or library.
[0]: https://github.com/eudoxia0/cmacro
[1]: https://en.wikipedia.org/wiki/Substructural_type_system#Line...
ltools
-
What's the Most Portable Way to Include Binary Blobs in an Executable?
https://github.com/jochenleidner/ltools/blob/main/src/bin/bi...
What I found is that many compilers don't like to compile very large source files; so if the binaries you'd like to integrate are big, it might be better to integrate their constituent objects one by one (if applicable).
-
Show HN: C programming language extension: Cedro pre-processor
> I wish binary inclusion was provided by more languages or build systems. For small files it's a very suitable alternative to the difficulties of packaging resources when distributing an application or library.
When it occasionally comes up as a need, I use the bintosrc command available at https://github.com/jochenleidner/ltools
What are some alternatives?
elpp - --- IN ATTIC BECAUSE: no feature
MyDef - Programming in the next paradigm -- your way
lisp-preprocessor - Common lisp embedded template engine
postject - Easily inject arbitrary read-only resources into executable formats (Mach-O, PE, ELF) and use it at runtime.
cargo-expand - Subcommand to show result of macro expansion
shiv - shiv is a command line utility for building fully self contained Python zipapps as outlined in PEP 441, but with all their dependencies included.
C-headers
LIEF - LIEF - Library to Instrument Executable Formats
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
rage - A simple, secure and modern file encryption tool (and Rust library) with small explicit keys, no config options, and UNIX-style composability.
libear - A C++11 library to render ADM content according to Recommendation ITU-R BS.2127