plailude 0.5.1 → 0.6.0
raw patch · 4 files changed
+22/−1 lines, 4 files
Files
- plailude.cabal +2/−1
- src/Plailude.hs +2/−0
- src/Plailude/Control.hs +2/−0
- src/Plailude/Control/List.hs +16/−0
plailude.cabal view
@@ -1,5 +1,5 @@ name: plailude-version: 0.5.1+version: 0.6.0 synopsis: plaimi's prelude description: The prelude used internally at plaimi. @@ -26,6 +26,7 @@ Plailude.Control.Arrow Plailude.Control.Bool Plailude.Control.IO+ Plailude.Control.List Plailude.Control.Monad Plailude.Data.Text Plailude.Data.Text.Show
src/Plailude.hs view
@@ -17,6 +17,8 @@ -- Function (.:), (.:.),+ -- List+ (!?), -- Text showL8, -- Data.Time
src/Plailude/Control.hs view
@@ -6,6 +6,7 @@ Maintainer : plailude@plaimi.net -} module Plailude.Control (+ (!?), (~+~), both, erretreat,@@ -17,4 +18,5 @@ import Plailude.Control.Arrow import Plailude.Control.Bool import Plailude.Control.IO+import Plailude.Control.List import Plailude.Control.Monad
+ src/Plailude/Control/List.hs view
@@ -0,0 +1,16 @@+{- |+Module : $Header$+Description : Lists. dealwithit.jpeg.+Copyright : (c) plaimi 2015+License : GPL-3++Maintainer : plailude@plaimi.net+-} module Plailude.Control.List where++(!?) :: [a] -> Int -> Maybe a+-- | Safe indexing of lists.+l !? i = if i < 0 then Nothing else go i l+ where+ go _ [] = Nothing+ go 0 (x:_) = Just x+ go n (_:xs) = go (n - 1) xs