expand list processing functions
This commit is contained in:
+42
-6
@@ -4,46 +4,62 @@ List
|
||||
Slicing
|
||||
-------
|
||||
|
||||
#### head
|
||||
|
||||
```haskell
|
||||
head :: Foldable f => f a -> Maybe a
|
||||
```
|
||||
|
||||
#### tailMay
|
||||
|
||||
```haskell
|
||||
tailMay :: [a] -> Maybe [a]
|
||||
```
|
||||
|
||||
#### tailSafe
|
||||
|
||||
```haskell
|
||||
tailSafe :: [a] -> [a]
|
||||
```
|
||||
|
||||
#### initMay
|
||||
|
||||
```haskell
|
||||
initMay :: [a] -> Maybe [a]
|
||||
```
|
||||
|
||||
#### initSafe
|
||||
|
||||
```haskell
|
||||
initSafe :: [a] -> [a]
|
||||
```
|
||||
|
||||
#### initDef
|
||||
|
||||
```haskell
|
||||
initDef :: [a] -> [a] -> [a]
|
||||
```
|
||||
|
||||
#### lastMay
|
||||
|
||||
```haskell
|
||||
lastMay :: [a] -> Maybe a
|
||||
```
|
||||
|
||||
#### lastDef
|
||||
|
||||
```haskell
|
||||
lastDef :: a -> [a] -> a
|
||||
```
|
||||
|
||||
```haskell
|
||||
list :: [b] -> (a -> b) -> [a] -> [b]
|
||||
```
|
||||
#### drop
|
||||
|
||||
```haskell
|
||||
drop :: Int -> [a] -> [a]
|
||||
```
|
||||
|
||||
#### take
|
||||
|
||||
```haskell
|
||||
take :: Int -> [a] -> [a]
|
||||
```
|
||||
@@ -51,14 +67,20 @@ take :: Int -> [a] -> [a]
|
||||
Unpacking
|
||||
---------
|
||||
|
||||
#### uncons
|
||||
|
||||
```haskell
|
||||
uncons :: [a] -> Maybe (a, [a])
|
||||
```
|
||||
|
||||
#### unsnoc
|
||||
|
||||
```haskell
|
||||
unsnoc :: [x] -> Maybe ([x],x)
|
||||
```
|
||||
|
||||
#### unsnoc
|
||||
|
||||
```haskell
|
||||
list :: [b] -> (a -> b) -> [a] -> [b]
|
||||
```
|
||||
@@ -66,6 +88,8 @@ list :: [b] -> (a -> b) -> [a] -> [b]
|
||||
Sorting
|
||||
---------
|
||||
|
||||
#### sortOn
|
||||
|
||||
```haskell
|
||||
sortOn :: Ord o => (a -> o) -> [a] -> [a]
|
||||
```
|
||||
@@ -73,6 +97,8 @@ sortOn :: Ord o => (a -> o) -> [a] -> [a]
|
||||
Removing
|
||||
---------
|
||||
|
||||
#### ordNub
|
||||
|
||||
```haskell
|
||||
ordNub :: Ord a => [a] -> [a]
|
||||
```
|
||||
@@ -80,14 +106,14 @@ ordNub :: Ord a => [a] -> [a]
|
||||
Splitting
|
||||
---------
|
||||
|
||||
```haskell
|
||||
splitAt :: Int -> [a] -> ([a], [a])
|
||||
```
|
||||
#### splitAt
|
||||
|
||||
```haskell
|
||||
splitAt :: Int -> [a] -> ([a], [a])
|
||||
```
|
||||
|
||||
#### intercalate
|
||||
|
||||
```haskell
|
||||
intercalate :: [a] -> [[a]] -> [a]
|
||||
```
|
||||
@@ -95,6 +121,8 @@ intercalate :: [a] -> [[a]] -> [a]
|
||||
Comparison
|
||||
---------
|
||||
|
||||
#### isPrefixOf
|
||||
|
||||
```haskell
|
||||
isPrefixOf :: Eq a => [a] -> [a] -> Bool
|
||||
```
|
||||
@@ -102,10 +130,14 @@ isPrefixOf :: Eq a => [a] -> [a] -> Bool
|
||||
Filtering
|
||||
---------
|
||||
|
||||
#### filter
|
||||
|
||||
```haskell
|
||||
filter :: (a -> Bool) -> [a] -> [a]
|
||||
```
|
||||
|
||||
#### replicate
|
||||
|
||||
```haskell
|
||||
replicate :: Int -> a -> [a]
|
||||
```
|
||||
@@ -113,10 +145,14 @@ replicate :: Int -> a -> [a]
|
||||
Indexing
|
||||
--------
|
||||
|
||||
#### atMay
|
||||
|
||||
```haskell
|
||||
atMay :: [a] -> Int -> Maybe a
|
||||
```
|
||||
|
||||
#### atDef
|
||||
|
||||
```haskell
|
||||
atDef :: a -> [a] -> Int -> a
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user