gpt4 book ai didi

syntax - 怎么样?在榆树中读取符号?

转载 作者:行者123 更新时间:2023-12-04 22:56:45 25 4
gpt4 key购买 nike

考虑以下示例代码:

-- Update the fields of a record. (It must have the fields already.)
{ person |
name = "George" }

-- Update multiple fields at once, using the current values.
{ particle |
position = particle.position + particle.velocity,
velocity = particle.velocity + particle.acceleration }

来源: Learn Elm in X Minutes

应该如何阅读 |在这个例子中,在榆树一般?

我在 set-builder 符号中熟悉它为“where”/“such that”,并且在 Haskell 的列表推导中它具有非常相似的目的,例如
[ x*2 | x <- [1..10] ]
在逻辑上等价于

enter image description here

来源: Learn You A Haskell

(显然我也熟悉它在类 C 语言中用作一元“或”运算符)

type Msg = Increment | Decrement这样的东西怎么样? ?

来源: https://guide.elm-lang.org

或者,在这个例子中讨论 Union Types :
type Boolean
= T
| F
| Not Boolean
| And Boolean Boolean
| Or Boolean Boolean

最佳答案

在类型中,我将其读为“或”。在反例中:

type Msg = Increment | Decrement

我会将其读作“ MsgIncrementDecrement”。在 Result 的一个稍微复杂但仍然常见的例子中类型:
type Result error value
= Ok value
| Err error

我会读到“ ResultOkvalueErrerror ”。

在您给出的记录更新语法示例中,我将其读作“with”而不是“where”。例如:
{ person | name = "George" }

是“ person 值,其 name 字段设置为 "George"”(而不是“名称 = 'George'”的位置,这似乎暗示您正在根据 person 中的值进行过滤) .不过,我认为这个比类型案例更模棱两可。

关于syntax - 怎么样?在榆树中读取符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42520551/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com