私は[Char]のリストを繰り返していますが、私はイテレーションを実行する最善の方法が不思議です。関数型プログラミングでカウンタを使用した反復?
この関数は反復的に自身を呼び出し、反復ごとに減少するカウンタを自身に返します。単に例示的な目的のために
そのため、常に各charの戻り値True:
text = ["abcsdsdsdsd"]
exampleFunction :: Int -> String -> [Bool]
exampleFunction textlen text
| textlen >= 0 = True : exampleFunction (textlen - 1) text
| otherwise = []
カウンタは、むしろ不可欠と思われるよう「textlen」を使用し、これはするための最良の方法および/または最もHaskellのようなありますこれを実装しますか?
目的に応じて異なります。たとえば、Intsのリストを持っていて、それから結果を取得したい場合、foldを使うことができます。または、リストのすべての要素に関数を適用する場合は、Maybe、EitherなどのHaskellデータ型に適用できるマップまたは一般化されたものを使用できます。fmapを使用できます。 Functorタイプのクラスを見てください。 Functorは、どのリストがデータ型の1つであるかによってマッピングできるデータ型用です。あなたの例に基づいて、例えばmap \ _ - > True yourlistを使うことができます。 – Ch0k0l8
'' abcsdsdsdsd "は' ['a'、 'b'、 'c'、 's'、 'd'、 's' 、 'd'、 's'、 'd'、 's'、 'd' – chepner