Skip to content

简介 ​

cpro 是一门以拼音编程为主、同时支持中文和英文编程的 C 系列编译型语言。它基于 LLVM 生成机器码,产出不依赖虚拟机和垃圾回收的原生可执行文件,目前支持 Windows(x86_64)和 Linux。

测试阶段

cpro 目前处于测试阶段,语法和标准库仍可能调整。遇到问题欢迎反馈。

设计取向 ​

cpro 的设计围绕一句话:代码做了什么,读一遍就该知道。

  • 显式类型:二元运算符写明运算类型,a +[i32] b;没有隐式类型提升,i32 和 i64 不能直接相加。
  • 显式意图:var b = a 永远是复制;要借用写 &a,要转移所有权写 move a,要提前释放写 destroy a。
  • 显式错误:会失败的函数在签名上标 fails,调用方必须处理,错误不会悄悄丢掉。
  • 显式危险:调用 C 函数、取地址这类操作必须放在 unsafe 块里,审计时搜索 unsafe 就能看到全部危险点。

拼音为主,三种写法 ​

cpro 以拼音编程为主:每个关键字、内建函数、标准库函数都有拼音写法,同时也支持中文和英文,三者完全等价,可以在同一个项目里混用。

拼音中文英文
hs函数fn
bl变量var
ruguo / fouze如果 / 否则if / else
fanhui返回return
dayin打印print

完整对照见 关键字。

一个小例子 ​

cpro
struct Point {
    x type i64,
    y type i64,
}

fn manhattan(p Point) i64 {
    return p.x +[i64] p.y
}

rukou() {
    var p type Point = { x: 3, y: 4 }
    print("距离:", manhattan(p))
}

rukou() 是程序入口,相当于其他语言的 main。

下一步 ​

  • 还没装 cpro:先到 下载 页获取安装包
  • 已经装好了:从 快速开始 写第一个程序

cpro 目前处于测试阶段