Calculator
- Simple arithmetic
- Defining variables
- Derivatives
- Defining functions
- Built-in functions and constants
- Numerical integration
- Full integration
./x
./target/ccalc
*> 1 + 1
2.0
*> sin(pi / 2)
1.0
*> f(x) = x^2
f(x) = x^2
*> f'(x)
2x
This project uses arena allocation as its primary memory management model. All calls to malloc must be freed in the same scope, and things should be created on the stack whenever possible.