Gleam Lang 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Gleam Lang 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Gleam Lang 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 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)
  })
}
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(3)
发表了资讯
09/21 07:05

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

Gleam 是一种类型安全且可扩展的编程语言,可用于 Erlang 虚拟机和 JavaScript 运行时。 最近发布的 0.23 版本增加了新特性,以及其他优化。 支持 Elixir Gleam 在 Erlang 虚拟机上与各种其他优秀编程语言一起运行,因此开发团队希望利用通过这些语言编写的所有包。 以前使用 Gleam 构建工具的项目可能依赖于用 Gleam 或 Erlang 编写的包。从这个版本开始,还支持用 Elixir 编写的项目,让 Gleam 程序员可以访问几乎所有在 Erla...

0
3
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
3 评论
5 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部