ref: 27047b2309e0709a07c3053eeba094f24de0af33
parent: f8bb21a994514613dcfd83c2e9031ec29d450851
author: Lennart Augustsson <lennart.augustsson@epicgames.com>
date: Wed Aug 23 15:19:09 EDT 2023
More standard functions
--- a/lib/Data/List.hs
+++ b/lib/Data/List.hs
@@ -172,6 +172,13 @@
else
x : xs
+span :: forall a . (a -> Bool) -> [a] -> ([a], [a])
+span p =
+ let
+ rec r [] = (reverse r, [])
+ rec r (x:xs) = if p x then rec (x:r) xs else (reverse r, x:xs)
+ in rec []
+
head :: forall a . [a] -> a
head [] = error "head"
head (x:_) = x
--
⑨