私は「ファンクショナルプログラミング入門」を読んでいます。 私はここに連結を理解していないどのように `[e | x < - xs; y < - ys; ...] =連結[[e | y < - ys; ...] | x < - xs> `
[e | x <- xs; y <- ys; ...] = concat[[e | y <- ys; ...] | x <- xs]
、として理解を変換するルールについて来ました。 concat
は複数のリストを取りますが、ここでは1つしか表示されません。
私はたぶん私はそれが間違って読んでいますか|
ここにいくつかの特別な意味を持つ。
for(x in xs){
for(y in ys){
someList.push(e)
}
}
として[[e | y <- ys; ...] | x <- xs]
を読みます
助けてください。あなたの疑似言語に翻訳
'連結:: [] - > [A]'。 'concat [[e | y < - ys; ...] | x < - xs] '---ここでリストのリストを取得し、それをフラットリストに展開します。 – zerkms