我在玩 dhall,想知道如何实现形式的字符串拆分功能
λ(text: Text) -> λ(delimiter: Text) -> List Text
但是,似乎 dhall没有代表单个字符的概念/类型。而Prelude中没有这个功能。
对 Text 值唯一能做的就是连接它们
所以……有可能吗?
我在玩 dhall,想知道如何实现形式的字符串拆分功能
λ(text: Text) -> λ(delimiter: Text) -> List Text
但是,似乎 dhall没有代表单个字符的概念/类型。而Prelude中没有这个功能。
对 Text 值唯一能做的就是连接它们
所以……有可能吗?
现有的 Dhall 内置函数目前无法实现这一点。该Text
类型在概念上是不透明的,类似于Double
. 对类型值唯一能做的Text
就是连接它们,但你不能自省、解析或比较它们是否相等。
我以这种方式进行限制的最初理由Text
是,该语言鼓励将强类型表示上游化到其输入中。例如,不是拆分字符串,而是要求字符串已经被拆分(即期望输入类型List Text
而不是Text
)。但是,这可能会在某个时候发生变化,因为该标准不是一成不变的,而是通过此处概述的过程随着时间的推移而发展:
此外,即使不更改语言,您仍然可以按照本指南使用 Haskell API 使用您自己的内置插件扩展语言来进行试验: