标准库String类型切片使用charcodes()还是view()?

如题。我本机的v0.6.19版本moonbit所带标准库的String类型同时拥有String::view()和String::charcodes(),并且后者的实现是直接转发到前者的。然而moonbit对str[i:j]的迁移建议是使用str.charcodes(),而非str.view()。

经查阅,两者不仅签名、实现相同,文档也是相同的。这是标准库暂时懒于整理接口,还是两者日后会有不同的语义?
再者,Moonbit的String类型内部明确使用UTF-16编码。既然编码已经统一,为何禁止str[i:j]语法,而转向使用方法?

两个 API 目前都支持,鼓励使用 String::charcodes,标准库 API 的整理工作目前还在进行中。

str[i:j] 语义不清晰,i 和 j 可以表示 charcode 下标,也可能表示 unicode character 的下标,所以不鼓励使用。