diff options
| -rw-r--r-- | readme_cn.rst | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/readme_cn.rst b/readme_cn.rst new file mode 100644 index 0000000..cc7072b --- /dev/null +++ b/readme_cn.rst @@ -0,0 +1,81 @@ +Psi CLI 语言 +======================== + +Psi 是一门新的编程语言,在设计时考虑了简单性、灵活性和性能。它提供了一种简洁直观的语法,易于读写,使其成为初学者和经验丰富的程序员的绝佳选择。 + +特征 +-------- + +- `词法分析器模块`_: 词法分析器模块负责将源代码转换为一系列标记。它识别语言的基本元素,例如标识符、关键字、运算符和文字。 + +- `程序解析器模块`_: 程序分析器模块采用词法分析器模块生成的标记序列,并将其转换为抽象语法树(Abstract Syntax Tree,后译 AST)。AST 是一种树状数据结构,它以更接近编程语言语法结构的方式表示源代码。``['OPERATOR', 'IDENTIFIER', 'SEPARATOR', 'SEPARATOR', 'CONTROL', 'IDENTIFIER', 'OPERATOR', 'INTEGER', 'SEPARATOR', 'IDENTIFIER', 'SEPARATOR', 'IDENTIFIER', 'OPERATOR', 'IDENTIFIER', 'SEPARATOR', 'IDENTIFIER', 'SEPARATOR', 'EOF']`` + +- `内置类型模块`_: 该模块定义了 Psi 语言的内置类型,例如列表和字典。它提供了用于创建和操作这些类型的实例的函数。 + +- `错误处理模块`_: 此模块提供在运行程序时捕获和处理错误的机制。它定义了一组异常类和函数,用于抛出和捕获这些异常。 + +- `执行环境模块`_: 该模块定义了 Psi 语言的执行环境,包括变量的范围和生命周期。它提供了用于在执行环境中定义和查找变量的函数。 + +- `解释器模块`_: 该模块的主要作用是遍历 AST 并在执行环境中执行相应的操作。 + +- `数学基础模块`_: 该模块提供基本的数学函数和常数,如加法、减法、乘法和除法。 + +- `文档模块`_: 该模块使用 reStructuredText 和 Sphinx 构建文档,提供 API 接口描述和使用示例。 + +.. _`词法分析器模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/lexer.py +.. _`程序解析器模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/parser.py +.. _`内置类型模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/type.py +.. _`错误处理模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/exception.py +.. _`执行环境模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/execution.py +.. _`解释器模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/interpreter.py +.. _`数学基础模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/mathematics.py +.. _`文档模块`: https://github.com/HydroRoll-Team/psi/blob/main/docs + +开始 +--------------- + +如何使用 Psi ?你可以克隆存储库并按照自述文件中的说明进行操作。该存储库包括一组完整的示例,用于演示该语言的各种功能。 + ++---------------------+---------------------+-----------------------------------------+---------------------------------------------+ +| *数据结构* | *数据类型* | *关键字* | *特殊字符* | ++=====================+=====================+=========================================+=============================================+ +| List | Integer | ``reply`` ``ask`` | ``?``: if, ``!``: else, ``|``: condition | ++---------------------+---------------------+-----------------------------------------+---------------------------------------------+ +| Dictionary | Float | ``import`` ``export`` | ``==`` ``<`` ``>`` ``!=`` ``~=`` ``=`` | ++---------------------+---------------------+-----------------------------------------+---------------------------------------------+ +| Set | Boolean | ``def`` ``call`` | ``&``: parallel, ``~``: delay | ++---------------------+---------------------+-----------------------------------------+---------------------------------------------+ +| Tuple | String | ``list`` ``dict`` ``set`` ``tuple`` | ``#`` ``""""...""""`` | ++---------------------+---------------------+-----------------------------------------+---------------------------------------------+ +| Array | Null | ``try`` ``catch`` ``assert`` | ``>>``: output stream, ``<<``: input stream | ++---------------------+---------------------+-----------------------------------------+---------------------------------------------+ +| Queue | Object | ``alias`` | ``@``: hook events | ++---------------------+---------------------+-----------------------------------------+---------------------------------------------+ +| Stack | Function | ``wait`` ``async`` ``cancel`` ``yield`` | ``*``: repeat | ++---------------------+---------------------+-----------------------------------------+---------------------------------------------+ +| Graph | Class | ``match`` ``search`` ``replace`` | ``&&``: and, ``||``: or, ``!``: not | ++---------------------+---------------------+-----------------------------------------+---------------------------------------------+ +| Tree | Interface | ``namespace`` | ``{}``: code block, refer | ++---------------------+---------------------+-----------------------------------------+---------------------------------------------+ +| LinkedList | Enum | ``loop`` ``break`` ``continue`` | ``=>``: functional program | ++---------------------+---------------------+-----------------------------------------+---------------------------------------------+ + +贡献 +------------ + +欢迎对 Psi 项目做出贡献。如果你有功能请求、错误报告或改进建议,请在项目的 GitHub 页面上提出。如果你希望贡献代码,请分叉存储库并提交拉取请求。 + +如何构建文档 +^^^^^^^^^^^^^^^^^ + +:: + + git clone https://github.com/HydroRoll-Team/psi.git + cd psi/psi/docs + sphinx-build -b html . _build/html + + +许可证 +------- + +Psi是一款开源软件,根据 MIT 许可证获得许可,这意味着你可以根据本许可的条款自由使用、修改和分发它。 |
