良い一日!
だから私は次のようにHaskellである関数を書こうとしています
remove_nulls :: [ ([String], Int) ] -> [ ([String], Int) ] -> [ ([String], Int) ]
remove_nulls listofpair (y:ys)
| null listofpair = (y:ys)
| null (fst(head listofpair))= remove_nulls (tail listofpair) (y:ys)
| otherwise = remove_nulls (tail listofpair) (y:(head listofpair):ys)
次のような入力を受け取ります
remove_nulls [ ([],0) , (["abc", "dce"], 2) ] []
アイデアは、最初の値に null が含まれている場合、リストからタプルを削除するというものです。ただし、呼び出すたびに、「関数 remove_nulls の非網羅的なパターン」が返されます。
基本ケースを変更しようとしましたが、常に同じ結果が得られます。どんな助けや搾取も素晴らしいでしょう (現在、Haskell を学んでいます)。