# 润下语言周易第一版,python版本 **Repository Path**: feegon/runixa_py ## Basic Information - **Project Name**: 润下语言周易第一版,python版本 - **Description**: 润下语言不仅仅是技术工具,更是连接古老智慧与现代科技的桥梁,开创人脑人心编程新范式 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-26 - **Last Updated**: 2026-01-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 润下编程语言 (Runxia Programming Language) 润下编程语言是一门简单易学的编程语言,采用中文关键字设计,降低了编程入门门槛。本项目包含了完整的语言实现,包括词法分析器、语法解析器、解释器、编译器以及分布式客户端等核心组件。 ## 语言特点 - **中文关键字**: 使用中文词汇作为语言关键字,如 `如果`(if)、`循环`(while)、`函数`(function)等 - **简洁语法**: 语法设计简洁明了,接近自然语言表达 - **丰富数据类型**: 支持数值、字符串、列表、哈希表等多种数据类型 - **内置函数**: 提供常用功能内置函数,包括文件操作、数学运算、字符串处理等 - **跨平台**: 基于Python实现,支持Windows、Linux、macOS等操作系统 ## 核心组件 ### 词法分析器 (lexer_rx) 负责将源代码转换为词法单元(Token),支持识别数字、字符串、标识符、关键字等各类语法元素。词法分析器采用状态机设计,能够准确识别多行注释、单行注释以及各种运算符。 ### 语法解析器 (parser_rx) 将词法单元转换为抽象语法树(AST),实现了递归下降解析算法。解析器支持表达式解析、语句解析、函数定义、流程控制等语法结构,并提供了优先级管理机制来处理不同优先级的运算。 ### 解释器 (evaluator_rx) 负责执行抽象语法树,实现了完整的表达式求值、语句执行、函数调用等核心功能。解释器采用环境(Environment)机制来管理变量作用域,支持嵌套作用域的创建和销毁。 ### 运行时对象 (object_rx) 定义了语言运行时的各种对象类型,包括数值、字符串、布尔值、空值、列表、哈希表等。每种对象都实现了丰富的方法,支持链式调用和属性访问。 ### 编译器 (compiler_ys) 提供源代码加密和编译功能,支持生成加密的二进制文件,保护源代码不被直接查看。 ### 分布式客户端 (client_ys) 实现了分布式计算客户端,支持任务提交、文件上传、消息监听等功能,可与分布式服务器配合使用。 ## 环境要求 - Python 3.9 或更高版本 - 操作系统:Windows / Linux / macOS ## 安装方法 1. 克隆代码仓库到本地: ```bash git clone https://gitee.com/feegon/runixa_py.git ``` 2. 进入项目目录: ```bash cd runixa_py ``` 3. 安装依赖(如有需要): ```bash pip install -r requirements.txt ``` ## 使用方法 ### 交互模式 运行交互式解释器,体验语言的即时求值功能: ```bash python m_cg_repl.py ``` ### 执行脚本 运行润下语言编写的脚本文件: ```bash python m_ys.py script.rx ``` ### 编译脚本 将源代码编译为加密文件: ```bash python m_cg.py -i script.rx -o encrypted.qz ``` ### 生成AST 将源代码转换为JSON格式的抽象语法树: ```bash python m_ast.py script.rx ``` ## 代码示例 以下是润下语言的基本语法示例: ```ruby # 变量定义与赋值 变量 x = 10 变量 y = "润下编程" # 条件判断 如果 x > 5 { 打印("x大于5") } 否则 { 打印("x小于等于5") } # 循环语句 循环 i 从 0 到 10 { 打印(i) } # 函数定义 函数 加法(参数 a, 参数 b) { 返回 a + b } # 列表操作 变量 列表 = [1, 2, 3, 4, 5] 列表.添加(6) # 哈希表操作 变量 配置 = {"名称": "润下", "版本": "1.0"} 打印(配置.获取("名称")) ``` ## 内置函数 | 函数名 | 功能说明 | |--------|----------| | `打印(...)` | 输出内容到控制台 | | `类型(值)` | 返回值的类型 | | `数值(字符串)` | 将字符串转换为数值 | | `字符串(值)` | 将值转换为字符串 | | `文件路径()` | 获取当前脚本文件路径 | | `休眠(秒数)` | 程序暂停指定秒数 | ## 项目结构 ``` runixa_py/ ├── lexer_rx/ # 词法分析器模块 ├── parser_rx/ # 语法解析器模块 ├── evaluator_rx/ # 解释器模块 ├── node_rx/ # AST节点定义 ├── object_rx/ # 运行时对象定义 ├── compiler_ys/ # 编译器模块 ├── client_ys/ # 分布式客户端模块 ├── m_ast.py # AST生成工具 ├── m_cg.py # 编译器入口 ├── m_cg_repl.py # 交互解释器 ├── m_ys.py # 主程序入口 └── README.md # 项目说明文档 ``` ## 许可证 本项目采用 MIT 许可证开源,详情请参阅 LICENSE 文件。 ## 贡献指南 欢迎社区开发者为本项目贡献代码,包括但不限于: - 改进词法分析器和语法解析器 - 添加新的内置函数 - 优化解释器性能 - 完善文档和测试用例 ## 联系方式 - 项目地址:https://gitee.com/feegon/runixa_py - 问题反馈:请在项目仓库中提交 Issue ## 致谢 感谢所有为润下编程语言项目提供支持和建议的开发者。