2012-12-04 12 views
13

可能性の重複:正規名 "XS" はパターンでから来マッチングん
What is the history of the variable names x and xs?パターンマッチングの名前 "xs"はどこから来ますか?

in

reverse' []  = [] 
reverse' [x] = [x] 
reverse' (x:xs) = reverse' xs ++ [x] 

「x」の複数形になっていますか?私は常にそれを読んだ方法です

+1

おそらく、「正式」ではなく「従来の」であろう。それは複数、はいです。 –

+3

はい、それは複数形です。フィル・ワドラーによって導入されました。 – augustss

+0

あなたはしばしば(h:t)、あるいは時にはより長い形式(head:tail)を見るでしょうが、Erlangではそのように一般的です。 – isturdy

答えて

20

は、あなたは単数形と複数形を持っているので、x:xsまたはy:ysなど

は、それが実際にそれ自体で意味を持っていない、それだけで慣例です。

IIRC Learn You a Haskellにも記載されています。


私の間違いを編集 - それは、型と関数の章でReal World Haskellで実際にあります。

enter image description here

+0

「ハスケルを学んでください」という言葉が正確にどこにあるのか分かりますか? –

+1

@FrankSchmitt、明示的にどこにでも言及されているかどうかはわかりませんが、Abizernによると、ただのコンベンションとみなされています。 (x:xs)は、xのリストの先頭に1つのxが付いていることを意味します(本質的には、xの要素を含むリストであることを伝えています)。これが十分に説明できるかどうかは不明です。 – Ali

+0

@Abizernありがとうございました。 –

関連する問題