私はList.distinct
機能を再実装しようとしています警告しかし、それは私にはあまり意味がありません。これは私がdiを実行せずに元のリストを返すように導くからです不本意な論理。奇妙なFSharpLint
これはFSharpLintのバグですか?
私はList.distinct
機能を再実装しようとしています警告しかし、それは私にはあまり意味がありません。これは私がdiを実行せずに元のリストを返すように導くからです不本意な論理。奇妙なFSharpLint
これはFSharpLintのバグですか?
明らかにそれは間違ったルールです。 FSharpLintのdefault configurationからこの抜粋を見てみましょう:
List.fold f x [] ===> x
Array.fold f x [||] ===> x
List.foldBack f x [] ===> x
Array.foldBack f x [||] ===> x
それはfold
、ここfoldback
も同じなので、2つの間のシグネチャの違いに従っていません。
初期状態と収集引数の順序は、"mnemonic" approachのfoldback
の定義を参照してください。
ありがとうございます。私は[PRhashLint](https://github.com/fsprojects/FSharpLint/pull/190)を送ってこれを修正しました。 – rexcfnghk
バグかもしれません。フォールドバックとは対照的に折り畳まれていた場合、少し奇妙なメッセージが表示されれば、これはかなり合理的です。 – scrwtp
私は、この機能があなたが思うとはっきりとしていないことを指摘しなければなりません。まず、 'folder'の両方のパラメータがリストであることから、' distinct'のパラメータはリストのリストでなければならないことを意味します。 –
@Fyodor FSIで試したように、意味が分かりません。関数の型は '' a list: '' a:equality'のリストです。そして、 '[1; 0; 0] 'それは私に正しい出力を与えた' [1; 0] '。私は何か間違ってコピーしましたか? – rexcfnghk