主要观点:Gleam 语言的 v1.8.0 版本发布,包含多项改进和新功能。
关键信息:
- 可重命名变量和参数,首次迭代已实现,后续会有更多应用。
- 集成 Erlang 文档,支持通过 Gleam 代码生成器访问 Erlang 函数文档。
- 语言服务器可生成未定义函数的定义。
- 提供模式匹配代码动作,方便变量和函数参数的模式匹配。
- 加强了容错编译,使语言服务器在代码无效时仍能提供帮助。
- 给出结果包装提示,帮助程序员处理错误处理。
- 新增
gleam deps tree
命令,用于查看项目依赖关系。 - 加入 HTML 文档热键,方便搜索。
- 纠正无效项目名,提供有效名称建议。
- 改进“填充标签”代码动作。
- 感谢众多贡献者的修复和改进工作。
- Gleam 由赞助商支持,呼吁更多人支持项目。
重要细节: - 如在代码
pub fn main() { let wibble = 10; wibble + 1; }
中,可通过编辑器的“rename”命令将wibble
重命名为my_number
。 - 在 Erlang 中,可通过
h(gleam@list, map)
查看带有-doc
属性的函数文档。 - 语言服务器能根据代码生成函数定义,如
fn to_string(pokemon: Pokemon) -> String { todo }
。 - 模式匹配代码动作可在
let result = list.first(a_list)
这样的代码中生成case result { Ok(value) -> todo; Error(value) -> todo; }
。 - 容错编译改进了对体无 case 表达式和函数管道的处理。
- 结果包装提示可帮助程序员在错误处理中添加
Ok
或Error
。 gleam deps tree
命令可查看项目依赖关系,可通过--package
和--invert
选项进行筛选。- 无效项目名纠正功能在创建项目时会提示并提供有效名称。
- 众多赞助商支持了 Gleam 项目,包括多个个人和公司。此版本献给作者的祖父 Len Pilfold。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。