更新记录
不定期的更新,如有问题可通过本站留言反馈,作者看到后会积极更新,欢迎大家积极反馈。
v1.0.5
2024.11.16- 新增
md5
标准库 - 新增
base64
标准库
- 新增
call
系统函数,用于函数回调 - 新增
number
系统函数,用于转为数字类型 - 新增
string
系统函数,用于转为字符串类型 - 新增
float
系统函数,用于转为浮点类型 - 新增
int
系统函数,用于转为整数类型 - 新增
array
系统函数,用于转为数组类型 - 新增
object
系统函数,用于转为对象类型 - 新增
json
系统函数,用于转为JSON字符串 - 新增
parse_json
系统函数,用于解析JSON字符串 - 新增
regex
系统函数,用于字符串转为正则对象 - 新增
is_null
系统函数,用于判断数据是否为Null - 新增
is_empty
系统函数,用于判断数据是否为空 - 新增
rand
系统函数,用于生成随机数
- 新增
Env
和Envs
系统环境变量 - 解决生成JSON字符串由智能指针造成无限循环的BUG
- 新增
math
标准库
- 增加箭头函数,支持
v->v*2
v->{v*2}
(v,k)->v*2
(v,k)->{v*2}
几种写法 - 增加对元组的支持,例如
(title,content,time) = article
- 系统函数增加
eval
- 优化json格式字符串,美化缩进
- 优化设置和获取变量值的代码,增强性能
-
http
标准库增加session
-
http
标准库增加cookie
-
file
标准库正式更名为fs
-
fs
标准库增加move
函数 -
http
标准库增加files
,用于文件上传,支持多文件上传 - 项目配置增加文件上传的临时目录配置
FILE_TEMP_PATH
- 新增
http
标准库,将旧有的Web端相关变量与函数放入http
中 - 新增标准库架构
- 增加
use
关键字,用于在当前作用域中引入库函数
v1.0.4
2024.10.29- 解决一些表达式中引起
Exit
、Return
、Break
、Continue
无效的BUG - 解决由于注释造成错误信息中的行号错误BUG
- 解决
Object
对象的下标只能为Str
类型的BUG - 字符串类型增加
to_number
原型函数 - 数字类型增加
to_number
原型函数 - 数组类型增加
to_string
原型函数
- 优化
class
类,支持成员变量预定义 - 增加
object
一系列原型函数
- 增加
exit
函数,用于退出程序 - 增加object一系列原型函数
- 优化三元和二元运算
- 增加
# TPL
关键字,用于声明字符串模板 - 修复对象自由赋值的BUG
- 优化各个数据类型转为字符串的函数
- File增加函数
basename
用于获取文件名 - File增加函数
filename
用于获取文件名称 - File增加函数
extension
用于获取文件后缀
- Web端增加session会话机制
- 修复对象的赋值运算BUG,例如:
+=
^=
等
v1.0.3
2024.10.22- 优化反斜杠字符串中的标签正则
- 反斜杠字符串中增加
{% %}
标签用于执行BT代码
- 修复正则表达式中因为反斜杠造成的BUG
- 增强正则表达式,增加捕获组名称设定
- 正式更换官网域名为:https://btlang.org
- 优化三元运算符
? :
- 新增字符串原型函数
parse
- 重构编译器内核,单线程智能指针改为多线程
- 更改数组函数结构
- 优化for循环性能以及简化一些细节代码逻辑
- 增加字符串函数原型
escape_html
- 增加字符串函数原型
unescape_html
- 增加二元运算符
?
- 增加三元运算符
? :
- 增强语法:单行多表达式之间可以逗号或分号或空格
- 加后赋值运算符
+=
- 减后赋值运算符
-=
- 乘后赋值运算符
*=
- 除后赋值运算符
/=
- 取模后赋值运算符
%=
- 左移后赋值运算符
<<=
- 右移后赋值运算符
>>=
- 按位与后赋值运算符
&=
- 按位异或后赋值运算符
^=
- 按位或后赋值运算符
|=
v1.0.2
2024.09.15- 优化代码,优化脚本运行速度,发布第二个版本,后续版本更新,将会写清楚更新内容
- 感谢老黄,认识到优秀的Salvo,BT集成Web服务,进军Web领域
v1.0.1
2024.02.16- BT语言编译器的核心代码更加完善,数据类型使用Rc智能指针
- 由于业余时间不足,期间经历了噩梦般的经历,最终完善了词法分析与语法分析,性能得到了极大的提升
- 期间多次优化代码,多次重写语法分析内核,极为烦躁,有穷自动机改为Pest库去实现,Pest是一个优雅的通过正则来实现语法解析器的库,但是编写复杂的语法时,仍显得有心无力,自由度不够高,最终放弃,再次重写词法分析与语法分析的内核
v1.0.0
2022.01.03- 第一个版本发布,请铭记这一天
- 实现BT语言的语义分析,并成功执行BT脚本代码
- 感谢Xiuno创始人老黄的指点,正式完成Rust的第一个线上项目,同时也为BT语言打下深厚的基础,至此开始实现BT语言的词法分析和语法分析
- 由于内存安全问题,由C转为Rust,正式开始学习Rust语言,感谢张汉东老师,感谢Xiuno创始人老黄
- 代码高亮插件的开发(BT语言官网文档所使用的),国内首个纯前端代码高亮插件,基于正则表达式,支持多语言,也为开发BT语言打下基础
- 正式立项,业余时间开发,学习C底层和编译原理,着手编译器的编写