on master help sign in
More operations on lists
9e75132John Dobronszki
libs/prelude/Prelude/List.idr+10
@@ -439,6 +439,16 @@ partition p (x::xs) =
439 else
439 else
440 (lefts, x::rights)
440 (lefts, x::rights)
441
441
442+inits : List a -> List (List a)
443+inits xs = [] :: case xs of
444+ [] => []
445+ x :: xs' => map (x ::) (inits xs')
446+
447+tails : List a -> List (List a)
448+tails xs = xs :: case xs of
449+ [] => []
450+ _ :: xs' => tails xs'
451+
442--------------------------------------------------------------------------------
452--------------------------------------------------------------------------------
443-- Predicates
453-- Predicates
444--------------------------------------------------------------------------------
454--------------------------------------------------------------------------------