diff options
| author | chirvasitua <stuart-little@users.noreply.github.com> | 2021-01-09 07:59:21 -0500 |
|---|---|---|
| committer | chirvasitua <stuart-little@users.noreply.github.com> | 2021-01-09 07:59:21 -0500 |
| commit | 1c19253d509fc7144b2ac8acc2b35211878309cc (patch) | |
| tree | 897c1f74c92ff5c65830fa345a2780d2fd1d05d4 | |
| parent | 5f7d75d65c793739c0669e7fea81c505667387b3 (diff) | |
| download | perlweeklychallenge-club-1c19253d509fc7144b2ac8acc2b35211878309cc.tar.gz perlweeklychallenge-club-1c19253d509fc7144b2ac8acc2b35211878309cc.tar.bz2 perlweeklychallenge-club-1c19253d509fc7144b2ac8acc2b35211878309cc.zip | |
1st commit on 063_haskell
| -rwxr-xr-x | challenge-063/stuart-little/haskell/ch-1.hs | 18 | ||||
| -rwxr-xr-x | challenge-063/stuart-little/haskell/ch-2.hs | 13 |
2 files changed, 31 insertions, 0 deletions
diff --git a/challenge-063/stuart-little/haskell/ch-1.hs b/challenge-063/stuart-little/haskell/ch-1.hs new file mode 100755 index 0000000000..fed2af1fd5 --- /dev/null +++ b/challenge-063/stuart-little/haskell/ch-1.hs @@ -0,0 +1,18 @@ +#!/usr/bin/env runghc + +{- +run <script> <quoted_string quoted_regex (no slashes)> + +very basic: doesn't know about case-insensitivity +-} + +import System.Environment (getArgs,) +import Text.Regex.PCRE ((=~),) +import Data.List.Extra (lastDef,) + +last_word :: String -> String -> String +last_word str rx = lastDef "NO MATCH" $ filter (\w -> w =~ rx::Bool) $ words str + +main = do + (str:rx:_) <- getArgs + putStrLn $ last_word str rx diff --git a/challenge-063/stuart-little/haskell/ch-2.hs b/challenge-063/stuart-little/haskell/ch-2.hs new file mode 100755 index 0000000000..d0c57c97d9 --- /dev/null +++ b/challenge-063/stuart-little/haskell/ch-2.hs @@ -0,0 +1,13 @@ +#!/usr/bin/env runghc + +-- run <script> <x-y_string> + +import System.Environment (getArgs,) + +rot n xs = right ++ left where + (left,right) = splitAt (mod n $ length xs) xs + +main = do + args <- getArgs + let wrd = args !! 0 + print $ head $ dropWhile (\n -> wrd /= rot (div (n*(n+1)) 2) wrd) [1..] |
