@克鲁巴/克鲁巴
CRUBAL参考实施. 纯函数, JSON 和 JSON 退出, 因此编译的核心可以替换 后面的内脏 相同的API.
达到的水平: 视图,该谱的每一章(1–14). 符合规定索赔: CRUBAL 2 · Views · corpus 2026-10-19 (大门,2026-10-19; CLAIM.md) (中文(简体) ).
-
读者 : 文本窗体和 JSON 两种方式, 面型类型, 未知的密钥保存准确, 简单字名拒绝 和行号.
-
词典 : 完整定义,公布检查内容和类别,通过会议、别名和单位解决 折叠、对面和已磨损的分类进行价值检查.
-
规则: 规则块和正面快捷键,公布检查(按地址划分,没有矛盾,一个) 并按顺序运行的引擎: 拒绝、 持有、 填充( 包括故障门的)
-),导出(有??财务报告和审定财务报表?,卷起),标出,不完整,完整和完整 价值状态测试和全球独特性. -
存储 : 将hash连接的日志与编辑、接收合同(地图、价值地图、别名、, 形状、被忽略、被保持; 原始字节及其散列保存), 由信任命令以替代方式着陆, 匹配修改行前的部分, 验证证据( 独立证人、 否决、 版本分割) 并附有补充说明和审查队列.
-
交换 : 合同公布检查(每类部分、定义的方面、价值图中的实际值、, 仅作为名称的证书),分步骤运行(
who包含角色、需求、用嵌入路径映射、值图 (b) 接收与记录和地面比较的运行,通过信任或 建议、提议和接受只有重叠流动和人的价值从未被推翻的地方, 对照放映者的密钥及其日志验证了边框包和包检查(前缀、信任) 条目,不更改延伸). -
视图 : 形状为将地图填入槽(地址、下层的汇总、模板、所需) 插槽),带有选择的视图,上下文(
of,指针,隐藏,顺序和页面,过滤器作为子索引 范围 和值 桶 和 计数 遵循其他 采样,可索引登陆页,受众和shown to规则(新的和未知的价值观永远不公开),缩小观众范围的角色,可移植的形状, 并读取决定写作中哪个行会 stale. -
骨干(第1.12、8.5、9.2a、10.7、12.6、14章): 日志作为效果,从日志重建 一个人,
define为工作软件包和使条目成为唯一方法的日记撰写 变动(log.ts; 有捆绑和强弱键的到来(arrival.ts; 折叠和自有密钥 附加、分解、归档、合并和指令(lifecycle.ts);所有人、边缘、模式、设保人 链条、许可菜单、闸门和紧急准入access.ts; 分区视图、投影 带有光标和重排的流和流订阅( r)views.ts, (中文(简体) ),exchange.ts); 记录设置每 模块读取,所以后端只能装入操作所需的内存 1个(records.ts,Docs/design/store.md);作为 JSON 文档的包,打印回文本表,这样 文本阅读器保持一个解析器、散列并签名(bundle.ts),并被切除为成员版本 diff, 4.8和5.11的更改分类符和食谱要求(publish.ts, (中文(简体) ),crubal publish· ; 文件/设计/出版.md);以书面方式审查决定,每个条目都有其导致的定义、价值或发布(review.ts; 持有值 在判决再次改变时回来; 收养、归还、复制和分拆(lifecycle.ts);测量合同着陆观测,第一个填入空出 数值,和在阈值下提出的版本拆分,从未制作(exchange.ts, (中文(简体) ),proposeSplit内store.ts);手工制作的清单(select: list:在核心侧面crubal:items),其插槽所控的页面形状 其他视图随页面记录作为上下文运行, 依赖在过滤器桶内计数, 进一步 形状在shapes和核心数据crubal:jsonld为公众提供结构化数据views.ts); 提供和取用报价模式:一次丢弃副本,观察存储链接,没有价值,收集 介绍者更新了自己早期的数值 并且从未超过消费者的 控制副本 介绍人的条件(到期、重新分享、可撤销)并撤回介绍人停止给予的内容 提供建造者并进行过期扫荡exchange.ts- 一个人的到来拥有domain:id当包让一个人 拥有这种钥匙(14.1),keyFor选择一个键,其长度为输入时刻(11.7); 表格作为数据来自合同的需要、记录的答案和状态以及呼叫者的边缘 (单位:千美元)forms.ts,文件/设计/索引和格式;以及边框 查阅访问、期刊,并给予消费者优势(exchange.ts) (中文(简体) ).
跑步适用规则(7.4分步6):a must 规则不会被停 是一个矛盾引申
规则和永远不着陆,a suggest 填满了土地 origin: derived 规则
联合国 via,一个改变的判决 维持,每个是记录效果.
它通过每个诉讼档案(198个案件); crubal claim <corpus> --out CLAIM.md 管理每个级别,写索赔,13.3。 没有收养人和第三方:
test.example 拥有数据, market: 代表任何市场, bench 任何内部工具,以及
产品,单位等都是测试包的自有种类,从来不是核心的.
存储还对照所有者公布的密钥检查Ed25519签名,重放其收录记录 保留字节(决定,保留较早的结果),按密钥逐项审查未知值和新值 将非UTF-8有效载荷作为基数64 包裹本身的信任顺序和侧面命令.
npm test # unit tests and the Reader corpus
node bin/crubal.ts test ../../corpus --level views # the corpus runner, case by case
node bin/crubal.ts read data.crubal --defs facets.crubal
node bin/crubal.ts print data.json --defs facets.crubal [--plain]
需要节点23.6或更晚(它直接运行TypeScript).
| 文件 | 对 |
|---|---|
src/tree.ts | 线条、注释、缩进、对分隔符(第2.1章) |
src/lex.ts | 引用、细节和短名单(2.5-2.7) |
src/defs.ts | 读者需要的定义:类型、数量、单位、行、级别(4.2、4.5、11.2) |
src/read-text.ts | 文本改为 JSON 表格 (2, 3) |
src/print-text.ts | jSON 表格为条形文字( 2. 9) |
src/canonical.ts | 装有套装的JSON(3.9) |
src/dictionary.ts | 定义为JSON、公布检查、解析、折叠、值检查(4、5) |
src/conditions.ts | 带有三等值空格的条件(6.3) |
src/units.ts | 启动单位表,直到标准单位包存在 |
src/rules.ts | 规则、快捷键、规则集检查和写引擎(6) |
src/store.ts | 木材、接收合同和接收、着陆和信任、部分匹配、证据(8、9) |
src/migrate.ts | 移徙食谱、检查和补充(10) |
src/exchange.ts | 合同检查、运行、提议和接受、边界(7、8.5.1) |
src/packages.ts | 软件包文件:前缀、信任条目、扩展(11) |
src/views.ts | 形状、观点、过滤器、受众和角色、预测和停滞(12) |
src/corpus.ts | (13个) |
接下来: 公布回购, 公布 @cruba/crubal,并开始crubal.com.