# @calcit/procs 中文文档

规范地址：https://npmcn.com/package/%40calcit/procs/

版本：0\.38\.0
npm 元数据更新时间：2026-11-08T02:38:15.453Z
中文译文更新时间：2026-11-08T23:46:47.662Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40calcit/procs
原文对照：https://npmcn.com/package/%40calcit/procs/?lang=original
项目主页：https://github.com/calcit-lang/calcit#readme
源码仓库：https://github.com/calcit-lang/calcit

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：383 kB，49 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- 运行依赖：4 个
- 首次发布：2021-01-27T07:08:42.319Z
- 最新版本发布：2026-11-08T02:38:15.100Z
- 近 30 天下载量：13203（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：690（近 12 个月 276 个）

## 中文简介

> 用于交互和实时应用程序的打入功能语言. 由Rust所建并编译为JavaScript ES模块.

## 安装

```sh
npm install @calcit/procs
```

也可以使用：`pnpm add @calcit/procs`、`yarn add @calcit/procs`、`bun add @calcit/procs`

## README

### Calcit 编程语言

> 用于交互和实时应用程序的打入功能语言. 由Rust所建并编译为JavaScript ES模块.

-   内容 [https://calcit-lang.org/ (中文(简体) )](https://calcit-lang.org/)
-   API 文档 [https://apis.calcit-lang.org/ (中文(简体) )](https://apis.calcit-lang.org/)
-   指南 [https://guide.calcit-lang.org/ (中文(简体) )](https://guide.calcit-lang.org/)

[浏览示例](https://github.com/calcit-lang/calcit/tree/main/calcit) 或还 [尝试在线 WASM 版本](https://github.com/calcit-lang/calcit-wasm-play)。 。 。 .

核心设计:

-   口译员在Rust上运行,与Rust FFI相通
-   持久性数据结构
-   基于缩进的 Cirru 语法, 友好到纯文本编辑
-   代码数据宏和功能样式
-   名义结构/元素、特征、方法、选择/结果和静态分析
-   编译到 ES 模块中的 JavaScript, JavaScript Interop
-   热密码互换友好

当前方向 :

-   {\\fn方正黑体简体\\fs18\\b1\\bord1\\shad1\\3cH2F2F2F}卡尔西特 卡尔西特 卡尔西特
-   `calcit.cirru` 是条形源快照;已退休 `compact.cirru` 获得移徙指导
-   CLI - 第一项发展与 `calcit` 运行时间和独立发布 `caps` 软件包管理器,用于在终端工作流程中与 AI 代理良好合作
-   改进CI、Docs查询、模块管理和增量更新的CLI编辑和验证
-   一致支持实时网络应用:打入WebSocket消息,确定状态更新,diff/patch同步,确认,再同步

### 仓库边界

Calcit 保留语言语义学,运行时行为,后端降低 `calcit` CLI/代理接口,以及 已在此仓库中版本语言文档 。 具有独立依赖性和排放的产品 cadence被单独保存或跟踪取出:

| 模块 | 地位和所有权 |
| --- | --- |
| [`calcit-bindgen`](https://github.com/calcit-lang/calcit-bindgen) | ; rust/Calcit/TypeScript/WIT生成; 明显相容性 diff {{} {} stale check} Struct record} { Enum{} ;0.1.7 → 组件 接口 IR v4. async export/import → WASI HTTP客户端 → 组件 → Cirru EDN →/结果的默认拒绝 Wasmtime主机; → 打开前 → /结果与稳定业务退出码, 货物 → 检查 → 资源 → HTTP 服务 → 里程碑 → 接口 IR export/schema/ conformation; + 生成器 → [544号](https://github.com/calcit-lang/calcit/issues/544) 追踪。 |
| [`calcit-native-ffi`](https://github.com/calcit-lang/calcit-native-ffi) | 独立生产共享本地模块的ABI/帮助箱;在其中跟踪犬类ABI的所有权 [卡尔西特-内生-ffi# 7](https://github.com/calcit-lang/calcit-native-ffi/issues/7)。 。 。 . |
| [`caps`](https://github.com/calcit-lang/caps) | 独立生产包管理器作为 `calcit-caps` 板条箱; 完成的核心切换在 [555号](https://github.com/calcit-lang/calcit/issues/555)。 。 。 . |

见 [549号](https://github.com/calcit-lang/calcit/issues/549) 为双语储存库边界路线图. Calcit没有近期的LSP计划,因此分析和代理CLI能力仍留在这个存储库并发布 而不是被拆分给假设的消费者.

### 安装 ![GitHub Release](https://img.shields.io/github/v/release/calcit-lang/calcit)

用 Rust 构建和安装 :

```bash
# get Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# install the independently versioned user-facing tools
cargo install calcit --bin calcit
cargo install calcit-caps
```

已安装的二进制 :

-   `calcit`,运行时间和JS编译器
-   `caps`,用于下载在 `deps.cirru`

从首次包含该资产的版本起,Ubuntu 22.04 x86 64 的低资源机器可下载 发布 中的 `calcit-ubuntu22.04-x86_64-no-wasm`, [I) 妇女:](https://npmcn.com/package/%40calcit/procs/docs/installation/no-wasm-build.md)。源码构建可用 `cargo build --release --no-default-features --bin calcit` WASM/WASI 联合来文。

在从源头开发 Calcit 核心时, 在本地安装其运行时间, 并自发布后安装盖:

```bash
cargo install --path . --bin calcit
cargo install calcit-caps
```

对于新的 GitHub 动作工作流程, 使用 [设置- calcit@v1](https://github.com/calcit-lang/setup-calcit)。 安装在 `deps.cirru`,并创建 轻量级 `cr -> calcit` 现有工作流程命令的兼容链接 。 对于前名卡尔西特发布它 倒计时 `cr` 并揭露等同物 `calcit` 命令。 本地Calcit释放不再包括盖;迁移 本地脚本直接取而代之,而不是依赖包装. 现有 [设置cr](https://github.com/calcit-lang/setup-cr) 仍然支持工作流程标记.

### 快速启动

评价片段 :

```bash
calcit eval 'range 100'

calcit eval -- '-> 100 range (map $ \ * % %)'
```

带着条子运行时间快照跑 `calcit.cirru`数字 :

```bash
calcit calcit.cirru # run once (default)
calcit # reads calcit.cirru from the current directory

calcit -w # watch mode (explicit flag required)
```

默认 Calcit 读取 `:init-fn` 财务报告和审定财务报表 `:reload-fn` 从 `calcit.cirru` `:entries.default`。也可以指定函数:

```bash
calcit --init-fn='app.main/main!' --reload-fn='app.main/reload!'
```

您也可以配置 `:entries` 内 `calcit.cirru`数字 :

```bash
calcit --entry server
```

### JavaScript 代码源

Calcit以一致的语义编译为JavaScript. 在浏览器或节点项目中,JavaScript interop仍然是预期的.

```bash
calcit js # compile to js, also picks `calcit.cirru` by default
calcit js --emit-path=out/ # compile to js and save in `out/`
```

默认情况下, js 代码生成到 `js-out/`。您需要Vite或节点来运行它,从一个条目文件中:

```js
import { main_$x_, reload_$x_ } from "./js-out/app.main.mjs";
main_$x_(); // which corresponds to `main!` function in calcit
```

### CLI 和代理工作流程

常规修改先读取紧凑代理 契约;复杂操作按需读取完整指南。不要把 `calcit.cirru` 抓图 QQ。

常见命令 :

```bash
calcit docs agents --contract # read the compact mutation contract first
calcit query search 'foo'   # locate code by symbol or string
calcit edit ...             # structured edits for defs, imports, config, modules
calcit js                   # compile once
calcit js -w                # watch mode
caps                         # install/update dependencies from deps.cirru
```

Calcit编辑器不再是日常发展的推荐路径. 如果您还需要旧编辑工作流程,请看 [Calcit 编辑器](https://github.com/calcit-lang/editor)。 。 。 .

相关实例和工作流程:

-   [最小曲线](https://github.com/calcit-lang/minimal-calcit/blob/main/README.md)
-   [Respo Calcit 工作流程](https://github.com/calcit-lang/respo-calcit-workflow)
-   [设置- 计算](https://github.com/calcit-lang/setup-calcit) 用于新的 GitHub 动作工作流程

### 模块

`deps.cirru` 声明需要下载的依赖关系,这与 GitHub 上的寄存器相对应。 指定分支或标签 :

```cirru
{} (:calcit-version |0.9.11)
  :dependencies $ {} (|calcit-lang/memof |0.0.11) (|calcit-lang/lilac |main)
  :dev-dependencies $ {} (|calcit-lang/calcit-test |0.1.0)
```

运行 `caps` 解决递归依赖图并安装。 不可改变的修订被储存在 `~/.config/calcit/module-caches/`,而当前项目在下方接收链接 `.calcit/modules/`。 。 。 . 因此,不同的项目可以使用不同的修改而无需切换共享的取出. 现有 项目模块链接是包式模块路径唯一的运行时源; 明确相对和 绝对路径保留其正常的直接分辨率.

已公布的SemVer标签为首选. 部门参考文献仍然用于发展,但 `caps` 警告时 坚定的承诺。 当一个图要求一个寄存器的 SemVer 标签时, 请求的最高值 选择并报告版本.

根项目同时安装 `:dependencies` 财务报告和审定财务报表 `:dev-dependencies`。只遵循递归分辨率 `:dependencies`,因此依赖声明的测试和维护模块不会泄露给消费者. 使用 `caps add --dev <org/repo>@<ref>` 财务报告和审定财务报表 `caps remove --dev <org/repo>` 管理开发组.

`:calcit-version` 帮助检查版本并提供提示 [中情局](https://github.com/calcit-lang/setup-calcit)。 。 。 .

要装入模块,请使用 `:modules` 配置和运行时快照文件 `calcit.cirru`数字 :

```cirru.no-check
:entries $ {}
  :default $ {}
    :modules $ [] |memof/calcit.cirru |lilac/
```

路径定义于 `:modules` 从快照目录中加载 `.calcit/modules/`,比如说. `.calcit/modules/memof/calcit.cirru`运行 `caps` 实现或刷新项目本地视图.

模块以 `/` 自动后缀为 `calcit.cirru`。只包含已退休模块 `compact.cirru` 根据移民指南被拒绝.

检查并核实已解决的图表:

```bash
caps tree
caps why calcit-lang/memof
caps status
caps verify
caps verify --toolchain # after yarn install, for JS projects
```

### 发展

本地验证命令 :

```bash
# run tests in Rust
cargo run --bin calcit -- calcit/test.cirru

# run tests in Node.js
cargo run --bin calcit -- calcit/test.cirru js && yarn try-js

# run snippet
cargo run --bin calcit -- eval 'range 100'

# internal compiler/WASM validation when working on this repository
cargo run --bin calcit -- calcit/test.cirru ir
yarn try-wasm
```

对于寄存器的开发,通常的验证流程是:

```bash
cargo fmt
cargo clippy -- -D warnings
yarn compile
cargo test
yarn check-all
```

-   [Cirru 解析器](https://github.com/Cirru/parser.rs) 用于基于缩进的语法解析.
-   [环境网络](https://github.com/Cirru/cirru-edn.rs) 用于犬科运行时的快照解析(`calcit.cirru`) (中文(简体) ).
-   [手指维克](https://github.com/calcit-lang/finger-vec.rs) 用于永久列表数据结构.

其他工具:

-   [错误查看器](https://github.com/calcit-lang/calcit-error-viewer) 用于显示 `.calcit/error.cirru`
-   [IR 查看器](https://github.com/calcit-lang/calcit-ir-viewer) 用于渲染 `program-ir.cirru`

一些资源:

-   开发日志 [https://github.com/calcit-lang/calcit/讨论](https://github.com/calcit-lang/calcit/discussions)
-   视频记录 [https://space.bilibili.com/14227306/channel/seriesdetail?sid=281171 (英语)](https://space.bilibili.com/14227306/channel/seriesdetail?sid=281171)

### 许可证

麻省理工学院

## 常见问题

### @calcit/procs 是什么？

用于交互和实时应用程序的打入功能语言\. 由Rust所建并编译为JavaScript ES模块\.

### 如何安装 @calcit/procs？

在项目目录运行 npm install @calcit/procs，或使用 pnpm add / yarn add / bun add。

### @calcit/procs 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/calcit\_\_procs 是否存在。

### @calcit/procs 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @calcit/procs 可以商用吗？

@calcit/procs 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @calcit/procs 的下载量有多少？

根据 npm 官方下载统计，@calcit/procs 在 2026/10/09 – 2026/11/07 这 30 天内被下载 13,203 次，日均约 440 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @calcit/procs 还在维护吗？

最新版本 0\.38\.0 发布于 2026/11/08（1 天前）；至今共发布 690 个版本，其中过去 12 个月发布了 276 个；首次发布于 2021/01/27。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

