к
Size: a a a
к
JS
к
к
K
K
JS
do
initInReader
actionInReader
runStateT (actionInStateReader) state
AP
data Cmd = N | S | E | W | L | R | F deriving Read
decode :: String -> Maybe (Cmd, Int)
decode s = do
(c : n) <- pure s
(,) <$> readMaybe [c] <*> readMaybe n
парсеры-шмарсерыpure s
перед паттерн-матчингом? это же не поможет от ошибки во время выполнения, если строка пустая...A
pure s
перед паттерн-матчингом? это же не поможет от ошибки во время выполнения, если строка пустая...AP
pure s
перед паттерн-матчингом? это же не поможет от ошибки во время выполнения, если строка пустая...> safeHead l = do { (x:_) <- pure l; pure x }
> safeHead [] :: Maybe Int
Nothing
AP
fail
, MonadFail
для Maybe
даёт Nothing
ХГ
String
и printf
, но хочу попробовать перейти к Text
(просто потому, что хочется).http-client
и http-client-tls
, которые получают URL в виде Text
, а не String
? Я нашёл modern-uri
для парсинга, но не могу найти нечто похожее на http-client
для их отправки.AP
ХГ
A
AP
> safeHead l = do { (x:_) <- pure l; pure x }
> safeHead [] :: Maybe Int
Nothing
(\(c:s)-> pure c) =<< Just ""
AP
AP
AP