Key features:
· Fortran-style column-major arrays with A[i,j] indexing
· NumPy-like operations (element-wise math, slicing, broadcasting)
· Memory-safe allocation/deallocation
· Efficient views instead of copies for slicing operations
· Linear algebra support (matmul, transpose, etc)
It's written in pure C99 with no dependencies beyond standard math libraries. Perfect for scientific computing where you need both performance and expressiveness in C.
- Stack operations (push/pop/dup/swap/over/drop) - Arithmetic (+, -, *, /) - Output (., emit, cr) - Stack inspection (.s, depth)
Example usage: Stack s; stack_init(&s); dict_init(); exec(&s, "10 20 + ."); // Prints "30" exec(&s, "1 2 3 4 .s"); // Shows stack contents
The library is self-contained, requires no dependencies, and handles basic error checking. It was inspired by wanting to understand how Forth works at a fundamental level while keeping the simplicity of C.
I'm curious what other stack-based or concatenative programming enthusiasts think about this approach. Has anyone else built something similar? What features would you add to make it more useful?
GitHub: https://github.com/Ferki-git-creator/fsp
Website(more info): https://ferki-git-creator.github.io/fsp/
If I made a mistake somewhere, please tell me.
Lightweight single-header JSON parser/generator for C/C++ in STB tradition. Implements RFC 8259 (JSON), RFC 6901 (JSON Pointer), RFC 6902 (JSON Patch), and RFC 7386 (Merge Patch). Zero dependencies, thread-safe, UTF-8 validation, file I/O, minification, and custom allocators. Ideal for embedded systems and cross-platform projects.
What's new in v1.3:
-Template System
-Now with {{variable}} substitution like modern template engines
-Multi-Output Streaming
-Broadcast to multiple destinations simultaneously (UART, files, network)
-String Builder - Dynamic string building with efficient memory management
-Text Transformation
-Built-in uppercase, lowercase, capitalize, reverse, and ROT13 transforms
-Advanced Formatting
- Text alignment, wrapping, and pattern-based formatting
-Event System
- Hook into output streams for monitoring and processing -Stream Processors
-Real-time character transformation pipelines
-State Machine
- Lightweight state management for complex workflows
And it's still:
-Zero dependencies
-Header-only
-Fully portable
-MIT licensed
Perfect for embedded systems, CLI tools, and anywhere you need powerful formatting without bloat.