115 lines
2.1 KiB
Markdown
115 lines
2.1 KiB
Markdown
# Vety 编程语言
|
||
|
||
Vety 是一个现代化的静态类型编程语言,专注于简洁性、安全性和高性能。它结合了多种现代编程语言的优秀特性,提供了优雅的语法和强大的类型系统。
|
||
|
||
## 主要特性
|
||
|
||
- **静态类型系统**:提供强大的类型检查和类型推导
|
||
- **现代化语法**:简洁直观的语法设计
|
||
- **函数注解**:支持 `@test`、`@debug` 等注解
|
||
- **变量声明**:支持 `let` 和 `const` 声明
|
||
- **复杂数据类型**:支持数组、映射等数据结构
|
||
- **表达式语法**:支持条件表达式、三元运算符等
|
||
- **错误处理**:内置的异常处理机制
|
||
- **内存安全**:自动内存管理
|
||
上面你就看看就行了,基本都没实现。
|
||
|
||
## 注意
|
||
现在只是暂存代码和测试,现在啥也没完成。
|
||
|
||
## 测试
|
||
``` bash
|
||
cmake --build build --target vety
|
||
./build/vety
|
||
```
|
||
|
||
## 项目结构
|
||
```
|
||
Vety
|
||
├── demo # 示例代码
|
||
├── doc # 文档
|
||
├── lib # vt库文件
|
||
├── parser # 语法分析器
|
||
├── test # 测试
|
||
├── utils # 工具
|
||
├── vm # 虚拟机
|
||
├── CMakeLists.txt # cmake文件
|
||
├── README.md # 项目说明
|
||
```
|
||
|
||
## 语法示例
|
||
|
||
### 基础语法
|
||
|
||
```vety
|
||
// 变量声明
|
||
let a: i32 = 1
|
||
const b: i32 = 2
|
||
|
||
// 数组
|
||
let arr: i32[] = [64, 34, 25, 12, 22, 11, 90]
|
||
|
||
// Map对象
|
||
let m: any = {
|
||
a: 6,
|
||
b: 9,
|
||
c: {
|
||
d: 9
|
||
}
|
||
}
|
||
|
||
// 函数定义
|
||
func add(a: i32, b: i32): i32 {
|
||
return a + b
|
||
}
|
||
```
|
||
|
||
### 控制流
|
||
|
||
```vety
|
||
// if 语句
|
||
if (condition) {
|
||
// ...
|
||
} else if (condition2) {
|
||
// ...
|
||
} else {
|
||
// ...
|
||
}
|
||
|
||
// for 循环
|
||
for (let i: i32 = 0; i < n; i++) {
|
||
// ...
|
||
}
|
||
|
||
// while 循环
|
||
while (condition) {
|
||
// ...
|
||
}
|
||
```
|
||
|
||
### 错误处理
|
||
|
||
```vety
|
||
try {
|
||
// 可能抛出异常的代码
|
||
} catch (e) {
|
||
// 处理异常
|
||
}
|
||
```
|
||
|
||
## 安装
|
||
|
||
目前 Vety 正在积极开发中,安装步骤将在稳定版本发布后提供。
|
||
|
||
## 使用文档
|
||
|
||
详细的语言规范和 API 文档正在编写中。
|
||
|
||
## 贡献
|
||
|
||
Vety是一个开源项目,我们欢迎社区贡献。如果你发现了bug或有改进建议,请提交issue或pull request。
|
||
|
||
## 许可证
|
||
|
||
MIT License
|