Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 CP 语言 — 纯中文编程语言

CP 语言是一款支持原生中文语法的编程语言。 所有关键字、标准库函数都有完整的中文别名,可以使用纯中文编写程序。

快速开始

# 编译(需要 Visual Studio 2022)
build_msvc.bat

# 字节码 VM 执行(开发模式,毫秒级响应)
cplang -c 图书管理.cp

# JIT 加速执行(热点检测)
cplang -c --hotspot 图书管理.cp

# 全量 JIT 编译
cplang -j 图书管理.cp

# AOT 编译为独立 .exe(部署模式)
cplang -a -o 图书管理.exe 图书管理.cp

# 交互式 REPL
cplang -r

中文示例

// 你好,世界!
打印("你好,世界!");

// 变量和计算
变量 半径 = 10;
变量 面积 = 圆周率() * 半径 * 半径;
打印("面积: " + 转字符串(面积));

// 条件和循环
变量 i = 0;
当 (i < 10) {
    如果 (i % 2 == 0) {
        打印(转字符串(i) + " 是偶数");
    }
    i = i + 1;
}

// 函数
函数 斐波那契(n) {
    如果 (n <= 1) { 返回 n; }
    返回 斐那契(n - 1) + 斐那契(n - 2);
}
打印(斐那契(10));

双引擎架构

源码(.cp)
    │
    ▼
──Compiler(共享前端)──
   Lexer → Parser → Semantic → AST
    │
    ├──→ DevEngine ───────────── 开发/学习
    │       ├ 字节码 VM(解释执行)
    │       ├ + JIT 热点检测(自动加速)
    │       └ + 全量 JIT(预热加速)
    │
    └──→ AOTEngine ───────────── 部署/发布
            LLVM IR → .obj → .exe
            运行时零依赖
模式 命令 启动速度 执行速度 适用场景
字节码 VM -c < 0.1s 基准 开发、调试、脚本
热点 JIT -c --hotspot < 0.1s 热点函数 95x 长时间运行任务
全量 JIT -j < 0.1s + 预热 95x 加速 计算密集型
AOT -a -o app.exe 3-6s 编译 原生速度 发布部署

主要特性

  • 纯中文语法 — 关键字、函数名、变量名均支持中文
  • 中文标准库 — 800+ 函数,775+ 中文别名
  • 双引擎架构 — DevEngine(VM+JIT)+ AOTEngine
  • 渐进类型系统 — 动态起步 + 类型标注获 JIT 加速
  • NaN-Boxing — 64位紧凑值表示,零堆分配
  • 垃圾回收 (GC) — 三色标记-清除,自动管理内存
  • 中文错误信息 — 编译器错误、运行时异常均为中文
  • 图形支持 — Raylib + ImGui 中文绑定
  • 网络支持 — TCP/HTTP/WebSocket
  • 数据库支持 — SQLite/MySQL/Redis
  • 并发编程 — 线程/互斥/条件/信号量/Future/Channel/RWLock
  • 通用支持 — 函数泛型 + 结构体泛型 + 异常处理

标准库概况

📖 完整 API 文档请查看 docs/STDLIB_API.md

  • 容器 — 数组/表/栈/队列/链表/集合/映射等 26 个模块
  • 字符串 — 正则/Base64/编码/SHA256/UUID/CSV
  • 并发 — 10 模块 39 函数
  • 加密 — AES/随机数/压缩
  • 数据库 — SQLite/MySQL/Redis
  • 图形 — Raylib + ImGui
  • 网络 — HTTP/TCP/UDP/DNS/WebSocket

构建要求

  • Windows 10+
  • Visual Studio 2022 (MSVC v143)
  • 可选: LLVM 18+ (启用 JIT)

目录结构

src/            编译器源码
  lexer/        词法分析器
  parser/       语法分析器(已拆分:核心/声明/语句/表达式)
  semantic/     语义分析器
  codegen/      代码生成器(字节码 + LLVM IR)
  vm/           虚拟机(字节码执行 + GC)
  jit/          JIT 编译器(ORC JIT 桥接 + 分派)
  optimizer/    优化器(常量折叠/死代码消除/内联/循环展开/尾递归)
  stdlib/       标准库(~60 个 C++ 实现文件)
  module/       模块系统
  repl/         交互式 REPL
  cpkg/         包管理器
  aot/          AOT 编译
include/        头文件目录
examples/       示例程序
tests/          测试用例
docs/           文档

💝 赞助支持

CP 语言是一个独立开发的开源项目。如果它对你有帮助,欢迎请开发者喝杯咖啡 ☕

赞助二维码
微信 / 支付宝扫码赞助

许可证

MIT

About

恋语——中文编程语言 | LLVM JIT/AOT 工业级性能 | 开源免费

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages