31个版本
0.5.4 | 2021年5月31日 |
---|---|
0.4.1 | 2021年5月18日 |
0.3.14 | 2021年2月22日 |
0.3.9 | 2020年12月28日 |
0.2.0 | 2020年6月18日 |
#1293 在 数学
每月109次下载
17KB
269 行
Kalk是一个计算器(程序和库),支持用户定义的变量、函数、微分和积分。它在Windows、macOS、Linux、Android和网页浏览器(通过WebAssembly)上运行。
功能
- 运算符:+,-,*,/,!
- 分组:( ), ⌈⌉, ⌋⌊
- 预定义函数和常数
- 用户定义的函数和变量。
f(x, y) = xy
,x = 5
- 用户定义的单位(实验性)。
unit m = cm/100
,2m/50cm
,50cm to m
- 函数的导数(高阶导数可能有点不准确)。
f'(2)
,sin'(-pi)
- 积分。
∫(0, pi, sin(x) dx)
或∫(0, π, sin(x) dx)
- 理解相当模糊的语法。例如
2sin50 + 2xy
- 语法高亮
- Tab键上的特殊符号自动完成。例如,写下
sqrt
并按Tab键。它将转换为√
。 - 求和函数:
sum(start, to, expression)
例子:sum(1, 3, 2n+1)
等同于2*1+1 + 2*2+1 + 2*3+1
=15
- 加载包含预定义函数和常量的文件。例如,如果你打算用 Kalk 做物理计算,请在启动 Kalk 时加载包含物理函数/常量的文件。
-i file
- 杂项:用分号分隔表达式,以在同一行上写入它们,使用
ans
变量来获取先前计算表达式的值。
库
目前有三个与 kalk 相关的库。
- kalk:所有这一切背后的 Rust crate。
- @paddim8/kalk:JavaScript 绑定
kalk
。这使得你可以通过 WebAssembly 在浏览器中使用它。 - @paddim8/kalk-component:一个运行
@paddim8/kalk
的网页组件,它允许你通过类似命令行界面在浏览器中使用 kalk。
安装
二进制文件
Linux、Windows 和 macOS(64 位)的预编译二进制文件可在 发布页面 上找到。
编译
最低 rust 版本:v1.36.0。确保你已经安装了 diffutils
gcc
make
和 m4
。 如果你使用 Windows: 遵循此处说明(不要忘记在 MSYS2 中安装 mingw-w64-x86_64-rust
)。
Cargo
运行 cargo install kalk_cli
手动
- 进入
kalk_cli
目录。 - 运行
cargo build --release
- 从
targets/release
获取二进制文件
语法
更完整的参考可以在 网站上 找到
函数
定义: name(parameter1, parameter2, ...) = expression
例子: f(x) = 2x+3
使用: name(argument1, argument2)
例子: f(2)
变量
定义: name = expression
例子: x = 3
使用: name
例子: x
贡献
kalk 和 kalk_cli (Rust)
在修改 kalk 库(在 kalk/
目录下)后,您可以通过进入项目根目录并执行 cargo run
来轻松尝试这些更改。这将启动带有新更改的 kalk_cli。如果您使用的是 Windows,您需要按照 此处说明 进行操作,同时确保在 MSYS2 中安装 mingw-w64-x86_64-rust
。
kalk_web(Svelte、TypeScript、Sass)
运行
npm install
npm run dev
- 当更改时,这将自动重新编译项目
kalk_mobile(Android)
运行
npm install
npx cap sync
- 使用 Android Studio 或直接使用 Gradle 构建项目。
依赖项
~11MB
~200K SLoC