如果我有一個Haskell ADT如:ADT名稱。在Haskell中,什麼是「留下了」,然後是什麼「a」?
data Foo
= A Int Double
| B Bool [Integer]
| C (Maybe String) Float
的A
,B
,和C
被稱爲數據構造;有時可以看作價值構造函數。但是什麼是正確的名稱:
- 「行/備選」:例如,
B Bool [Integer]
;和「行/備選」的「字段/元素」:例如,Double
inA
或[Integer]
inB
?
我想你會形容'B:BOOL - > [整數] - > Foo'的構造和類型。 'Bool'和'[Integer]'是它的論點,例如'[Integer]'是單個參數或參數。但我不確定這些是否是普遍接受的名稱。 – nobody
從我所看到的,「領域」是正確的術語。 「參數」或「參數」僅在實際構建*時使用。 – Nate
我想我通常不會覺得有必要提及這些東西。引用「構造函數C」或「類型Foo」通常就足夠了。你有沒有想要參考這些東西的例子填空句子? (也許回答者會接受在句子中有意義地使用這些術語的挑戰。) –