Releases: xiaoyi1212/EXBuilder
Releases · xiaoyi1212/EXBuilder
v0.4.5-JavaEdition
开发环境:OpenJDK17
- 本次更新util库用于操作列表
- 更新list关键字
list local name:"备注";
定义列表 - 优化常量池结构,增加list编译的语法树模块和中间代码转换器模块
v0.4.4-JavaEdition
开发环境:OpenJDK17
- 本次4.0系列更新重写了编译器架构
- 编译器新增中间代码转换器,将3.0的字节码进一步转换成更底层的字节码
- 函数传参完全参照JS语法
- 重写库的加载机制和架构,部分架构启用了1.0系列的解释器架构
v0.3.9-JavaEdition
开发环境: OpenJDK17
- 本次更新加入了return语句
- 不支持return语句后方直接跟入exe函数调用语句,支持return null;
- 修复了math库下部分函数无法处理传入的变量问题
- 修复了set语句遇到null类型时误判断为类型不匹配问题
v0.3.8-JavaEdition
开发环境: OpenJDK17
- 本次更新,更改了版本号EXVirtualMachine为OpenEXVirtualMachine
- 增加了全局变量池
- 增加了global(全局)和local(局部)两个修饰符,在value关键字后定义,代表全局变量或线程私有局部变量
v0.3.7-JavaEdition
开发环境: OpenJDK17
- 优化了部分本地函数的实现架构(调用方式不会改变,只是虚拟机换了一种实现代码)
- 新增util库,包含一些操作数据结构的函数
- 新增list函数,由create set add get4种状态码可操作列表
v0.3.6-JavaEdition
开发环境: OpenJDK17
- 本次更新修复了多线程的BUG
- 增加了vm.sleep函数,实现线程休眠
- 修复了计算字节码漏洞
注意! 新线程的变量不与旧线程共享,新线程无法调用旧线程变量
新线程的创建比较慢,创建大约1秒后才开始工作
计算1+2+3....+1000执行效率以及输出效率后与C++对比后得出,会比C++慢10-20毫秒
v0.3.5-JavaEdition
开发环境: OpenJDK17
- 此次更新实现了 -loadlib:<lib_name> 命令参数的功能
- 修复了词法解析器对 负数 解析异常的问题
- 外部库详细开发方法见 README.md
v0.3.4-JavaEdition
开发环境: OpenJDK17
- 此次更新修复了Catch块在未抛出异常时候仍然被执行的漏洞
- 增加了对 >=, <=, >, < 运算符的处理
- 增加了4个字节码
v0.3.3-JavaEdition
开发环境: OpenJDK17
- 紧急更新:修复了异常处理机制的漏洞
- 更改了执行引擎的字节码处理方式
- 加入了catch关键字
- 加入了异常处理机制
因异常处理机制加入,虚拟机的执行效率会有所降低
v0.3.2-JavaEdition
开发环境: OpenJDK-17
重写线程池结构
支持加载多个脚本文件
支持跨脚本调用函数
vm.valuedict函数新增形参lib
system.input函数调用时会在控制台输出 '>'来确保不是线程死循环导致阻塞
优化了词法分析解析效率
优化了命令行参数