本周 MoonBit 新增类型标注语法、继续进行核心库 API 整理工作

203 天前
 moonbitlang

MoonBit 更新

struct Cell[T] {
  val: T
  next: Cell[T]?
}

fn f(x : Cell[T]?) -> Unit { ... }

相当于

struct Cell[T] {
  val: T
  next: Option[Cell[T]]
}

fn f(x : Option[Cell[T]]) -> Unit { ... }

旧的Option[T]仍然兼容,但是推荐使用更简短的新语法。moonfmt 也会将Option[T]格式化为T?

pub fn any[T](xs : Iter[T], predicate : (T) -> Bool) -> Bool {
                // ^不需要 @iter.
  match xs.find_first(predicate) {
    None => false
    Some(_) => true
  }
}

插件更新

627 次点击
所在节点    编程
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1046437

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX