我与 Gleam 语言的第一次体验

主要观点:作者在过去几个月接触到关于 Gleam 语言的帖子后决定尝试,分享了个人使用 Gleam 语言的经历,包括从入门到创建一个小型项目的过程,涉及到依赖管理、Yaml 解析、SQLite 操作、并发处理等方面,并给出了测试、IDE 支持等相关内容,最后表达了对 Gleam 语言的喜爱和对未来的期待。

关键信息:

  • 作者无 Erlang VM 或函数式编程经验,通过官方 Gleam 语言之旅熟悉语法和概念,一小时后能开始编码。
  • 安装 Gleam 语言及工具在 macOS 上很容易,需安装 Gleam、Erlang 和 rebar3(部分项目不需要)。
  • 创建小型项目以学习多方面知识,如并发、HTTP 调用等,创建项目命令为“gleam new websites_checker”。
  • 依赖管理方便,可通过“gleam add”安装,依赖锁定在“gleam.toml”中,可在 CI/CD 中下载。
  • Yaml 解析是难点,代码较冗长,需使用 case 表达式处理错误,可使用 glaml 包但不够友好。
  • SQLite 操作简单,使用 sqlight 包,exec 函数可接受参数。
  • 并发处理很棒,继承自 Erlang,使用 gleam/erlang 包创建链接进程,通过递归实现循环。
  • 可在 Erlang VM 中运行项目“gleam run”,也可探索编译为 JavaScript 在浏览器中运行。
  • 编写了简单单元测试,使用“gleam test”运行,想给测试文件命名不同但不行。
  • 使用 Zed IDE,集成 Gleam 语言服务器效果良好。

重要细节:

  • 示例代码展示了如何导入和使用各种功能,如导入 gleam/io 进行输出、使用各种 Gleam 包进行不同操作等。
  • 配置文件示例展示了项目所需的网站配置格式。
  • 测试代码示例展示了对配置文件解析的单元测试。
  • 提供了相关项目的代码仓库链接“https://github.com/plutov/web...”以及讨论帖子链接“https://x.com/pliutau/status/...”。
阅读 266
0 条评论