Rust 实现的函数式编程语言 Gleam Lang

Rust 实现的函数式编程语言 Gleam Lang

Apache
跨平台
2022-09-20

Gleam 是 Rust 实现的函数式编程语言,构建于 Erlang 虚拟机之上,被编译为 Erlang(或 JavaScript),支持与其他 BEAM 语言(如 Erlang、Elixir 和 LFE)互操作,主要用于构建类型安全、可扩展的系统。

特性

  • 基于 actor 的多核并发
  • 代数数据类型
  • Erlang 风格的容错
  • 快速编译
  • 全类型推断
  • 泛型
  • 有用的错误信息
  • 不可变数据结构
  • 默认没有异常
  • no null
  • 没有未定义的行为
  • 可靠的包管理
  • 小而一致的语言设计
  • 与 Erlang、Elixir 等语言的零成本互操作

示例代码

Hello, World!

import gleam/io

pub fn main() {
  io.println("Hello, world!")
}

简易 Web 服务器

import gleam/io
import gleam/bit_builder
import gleam/http/elli
import gleam/http/response

pub fn my_service(_req) {
  let body = bit_builder.from_string("Hello, world!")

  response.new(200)
  |> response.set_body(body)
}

pub fn main() {
  elli.become(my_service, on_port: 3000)
}

多线程 hello world

import gleam/io
import gleam/int
import gleam/list
import gleam/string
import gleam/otp/process

pub fn main() {
  list.range(0, 1000)
  |> list.map(start_process)
  |> list.map(process.monitor_process)
  |> list.each(process.receive(_, 3)) // Wait for them to finish
}

fn start_process(i) {
  process.start(fn() {
    let message = string.append("Hello world: ", int.to_string(i))
    io.println(message)
  })
}
加载中

Gleam v0.23 发布,Rust 编写的函数式编程语言

Gleam 是一种类型安全且可扩展的编程语言,可用于 Erlang 虚拟机和 JavaScript 运行时。 最近发布的 0.23 版本增加了新特性,以及其他优化。 支持 Elixir Gleam 在 Erlang 虚拟机上与各种其他...

09/21 07:05

没有更多内容

加载失败,请刷新页面

没有更多内容

暂无问答

暂无博客

返回顶部
顶部