https://www.youtube.com/watch?v=yYAiFaLGAmw
Реальное усилие в данном случае замерялось на краях ручек!
https://www.youtube.com/watch?v=yYAiFaLGAmw
Реальное усилие в данном случае замерялось на краях ручек!
First of all, there's a Cardano glossary, please check it out: almost all important concepts are described here.
Cardano SL (sometimes it's just "Cardano") means Cardano Settlement Layer. Its source code can be found here.
| getDateFromUser :: IO (Either UserError Day) | |
| getDateFromUser = do | |
| Prelude.putStrLn "Пожалуйста, укажите дату для прогноза в формате ГГГГ-ММ-ДД:" | |
| currentTime <- getCurrentTime | |
| date <- Prelude.getLine | |
| let retrievedDate = utctDay currentTime | |
| dayFromUser = parseTimeM True defaultTimeLocale "%Y-%-m-%-d" date :: Maybe Day | |
| case dayFromUser of | |
| Nothing -> здесь беда, потому что пользователь ввёл какую-то гадость | |
| Just validDay -> do |
| let result = decode rawJSON :: Maybe FullWeather | |
| data FullWeather = FullWeather | |
| { cod :: Int | |
| , message :: Text |
| {-# LANGUAGE OverloadedStrings #-} | |
| {-# LANGUAGE DeriveGeneric #-} | |
| module Main where | |
| import Data.Aeson | |
| import Data.Aeson.Encode.Pretty | |
| import Data.Aeson.Types | |
| import Data.ByteString as B | |
| import qualified Data.ByteString.Lazy.Char8 as LC |
Установка Raspbian на MicroSD
.img.Как только зелёный светодиод перестал мигать...
| {-# LANGUAGE OverloadedStrings #-} | |
| {-# LANGUAGE MultiWayIf #-} | |
| module UserData where | |
| import Text.Read (readMaybe) | |
| import Data.Text | |
| import qualified Data.List as List | |
| import Data.Maybe (isJust, fromJust) | |
| import qualified Data.Text.IO as TIO |
| cat /sys/class/thermal/thermal_zone*/temp | |
| echo "`cat /sys/class/power_supply/BAT0/energy_now` / `cat /sys/class/power_supply/BAT0/energy_full` * 100" | |
| acpi |
| {- | |
| Вот это наш .yaml-конфиг: | |
| --- | |
| API_URL: https://api.nightscout/v2 | |
| API_Secret: asdLKJHh0987ljkhLKJlkjhLKJ | |
| -} | |
| -- Это для того, чтобы сырые литералы "" могли автоматически превращаться, например, в Text. | |
| -- Без них литералы станут типом String, а этот тип неэффективный и считается уже антипаттерном. |
| import System.Directory | |
| import System.Environment | |
| import Control.Exception | |
| import Data.Typeable | |
| import Data.List | |
| data InvalidPath = InvalidPath String deriving (Show) | |
| data FileError = NoSuchFile deriving (Show, Typeable) | |
| data EmptyFile = EmptyFile deriving (Show, Typeable) |