【文言心】- 中文编程语言> 一门追求同像性(Homoiconicity)的中文编程语言,代码即数据,数据即代码。

【文言心】- 中文编程语言

一门追求同像性(Homoiconicity)的中文编程语言,代码即数据,数据即代码。

repo:zhongwen:基于Lisp的中文编程语言项目 - AtomGit | GitCode

🌟 特性

  • 中文语法 - 使用中文动词和标点,符合中文思维习惯
  • 同像性 - 支持Quote/Eval,代码可作为数据操作
  • 管道操作 - 使用中文逗号连接操作,流畅表达数据流
  • 高阶函数 - 内置(map)、(filter)、(reduce)
  • REPL环境 - 交互式开发体验
  • 错误友好 - 精确的错误定位和友好的建议

🚀 快速开始

安装依赖

复制代码
# 安装SBCL(Steel Bank Common Lisp)
# Windows: 下载安装包 https://www.sbcl.org/
# Linux: sudo apt-get install sbcl
# macOS: brew install sbcl

运行REPL

复制代码
python repl.py

Hello World

复制代码
印"Hello World"。

第一个程序

复制代码
# 基本运算
1加2。              # → 3

# 管道操作
10加5,乘2。        # → 30

# 列表操作
列1 2 3,皆乘2。    # → (2 4 6)

📖 语法说明

基本运算

复制代码
1加2。      # 加法 → 3
5减3。      # 减法 → 2
3乘4。      # 乘法 → 12
10除2。     # 除法 → 5
模10 3。    # 取模 → 1

管道操作

使用中文逗号连接多个操作:

复制代码
10加5,乘2,除3。    # → 10

列表

复制代码
列1 2 3。            # 创建列表 → (1 2 3)
列1 2 3,首。        # 首元素 → 1
列1 2 3,余。        # 余元素 → (2 3)
入1列1 2 3。         # 索引取值 → 2

高阶函数

复制代码
列1 2 3,皆乘2。     # 映射 → (2 4 6)
列1 2 3 4 5,只大3。 # 过滤 → (4 5)
列1 2 3,归加0。     # 归约 → 6

变量定义

复制代码
定x为10。
x乘2。              # → 20

条件表达式

复制代码
若1则2否则3。        # → 2

同像性(Quote/Eval)

复制代码
"1加2"。           # Quote(中文引号)→ (1 加 2)
行"1加2"。         # Eval → 3

# 也支持波浪号+中文引号
~"1加2"。          # Quote → (1 加 2)

字符串

复制代码
"Hello World"。      # 字符串字面量
长度"Hello"。        # 长度 → 5
连接"Hello""World"。 # 连接 → "HelloWorld"
印"Hello"。          # 打印

注释

复制代码
# 这是注释
注:这也是注释

1加2。  # 行尾注释

🎯 示例

计算阶乘

复制代码
# 计算5的阶乘
列1 2 3 4 5,归乘1。  # → 120

判断奇偶

复制代码
# 判断7是否为奇数
模7 2。              # → 1 (奇数)

列表求和

复制代码
# 计算1到10的和
列1 2 3 4 5 6 7 8 9 10,归加0。  # → 55

📚 文档

🛠️ 开发

项目结构

复制代码
newlisp/
├── repl.py              # REPL交互环境
├── wenyanxin/
│   └── errors.py        # 错误处理
├── examples/            # 示例代码
├── design.md            # 设计文档
├── tech.md              # 技术需求
└── README.md            # 本文件

运行测试

复制代码
python test_comments.py          # 注释测试
python test_strings_complete.py  # 字符串测试
python test_builtin_functions.py # 内置函数测试

📊 功能进度

  • ✅ v0.1: 基本运算与管道
  • ✅ v0.2: 列表与高阶函数
  • ✅ v0.3: 变量与控制流
  • ✅ v0.4: 同像性(Quote/Eval)
  • ✅ 注释支持
  • ✅ 字符串支持
  • ✅ 内置函数(首、余、入、模)
  • ✅ 错误处理系统
  • ✅ REPL交互环境

🤝 贡献

欢迎贡献代码、报告问题或提出建议!

📄 许可证

MIT License

🙏 致谢

  • 灵感来源于Lisp的同像性
  • 底层运行时使用SBCL
  • 开发语言使用Python

【文言心】- 让编程更符合中文思维! 🎉

相关推荐
猫猫的小茶馆10 小时前
【Python】函数与模块化编程
linux·开发语言·arm开发·驱动开发·python·stm32
计算机安禾10 小时前
【c++面向对象编程】第38篇:设计原则(二):里氏替换、接口隔离与依赖倒置
开发语言·c++
_院长大人_10 小时前
Java Excel导出:如何实现自定义表头与字段顺序的完全控制
java·开发语言·后端·excel
code_whiter10 小时前
C++1进阶(继承)
开发语言·c++
来恩100310 小时前
JSTL的标签库种类
java·开发语言
Miss_min10 小时前
128K长序列数据生成
开发语言·python·深度学习
小宋00111 小时前
QT中控件qss样式修改
开发语言·qt
图像僧11 小时前
vs2019中的属性页使用说明
java·开发语言·jvm
YOU OU11 小时前
SpringBoot 日志
java·开发语言
江南十四行11 小时前
并发编程(二)
java·开发语言