项目简介
Methan0l是使用C++编写的动态类型、多范式编程语言解释器。它支持过程式、面向对象和函数式等多种编程范式,旨在提供嵌入式抽象语法树(AST)解释器,适用于小型应用程序、教学和实验。
项目的主要特性和功能
- 动态类型系统:运行时可更改变量类型。
- 多范式支持:涵盖过程式、面向对象和函数式编程范式。
- 丰富的数据类型:包含整数、浮点数、布尔值、字符串、列表、映射等。
- 强大的控制结构:支持条件语句、循环、函数定义和调用。
- 丰富的内置函数:提供数学、字符串处理、文件操作等函数。
- 简洁的语法:设计简洁易读,便于学习使用。
安装使用步骤
构建要求
GNU make
4.2+g++
10+libboost
Windows用户建议用MSYS2安装上述工具。
构建步骤
- 复制项目:
bash cd Methan0l
- 构建解释器和CLI:
bash cd build make all
- 构建解释器库(
libmethan0l.so
):bash cd build make lib
- 构建模块:
bash cd build make modules
或构建特定模块:bash cd modules/[module_name] make
- 创建发布包:
bash cd build make release
使用解释器
- 执行程序:
bash ./methan0l [interpreter-args] /path/to/src-file.mt0 [script-args]
- 启动交互模式:
bash ./methan0l [interpreter-args]
- 解释器参数:
--no-exit
:程序执行后暂停,等待用户输入。--cas
:启动CAS模式,保存并打印每个表达式的求值结果。--max-mem=123
:设置最大可分配堆容量(字节)。--initial-mem=123
:设置初始堆容量(字节)。--allocate-fully
:在解释器启动时完全分配堆。--no-heap-limit
:禁用堆限制,防止解释器在超过最大堆容量时抛出异常。--no-flat-buffer
:禁用单调缓冲区上游(用于测试,可能会被移除)。--version
:打印版本字符串。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】