我为什么开发了一个新的编程语言CatBase
很久没在csdn写文章了,一直在做机器人去了,一转眼做机器人做了好几年了。
我*近想跟大家推荐一个我团队正在使用,也是我们自己研发的编程语言CatBase。
目前官网访问地址是:
http://catbase-lang.com,
也可以在github上找到这个项目:
https://github.com/DoRobotAi/catbase-lang
要说起来为啥我要开发一个编程语言呢?
首先肯定不是因为吃的太饱... 🤭
一、创作初衷
在研发机器人和嵌入式应用的时候,遇到了一些问题:
1、python非常好用,但是无法跑在紧凑型的小板子上,主要是小板子内存和存储空间都很小,python动辄就几百兆,根本跑不了。很多时候都需要用C开发。
2、我团队小伙伴很多都是python程序员,基本都是写python的,对C不是很熟悉。
那么,有没有一种语言,可以用python的语法,又可以编译成C的二进制代码呢?
我找了一些都不是很试用,有些语言虽然实现了python语法,但是还是不够简洁。
并且,基于小板子上常用的库,都需要外部引用,并不是编程语言内置的。
于是早在2021年就萌生了写一个编程语言的想法。
终于在近期,代码逐步成熟,把串口、TCP /IP、HTTP、WebSocket、多线程等等,统统内置到这个语言中。
二、命名来由
那么为什么名字叫CatBase呢?
Cat 是小猫的意思,同时,又是 “C” at base的意思,也就是说CatBase语言的*底层还是C一样的二进制。
于是我就用Cat作为了这个语言的名字,也用小猫作为这个语言的logo了。
三、CatBase语言特点
CatBase 是一种全新的静态类型编程语言,专为 AI 应用研发与快速开发而设计,由来自中国的钟声设计并研发。它的语法类似 Python,但比 Python 更简单、更易学;同时能够编译为本地可执行文件,具有优异的运行性能,特别适合在极小运行环境下替代 C 语言。
记住 5 个不同,就能顺畅使用 CatBase:
1. 程序块不再受制于缩进规则,而是使用 {} 大括号。
2. 不依赖解释器,直接编译为本地二进制代码。
3. 无需学习 C 指针和内存管理,用 Python 语法即可编写 C 才能编写的程序。
4. 强类型:变量必须声明类型,函数返回值必须声明类型,类型名称大小写敏感。
5. 可方便调用 .so/.a 库,自身也可编译为 .so/.a 库。
CatBase 编程语言是为 Ai 应用研发而生,极小运行环境下可以替代 c,支持 python 语法。
给大家看看*简单的一个CatBase代码的样子:
#引用.so的例子
import "/usr/lib/x86_64-linux-gnu/libm.so" as math
from math import sqrt(x: float) -> float
from math import sin(x: float) -> float
#声明函数的例子
def test1() -> int {
return 10
}
def main(args:list[str]) {
result2:float = math.sqrt(16.0)
print("math.sqrt(16.0)=", result2)
#list列表例子
int_list:list[int] = [1, 2, 3]
print(int_list)
str_list:list[str] = ["a", "b", "c"]
print(str_list)
#dict字典的例子
dictx:dict[int, bool] = {1:True,2:True,3:False}
print(dictx)
print(dictx[3])
#打印的例子
t1: int = test1()
print(f"return value:{t1}")
print("return value:", t1)
print("return value:" + str(t1))
}
AI写代码
python
运行
大家看,是不是就是python语法?
其实就是不用再适应别扭的缩进规则了,用大括号{}就可以了,也不再看别人代码的时候不知道变量类型了,每一个变量都必须声明变量类型。
除此之外,基本和python没啥区别了,当然还内置了一些函数:串口、TCP/IP、HTTP、WebSocket、多线程等等。
这些内置函数直接用,不需要引用其他包。
然后就是编译和运行:
./bin/catbasecc ./examples/test_aa_HelloWorld.cat #编译
./bin/catbasecc run ./examples/test_aa_HelloWorld.cat #编译并运行
AI写代码
bash
编译非常简单,同时还提供一个编译并运行的模式。
欢迎大家下载和使用这个新的编程语言。
网址:http://catbase-lang.com
钟声
2026-07-21 0:21
扫一扫,关注我们