https://github.com/pointlander/calc
Command line calculator
https://github.com/pointlander/calc
calculator
Last synced: 4 months ago
JSON representation
Command line calculator
- Host: GitHub
- URL: https://github.com/pointlander/calc
- Owner: pointlander
- License: bsd-3-clause
- Created: 2020-11-08T23:43:47.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2021-03-18T01:33:35.000Z (over 5 years ago)
- Last Synced: 2024-06-21T03:15:21.530Z (almost 2 years ago)
- Topics: calculator
- Language: Go
- Homepage:
- Size: 128 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# calc
A command line calculator.
## Installation
```bash
git clone https://github.com/pointlander/calc.git
cd calc
go install
```
## Usage
```bash
calc
```
## Language
```
e <- sp e1 !.
e1 <- e2 ( add e2
/ minus e2
)*
e2 <- e3 ( multiply e3
/ divide e3
/ modulus e3
)*
e3 <- e4 ( exponentiation e4
)*
e4 <- minus value
/ value
value <- matrix
/ imaginary
/ number
/ exp1
/ exp2
/ natural
/ pi
/ prec
/ simplify
/ derivative
/ log
/ sqrt
/ cos
/ sin
/ tan
/ variable
/ sub
variable <- [A-Za-z]+ sp
matrix <- '[' sp (e1 / row)+ ']' sp
imaginary <- < [-]? [0-9]+ ([.] [0-9]*)? > 'i' sp
number <- < [-]? [0-9]+ ([.] [0-9]*)? > sp
exp1 <- 'exp' open e1 close
exp2 <- 'e^' value
natural <- 'e' sp
pi <- 'pi' sp
prec <- 'prec' open e1 close
simplify <- 'simplify' open e1 close
derivative <- 'derivative' open e1 close
log <- 'log' open e1 close
sqrt <- 'sqrt' open e1 close
cos <- 'cos' open e1 close
sin <- 'sin' open e1 close
tan <- 'tan' open e1 close
sub <- open e1 close
add <- '+' sp
minus <- '-' sp
multiply <- '*' sp
divide <- '/' sp
modulus <- '%' sp
exponentiation <- '^' sp
open <- '(' sp
close <- ')' sp
sp <- ( ' ' / '\t' )*
row <- ';' sp
```