Implementation of functional programming primitives (map, filter, reduce, etc.) in pure C, using generic lists and variadic functions — without loops in task files.
This project re-creates higher-order functions like those in JS or Haskell using:
- Function pointers and generic data structures
- Variadic argument handling (
stdarg.h) - Memory-safe operations via destructors
Language: C | Environment: Linux / GCC
for_each,map,filter,reduce- Variadic:
map_multiple,reduce_multiple,for_each_multiple - Tasks using these functionals:
- Reverse integer list
- Filter students by grade
- Compare list sums
- Generate square matrix
make # build project
./install.sh # optional checker setup
hw_checker --legacyImplemented higher-order programming patterns in C
Used variadic functions and function pointers
Practiced modular memory management and abstraction