# Chym **Repository Path**: iloverust/chym ## Basic Information - **Project Name**: Chym - **Description**: 让编程跟填空一样简单,跟音乐一样和谐! - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-02-24 - **Last Updated**: 2026-02-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

Chym Logo

Chym

让编程跟填空一样简单,跟音乐一样和谐 🎯

特性快速开始示例文档贡献

Version License Rust Version

--- ## 🎯 什么是 chym? chym(发音 /kɪm/)是一种创新的五列式编程语言,融合了 **Nim** 的高效和 **Julia** 的科学计算能力。 **核心理念**:让编程跟填空一样简单,跟音乐一样和谐 **命名由来**: - **chym** = 五列式语言,发音 /kɪm/ - **.chym** = 文件后缀 - **chym** = CLI 命令 ``` ┌────────┬────────┬────────┬────────┬────────┐ │ 宫 │ 商 │ 角 │ 徵 │ 羽 │ ├────────┼────────┼────────┼────────┼────────┤ │ x1 │ = │ 10 │ │ │ ← 填空式编程 └────────┴────────┴────────┴────────┴────────┘ ``` ## ✨ 特性 ### 🔄 管道操作符 - 数据流一目了然 ``` ┌────────┬────────┬────────┬────────┬────────┐ │ data │ |> │ filter │ even │ │ │ │ |> │ map │ double │ │ │ │ |> │ reduce │ add │ 0 │ └────────┴────────┴────────┴────────┴────────┘ ``` ### 📊 广播运算 - 张量操作原生支持 ``` ┌────────┬────────┬─────────────┬────────┬────────┐ │ a1 │ := │ [1, 2, 3] │ │ │ │ b1 │ .+ │ a1 │ 10 │ │ → [11, 12, 13] └────────┴────────┴─────────────┴────────┴────────┘ ``` ### 🎯 模式匹配 - 处理分支逻辑 ``` ┌────────┬────────┬────────┬────────┬────────┐ │ │ │ score │ │ │ │ | │ │ 90..100│ "A" │ │ │ | │ 80..89 │ "B" │ │ │ | │ _ │ "C" │ └────────┴────────┴────────┴────────┴────────┘ ``` ### ⚡ 智能执行 - 自动选择最优模式 | 场景 | 自动选择 | 启动时间 | | -------- | -------- | -------- | | REPL | 解释器 | 1ms | | 简单脚本 | 解释器 | 5ms | | 复杂计算 | JIT | 50ms | | 生产部署 | AOT | 0ms | ### 🚀 chym x 一键运行 ```bash chym x formatter file.chym # 无需安装,直接运行 ``` ## 📦 安装 ### 从源码编译 ```bash git clone https://github.com/JuSanSuiYuan/chym.git cd chym cargo build --release cargo install --path . ``` ### 验证安装 ```bash chym --version # chym v2026.2.22 ``` ## 🚀 快速开始 ### Hello World 创建 `hello.chym`: ``` ┌────────┬────────┬───────────┬────────┬────────┐ │ 宫 │ 商 │ 角 │ 徵 │ 羽 │ ├────────┼────────┼───────────┼────────┼────────┤ │ │ . │ "Hello!" │ │ │ └────────┴────────┴───────────┴────────┴────────┘ ``` 运行: ```bash chym run hello.chym # 输出: Hello! ``` ### 变量与运算 ``` ┌────────┬────────┬────────┬────────┬────────┐ │ 宫 │ 商 │ 角 │ 徵 │ 羽 │ ├────────┼────────┼────────┼────────┼────────┤ │ x1 │ = │ 10 │ │ │ → 不可变 │ y1 │ := │ 20 │ │ │ → 可变 │ z1 │ -> │ x1 + y1│ │ │ → 计算 │ z1 │ . │ │ │ │ → 打印 └────────┴────────┴────────┴────────┴────────┘ # 输出: 30 ``` ### 循环求和 ``` ┌────────┬────────┬────────┬────────┬────────┐ │ 宫 │ 商 │ 角 │ 徵 │ 羽 │ ├────────┼────────┼────────┼────────┼────────┤ │ s1 │ := │ 0 │ │ │ │ i1 │ .. │ 1..101 │ s1+=i1 │ │ │ s1 │ . │ │ │ │ └────────┴────────┴────────┴────────┴────────┘ # 输出: 5050 ``` ## 📚 示例 ### 斐波那契数列 ``` ┌────────┬────────┬────────────┬────────┬────────┐ │ n1 │ := │ 10 │ │ │ │ a1 │ := │ 0 │ │ │ │ b1 │ := │ 1 │ │ │ │ i1 │ .. │ 0..n1 │ │ │ │ a1 │ . │ │ │ │ │ t1 │ -> │ a1 + b1 │ │ │ │ a1 │ <- │ b1 │ │ │ │ b1 │ <- │ t1 │ │ │ └────────┴────────┴────────────┴────────┴────────┘ # 输出: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34 ``` ### 管道数据处理 ``` ┌────────┬────────┬────────────────┬────────┬────────┐ │ x1 │ := │ [3, 1, 4, 1, 5]│ │ │ │ l1 │ |> │ x1 │ len │ │ │ s1 │ |> │ x1 │ sort │ │ │ r1 │ |> │ x1 │ reverse│ │ │ l1 . s1 . r1 │ . │ │ │ │ └────────┴────────┴────────────────┴────────┴────────┘ # 输出: 5, [1, 1, 3, 4, 5], [5, 1, 4, 1, 3] ``` ## 🤖 AI 开发优势 chym 对 AI 开发有天然优势: ### 神经网络层定义 ``` ┌────────┬────────┬─────────────────┬────────┬────────┐ │ x1 │ |> │ linear │ 784,256│ │ │ x1 │ |> │ relu │ │ │ │ x1 │ |> │ dropout │ 0.2 │ │ │ x1 │ |> │ linear │ 256,10 │ │ │ r1 │ |> │ x1 │ softmax│ │ └────────┴────────┴─────────────────┴────────┴────────┘ ``` **对比 Python**: ```python x = F.softmax(self.linear2(F.dropout(F.relu(self.linear1(x)), 0.2))) ``` 👉 [查看 AI 开发优势详解](docs/AI_ADVANTAGES.md) ## 📖 文档 | 文档 | 说明 | | ----------------------------- | ---------------- | | [语言规范](docs/SPEC.md) | 完整的语言定义 | | [快速入门](docs/QUICKSTART.md) | 10分钟上手指南 | | [示例代码](docs/EXAMPLES.md) | 丰富的代码示例 | | [AI 优势](docs/AI_ADVANTAGES.md) | AI 开发天然优势 | | [物理仿真](docs/物理仿真.md) | 物理仿真系统详解 | ## 🔬 物理仿真 Chym 提供完整的物理仿真能力,融合了 **MoonBit 的值类型优化** 和 **JAI 的系统跟踪** 技术。 ### 物理单位作为一等公民 ``` ┌────────────┬────────────┬─────────────────┬─────────────┬────────┐ │ 宫 │ 商 │ 角 │ 徵 │ 羽 │ ├────────────┼────────────┼─────────────────┼─────────────┼────────┤ │ length │ = │ 10 m │ │ │ │ time │ = │ 5 s │ │ │ │ speed │ -> │ length / time │ │ │ └────────────┴────────────┴─────────────────┴─────────────┴────────┘ # 输出: 2 m/s ``` ### 预定义材料库 | 材料 | 热导率 W/(m·K) | 密度 kg/m³ | 弹性模量 GPa | | -------- | --------------- | ----------- | ------------ | | steel | 50 | 7800 | 200 | | aluminum | 237 | 2700 | 70 | | copper | 401 | 8960 | 110 | | water | 0.6 | 1000 | - | | air | 0.026 | 1.225 | - | ### 支持的方程 - 热传导方程 - 扩散方程 - 纳维-斯托克斯方程 - 弹性力学方程 👉 [查看物理仿真详解](docs/物理仿真.md) ## 🛠️ CLI 命令 ```bash chym run script.chym # 运行脚本 chym repl # 交互式 REPL chym build script.chym # AOT 编译 chym test test.chym # 运行测试 chym bench bench.chym # 性能测试 chym x formatter file.chym # 一次性执行 (类似 uvx/npx) chym info script.chym # 分析代码 chym init myproject # 创建新项目 ``` ## 📊 性能对比 | 操作 | Python | Julia | chym | | -------- | ------ | ----- | -------------- | | 启动时间 | 100ms | 500ms | **1ms** | | 简单循环 | 慢 | 中 | **快** | | 数值计算 | 中 | 快 | **快** | | 内存占用 | 50MB | 100MB | **10MB** | ## 🤝 贡献 欢迎贡献代码、报告问题或提出建议! 1. Fork 本仓库 2. 创建特性分支 (`git checkout -b feature/amazing`) 3. 提交更改 (`git commit -m 'Add amazing feature'`) 4. 推送到分支 (`git push origin feature/amazing`) 5. 创建 Pull Request ## 📄 许可证 本项目采用 [木兰宽松许可证 v2.0](LICENSE) 开源。 ## 🙏 致谢 - 灵感来源于 [Nim](https://nim-lang.org/) 和 [Julia](https://julialang.org/) ## 👤 作者 - **Gitee / Gitcode**: [ILoveRust](https://gitee.com/ILoveRust) - **GitHub**: [JuSanSuiYuan](https://github.com/JuSanSuiYuan) ---

让编程跟填空一样简单,跟音乐一样和谐 🎯