Files
Fig-TreeWalker/README_ZH-CN.md
2026-02-04 21:04:03 +08:00

93 lines
2.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Fig 语言 - 现代脚本语言
[Fig-Gitea](https://git.fig-lang.cn/PuqiAR/Fig)
[English](README.md "英文版本")
**Fig** 是一种动态强类型的编程语言专为清晰性、安全性和现代开发实践而设计。Fig 融合了 Go、Rust 和 JavaScript 的灵感,旨在提供高效的开发体验,同时保持强大的类型安全。
[语言入门教程(zh_CN)](docs/zh_CN/01-简介.md "第一章")
## 特性
### 🚀 核心语言特性
- **动态类型与类型推断** - 强类型系统,最少类型注解
- **现代控制流** - 完整的 `for` 循环支持,正确的作用域管理
- **一等公民函数** - Lambda 表达式和闭包
- **丰富的数据结构** - 结构体、列表、映射和元组
- **内存安全** - 无空指针异常,自动内存管理
### 🔧 技术亮点
- **三级循环作用域** - 迭代中正确的变量隔离
- **智能分号处理** - 使用 RAII 守卫的灵活语句终止
- **全面的错误处理** - 带有源码位置的详细错误信息
- **干净的 C++ 实现** - 现代 C++23使用 RAII 和智能指针
### 使用教程
1. 克隆存储库:
```bash
git clone https://git.fig-lang.cn/PuqiAR/Fig.git
# 推荐
```
```bash
git clone https://github.com/PuqiAR/Fig.git
```
2. 切换到项目目录:
```bash
cd Fig
```
3. 构建项目:
```bash
xmake build Fig
```
4. 运行程序:
```bash
xmake run Fig [file]
```
`[file]`替换为输入文件的路径。
## 语言设计哲学
Fig 围绕几个核心原则设计:
1. **清晰优于巧妙** - 代码首先应该可读
2. **默认为安全** - 在编译时防止常见错误
3. **现代人机工程学** - 开发者体验很重要
4. **渐进式学习** - 入门简单,需要时功能强大
## 性能概览
**版本:** 0.4.2-alpha (树遍历解释器)
**测试硬件:** i5-13490F, Windows 11
**计算 Fibonacci(30) 的执行时间:**
- 朴素递归: **11.72秒**
- 记忆化: **0.93毫秒** (快12,600倍)
- 迭代: **0.37毫秒** (快31,300倍)
- 尾递归: **0.40毫秒** (快29,200倍)
**可视化对比:**
```
朴素递归 : ████████████████████████████████████████ 11.72秒
记忆化递归 : ▉ 0.93毫秒
迭代算法 : ▍ 0.37毫秒
尾递归 : ▎ 0.40毫秒
```
**核心发现:** 在此树遍历实现中,算法选择主导性能表现。
**详细报告:** [English](./docs/benchmark_result/benchmark_result_en_0.4.2-alpha.md) | [中文](./docs/benchmark_result/benchmark_result_zh_0.4.2-alpha.md)
## 语言文档
在 docs/zh_CN/... 查看更多
我们正在寻找译者来帮助翻译项目文件以便于不同语言社区的使用