V语言日前更新了V0.1.27
,这也许是0.1最后一个版本,快来看看都有哪些内容吧!
更新日期: 2020-05-05。
更新内容:
vfmt
使用新的AST解析器重写。它更快,更干净,并且可以格式化带有编译错误的文件。strconv
、sprintf
和printf
已原生支持,无需再调用任何C库。- 接口(
Interface
)现在更加稳定,并具有所有预期的功能。 x64
后端的许多改进:函数调用,表达式,for
循环,局部变量。map()
和filter()
方法现在可以被链式调用。- 新的初始化数组长度和容量的语法:
[]int{cap:cap, len:len}
。 - 新的关键词
is
:用于检查求和类型和接口类型。 as
关键词现在可用于转换求和、接口类型。- 使用
-profile
命令做性能分析。打印一个漂亮的表格,其中包含有关每个单个函数调用的详细信息:调用次数,每个调用的平均时间,每个函数的总时间。 import(xxx)
语法已经被import xxx
语法替代,简化并提高了易用性。- 类型检查器中的许多修复和改进。
- 新的
time
模块函数:秒表time.stopWatch
dl
模块动态加载。- 自动为每种类型(包括所有数组和固定大小的数组)生成
str()
方法。 - 短结构体初始化语法模仿命名函数参数 :
foo(bar:0, baz:1)
。 - 新的操作符
!in
。 - 内置数据结构(数组,映射)的关键部分的性能改进。
- 高阶功能改进(现在可以返回函数等)。
- 可以在其他函数中定义匿名函数。
- 内置的JSON模块又回来了。
- 闭包。
- 添加了很多新测试,包括测试错误消息的输出测试。
- 现在将打印多个错误,在出现第一个错误之后,编译器不再停止。
- 使用AST解析器的新JS后端(几乎已完成)。
- 可变函数。
net.websocket
模块(早期)。vlib
现在是无内存泄漏的,有许多自动释放的改进。- 简化并清理了cmd/v,
v.builder
。 - V UI已更新,可与新后端一起使用。