RosettaCodeData/Task/Permutations/Curry/permutations.curry

8 lines
180 B
Plaintext

insert :: a -> [a] -> [a]
insert x xs = x : xs
insert x (y:ys) = y : insert x ys
permutation :: [a] -> [a]
permutation [] = []
permutation (x:xs) = insert x $ permutation xs