【文言心】- 中文编程语言> 一门追求同像性(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

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

相关推荐
淼澄研学几秒前
Python实战:基于LangChain与Chroma构建企业级RAG知识库问答系统
开发语言·python·langchain
4311媒体网17 分钟前
帝国CMS网站自定义搭建技巧
服务器·开发语言·前端
布莱克60523 分钟前
C++拷贝构造与拷贝赋值运算符的区别详解
开发语言·c++
lhldsg41 分钟前
全民健身解决方案:从共享球场到智能运营的技术实践
java·大数据·开发语言·需求分析
归去来?1 小时前
Python 常用优雅写法
开发语言·python
devilnumber1 小时前
Java 30 组高频技术 / 知识点多角度对比
java·开发语言
何以解忧,唯有..2 小时前
Python 异常处理完全指南:从基础到高级实践
开发语言·前端·python
gugucoding2 小时前
57. 【Java】日志框架:SLF4J与Logback
java·开发语言·logback
此生决int2 小时前
深入理解C++系列(15)——AVL树
开发语言·c++
筱璦2 小时前
PHP+ VUE3机构级股票分仓管理交易系统源码可出
开发语言·php·vue3·量化·股票分仓