simple calculator REPL, similar to bc(1)
, with syntax highlighting and persistent history
Homebrew
shell
$ brew install eva
crates.io
shell
$ cargo install eva
manual
shell
$ git clone https://github.com/nerdypepper/eva.git
$ cargo run
```shell eva 0.3.0 NerdyPepper akshayoppiliappan@gmail.com Calculator REPL similar to bc(1)
USAGE: eva [OPTIONS] [INPUT]
ARGS: Optional expression string to run eva in command mode
OPTIONS:
-b, --base
```
type out an expression and hit enter, repeat.
```shell
1 + sin(30) 1.5 floor(sqrt(3^2 + 5^2)) 5 5sin(45) + cos(0) 4.53553 ```
crates.io
shell
$ cargo install eva --force
manual
shell
$ cargo install --force --path /path/to/eva
+ - * / ^ **
+ -
some constants available in rust standard library.
e pi
examples:
pi * 5^2 # πr²
all trigonometric functions expect input in degrees.
``` 1 argument: sin cos tan csc sec cot sinh cosh tanh asin acos atan acsc asec acot ln log10 sqrt ceil floor abs
2 arguments: log nroot
deg(x) - convert x to degrees rad(x) - convert x to radians ```
examples: ``` sqrt(sin(30)) # parentheses are mandatory for functions
log10100 # no log10(100) # yes
log(1, 10) # function with two arguments ```
auto insertion of *
operator
```
12sin(45(2)) # 12 * sin(45 * (2)) 12 ```
auto balancing of parentheses ```
ceil(sqrt(3^2 + 5^2 # ceil(sqrt(3^2 + 5^2)) 6 ```
use previous answer with _
```
sin(pi) 0.0548036650 _^2 0.0030034417
```
> 1 + ln(-1)
Domain Error: Out of bounds!
syntax highlighting
the rust community has helped eva come a long way, but these devs deserve a special mention for their contributions: