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

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

相关推荐
三品吉他手会点灯4 小时前
C语言学习笔记 - 50.流程控制4 - 流程控制为什么非常非常重要
c语言·开发语言·笔记·学习
在放️6 小时前
Python 爬虫 · 第三方代理接入与合规使用
开发语言·爬虫·python
KANGBboy7 小时前
java知识五(继承)
java·开发语言
c++之路7 小时前
Bazel C++ 构建系列文档(三):构建第一个 C++ 项目
开发语言·c++
AI人工智能+电脑小能手7 小时前
【大白话说Java面试题 第117题】【并发篇】第17题:线程有几种状态,之间如何转换?
java·开发语言·面试
聚名网8 小时前
域名net,com,cn有区别吗?有哪些不同呢?
服务器·开发语言·php
牛油果子哥q8 小时前
STL set与map底层精讲,红黑树适配原理、有序去重特性、迭代器遍历、API实战与面试核心考点全解
开发语言·数据结构·c++·面试
foundbug9998 小时前
直流电机 PID 速度控制 MATLAB 仿真程序
开发语言·matlab
Tian_Hang9 小时前
C++原型模式(Protype)
开发语言·c++·算法
天天讯通9 小时前
OKCC 呼叫中心安全性能全解析:技术防护与管理措施指南
大数据·开发语言·网络·人工智能·安全·语音识别