5 个版本

0.1.4 2022年3月30日
0.1.3 2022年3月28日
0.1.2 2022年3月27日
0.1.1 2022年3月26日
0.1.0 2022年3月26日

#13 in #🦀

每月 21 次下载

MIT/Apache

48KB
1K SLoC

🧮 clc - 命令行计算器

clc on crates.io Documentation (latest release) Changelog License License

Clc 是一个用 Rust 编写的命令行计算器 🦀 它评估给定的表达式并打印结果。


📖 目录 (Toc)

安装
用法
许可证

💻 安装

Linux、macOS 和 Windows 上有预构建的 x86-64 二进制文件 在发布页面
您可以使用 cargo 从源安装最新版本,或直接从源代码检出构建。

📦 通过 cargo

cargo install clc

🐧 Linux

curl -sSLf https://github.com/ymgyt/calculator/releases/download/0.1.4/clc-x86_64-unknown-linux-gnu.tar.gz | tar zxf - -C /usr/local/bin

🍎 Mac

curl -sSLf https://github.com/ymgyt/calculator/releases/download/0.1.4/clc-x86_64-apple-darwin.tar.gz | tar zxf - -C /usr/local/bin

🐳 Docker

要使用 Docker 中的 clc,请执行以下命令。

docker run --rm -it ghcr.io/ymgyt/clc:latest

👩‍💻 用法

执行 clc 命令以启动 repl 会话。输入要评估的表达式并按 Enter。
要退出会话,请输入 quit 或按 Ctrl + C。

$ clc
Version: v0.1.4
To quit, press Ctrl+C or type quit
❯ sqrt(sqrt(16)) * (100 - 1) * (100 + 1) / 9
2222
❯ quit
bye

您还可以在不使用 repl 会话的情况下直接检索结果。使用 --eval 标志传递要评估的表达式

clc --eval 'sqrt(-2^2) - abs(2)'

🏃 Lambda 表达式

一些函数将 lambda 表达式作为参数。Lambda 表达式编写如下 |x| { x^2 }
{} 是可选的,因此上述表达式也可以写成以下形式 |x| x^2

 sig(1,10 |x| x^2)
385

 sig(1,10 |x| sig(1,10 |y| x*y))
3025

🥣 支持的函数

标识符 描述
sqrt(n) 返回一个数字的平方根
如果提供负数,则返回 NaN
pow(n,m) 将 n 提到 m 的幂次。 (= n ^ m)
abs(n) 计算 n 的绝对值
sig(n,m,lambda) 使用从 n 到 m 的值执行 lambda 并返回结果的总和

🪪 常量

标识符 描述
pi 阿基米德常数(π)
e 欧拉数(e)

🪪 许可证

本项目可在Apache 2.0许可证或MIT许可证的条款下使用。Apache 2.0许可证MIT许可证

依赖项

约8-21MB
约256K SLoC